--- a/Preferences/ProgramsDialog.py Sat Feb 16 10:27:50 2019 +0100 +++ b/Preferences/ProgramsDialog.py Sat Mar 02 11:15:24 2019 +0100 @@ -215,8 +215,25 @@ Utilities.isWindowsPlatform() and "rbrcc.exe" or "rbrcc", '-version', 'Ruby Resource Compiler', -1) - # 5. do the CORBA and Protobuf programs - # 5a. omniORB + # 5. do the Conda program(s) + exe = Preferences.getConda("CondaExecutable") + if not exe: + exe = "conda" + if Utilities.isWindowsPlatform(): + exe += ".exe" + self.__createProgramEntry( + self.tr("conda Manager"), exe, '--version', 'conda', -1) + + # 6. do the pip program(s) + virtualenvManager = e5App().getObject("VirtualEnvManager") + for venvName in virtualenvManager.getVirtualenvNames(): + interpreter = virtualenvManager.getVirtualenvInterpreter(venvName) + self.__createProgramEntry( + self.tr("PyPI Package Management"), interpreter, '--version', + 'pip', 1, exeModule=["-m", "pip"]) + + # 7. do the CORBA and Protobuf programs + # 7a. omniORB exe = Preferences.getCorba("omniidl") if not exe: exe = "omniidl" @@ -224,7 +241,7 @@ exe += ".exe" self.__createProgramEntry( self.tr("CORBA IDL Compiler"), exe, '-V', 'omniidl', -1) - # 5b. protobuf + # 7b. protobuf exe = Preferences.getProtobuf("protoc") if not exe: exe = "protoc" @@ -232,7 +249,7 @@ exe += ".exe" self.__createProgramEntry( self.tr("Protobuf Compiler"), exe, '--version', 'libprotoc', -1) - # 5c. grpc + # 7c. grpc exe = Preferences.getProtobuf("grpcPython") if not exe: exe = sys.executable @@ -240,7 +257,7 @@ self.tr("gRPC Compiler"), exe, '--version', 'libprotoc', -1, exeModule=['-m', 'grpc_tools.protoc']) - # 6. do the spell checking entry + # 8. do the spell checking entry try: import enchant try: @@ -257,7 +274,7 @@ self.__createEntry( self.tr("Spell Checker - PyEnchant"), text, version) - # 7. do the pygments entry + # 9. do the pygments entry try: import pygments try: @@ -274,7 +291,7 @@ self.__createEntry( self.tr("Source Highlighter - Pygments"), text, version) - # do the plugin related programs + # 10. do the plugin related programs pm = e5App().getObject("PluginManager") for info in pm.getPluginExeDisplayData(): if info["programEntry"]: