summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/core.py3
-rw-r--r--src/plugin_manager.py7
2 files changed, 10 insertions, 0 deletions
diff --git a/src/core.py b/src/core.py
index 74b12d0c..b6992cc5 100644
--- a/src/core.py
+++ b/src/core.py
@@ -1993,6 +1993,9 @@ class Core(object):
# Remove all gaptabs if switching from gaps to nogaps
if option == 'create_gaps' and value.lower() == 'false':
self.tabs = list(filter(lambda x: bool(x), self.tabs))
+ elif option == 'plugins_dir':
+ path = os.path.expanduser(value)
+ self.plugin_manager.on_plugins_dir_change(path)
self.information(msg, 'Info')
def completion_set(self, the_input):
diff --git a/src/plugin_manager.py b/src/plugin_manager.py
index 4c3007cc..ef0fae08 100644
--- a/src/plugin_manager.py
+++ b/src/plugin_manager.py
@@ -262,3 +262,10 @@ class PluginManager(object):
completion function that completes the name of the plugins that are loaded
"""
return the_input.auto_completion(list(self.plugins.keys()), '', quotify=False)
+
+ def on_plugins_dir_change(self, new_value):
+ global plugins_dir
+ if plugins_dir in sys.path:
+ sys.path.remove(plugins_dir)
+ sys.path.append(new_value)
+ plugins_dir = new_value