[gedit-plugins/wip/python3: 19/19] Fix for commander import hell



commit 5757e53b0d3ec4bdf8ad913336e2ba9d7adad008
Author: Jesse van den Kieboom <jessevdk gnome org>
Date:   Fri Nov 9 12:17:51 2012 +0100

    Fix for commander import hell

 plugins/commander/commander/commands/__init__.py |   18 ++++++++++--------
 plugins/commander/commander/entry.py             |    8 +++++---
 2 files changed, 15 insertions(+), 11 deletions(-)
---
diff --git a/plugins/commander/commander/commands/__init__.py b/plugins/commander/commander/commands/__init__.py
index 637b136..86f1250 100644
--- a/plugins/commander/commander/commands/__init__.py
+++ b/plugins/commander/commander/commands/__init__.py
@@ -24,11 +24,7 @@ from gi.repository import GLib, GObject, Gio
 
 import sys, bisect, types, shlex, re, os, traceback
 
-import commands.module as module
-import commands.method as method
-import commands.result as result
-import commands.exceptions as exceptions
-import commands.metamodule as metamodule
+from . import module, method, result, exceptions, metamodule
 
 from commands.accel_group import AccelGroup
 from commands.accel_group import Accelerator
@@ -83,7 +79,9 @@ class Commands(Singleton):
             self.retval = None
 
         def autocomplete_func(self):
-            if self.retval == result.Result.PROMPT:
+            mod = sys.modules['commander.commands.result']
+
+            if self.retval == mod.Result.PROMPT:
                 return self.retval.autocomplete
             else:
                 return {}
@@ -254,11 +252,13 @@ class Commands(Singleton):
             self.scan(d)
 
     def _run_generator(self, state, ret=None):
+        mod = sys.modules['commander.commands.result']
+
         try:
             # Determine first use
             retval = state.run(ret)
 
-            if not retval or (isinstance(retval, result.Result) and (retval == result.DONE or retval == result.HIDE)):
+            if not retval or (isinstance(retval, mod.Result) and (retval == mod.DONE or retval == mod.HIDE)):
                 state.pop()
 
                 if state:
@@ -284,13 +284,15 @@ class Commands(Singleton):
         return None
 
     def run(self, state, ret=None):
+        mod = sys.modules['commander.commands.result']
+
         if type(ret) == types.GeneratorType:
             # Ok, this is cool stuff, generators can ask and susped execution
             # of commands, for instance to prompt for some more information
             state.push(ret)
 
             return self._run_generator(state)
-        elif not isinstance(ret, result.Result) and len(state) > 1:
+        elif not isinstance(ret, mod.Result) and len(state) > 1:
             # Basicly, send it to the previous?
             state.pop()
 
diff --git a/plugins/commander/commander/entry.py b/plugins/commander/commander/entry.py
index 0b15ce7..faf27b4 100644
--- a/plugins/commander/commander/entry.py
+++ b/plugins/commander/commander/entry.py
@@ -404,7 +404,9 @@ GtkEntry#gedit-commander-entry {
 
             return None
 
-        if ret == commands.result.Result.SUSPEND:
+        mod = sys.modules['commander.commands.result']
+
+        if ret == mod.Result.SUSPEND:
             # Wait for it...
             self._suspended = ret
             ret.register(self.on_suspend_resume)
@@ -415,9 +417,9 @@ GtkEntry#gedit-commander-entry {
             self.command_history_done()
             self.prompt('')
 
-            if ret == commands.result.Result.PROMPT:
+            if ret == mod.Result.PROMPT:
                 self.prompt(ret.prompt)
-            elif (ret == None or ret == commands.result.HIDE) and not self._prompt and (not self._info_window or self._info_window.empty()):
+            elif (ret == None or ret == mod.HIDE) and not self._prompt and (not self._info_window or self._info_window.empty()):
                 self._command_state.clear()
                 self._view.grab_focus()
                 self.destroy()



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]