RefactoringRope/RefactoringServer.py

changeset 269
02bf946efbdc
parent 267
009b18770d08
child 270
efc48da49a75
equal deleted inserted replaced
268:9a58fbb3786e 269:02bf946efbdc
2061 self.__projectLanguage = self.__e5project.getProjectLanguage() 2061 self.__projectLanguage = self.__e5project.getProjectLanguage()
2062 2062
2063 ok = False 2063 ok = False
2064 2064
2065 if self.__projectLanguage.startswith("Python"): 2065 if self.__projectLanguage.startswith("Python"):
2066 # get interpreter from project first 2066 try:
2067 interpreter = self.__e5project.getDebugProperty("INTERPRETER") 2067 # new code using virtual environments
2068 if not interpreter or not Utilities.isinpath(interpreter): 2068 # get virtual environment from project first
2069 # get it from debugger settings second 2069 venvName = self.__e5project.getDebugProperty("VIRTUALENV")
2070 if self.__projectLanguage == "Python2": 2070 if not venvName:
2071 interpreter = Preferences.getDebugger("PythonInterpreter") 2071 # get it from debugger settings next
2072 elif self.__projectLanguage == "Python3": 2072 if self.__projectLanguage == "Python2":
2073 interpreter = Preferences.getDebugger("Python3Interpreter") 2073 # Python 2
2074 venvName = Preferences.getDebugger("Python2VirtualEnv")
2075 elif self.__projectLanguage == "Python3":
2076 # Python 3
2077 venvName = Preferences.getDebugger("Python3VirtualEnv")
2078 else:
2079 venvName = ""
2080 if venvName:
2081 interpreter = e5App().getObject("VirtualEnvManager")\
2082 .getVirtualenvInterpreter(venvName)
2074 else: 2083 else:
2075 interpreter = "" 2084 interpreter = ""
2085 except KeyError:
2086 # backward compatibility (eric <18.07)
2087 # get interpreter from project first
2088 interpreter = self.__e5project.getDebugProperty("INTERPRETER")
2089 if not interpreter or not Utilities.isinpath(interpreter):
2090 # get it from debugger settings second
2091 if self.__projectLanguage == "Python2":
2092 interpreter = Preferences.getDebugger(
2093 "PythonInterpreter")
2094 elif self.__projectLanguage == "Python3":
2095 interpreter = Preferences.getDebugger(
2096 "Python3Interpreter")
2097 else:
2098 interpreter = ""
2076 if interpreter: 2099 if interpreter:
2077 ok = self.__startRefactoringClient(interpreter) 2100 ok = self.__startRefactoringClient(interpreter)
2078 if not ok: 2101 if not ok:
2079 self.__ui.appendToStderr(self.tr( 2102 self.__ui.appendToStderr(self.tr(
2080 "Project language '{0}' is not supported because" 2103 "Project language '{0}' is not supported because"

eric ide

mercurial