diff --git a/README.md b/README.md
index 0903234878..8c466353b6 100644
--- a/README.md
+++ b/README.md
@@ -22,4 +22,4 @@ Currently, Wox support using C# and Python to write your plugins. Please refer t
Share plugin
=========
-Share your plugin through WoxPlugins. After you upload your plugin, other uses can download or search your plugin through `plugin` command (this is a plugin for plugin management, which is one of the default plugins inside Wox).
+Share your plugin through WoxPlugins. After you upload your plugin, other uses can download or search your plugin through `plugin` command (this is a plugin for plugin management, which is one of the default plugins inside Wox).
diff --git a/Wox/PluginLoader/PythonPluginLoader.cs b/Wox/PluginLoader/PythonPluginLoader.cs
index 5c7a851ca0..d8b2c5db8f 100644
--- a/Wox/PluginLoader/PythonPluginLoader.cs
+++ b/Wox/PluginLoader/PythonPluginLoader.cs
@@ -4,6 +4,7 @@ using System.Linq;
using System.Threading;
using Python.Runtime;
using Wox.Plugin;
+using Wox.Helper;
namespace Wox.PluginLoader
{
@@ -11,6 +12,8 @@ namespace Wox.PluginLoader
{
public override List LoadPlugin()
{
+ if (!CheckPythonEnvironmentInstalled()) return new List();
+
List plugins = new List();
List metadatas = pluginMetadatas.Where(o => o.Language.ToUpper() == AllowedLanguage.Python.ToUpper()).ToList();
foreach (PluginMetadata metadata in metadatas)
@@ -26,5 +29,18 @@ namespace Wox.PluginLoader
return plugins;
}
+
+ private bool CheckPythonEnvironmentInstalled() {
+ try
+ {
+ PythonEngine.Initialize();
+ PythonEngine.Shutdown();
+ }
+ catch {
+ Log.Error("Could't find python environment, all python plugins disabled.");
+ return false;
+ }
+ return true;
+ }
}
}