VirtualEnv Manager

Wed, 23 Dec 2020 16:28:35 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Wed, 23 Dec 2020 16:28:35 +0100
changeset 7910
2eeec6bc49e6
parent 7909
ad9f1dc09b4a
child 7911
4621c9082a43

VirtualEnv Manager
- improved the handling of virtual environments slightly

docs/changelog file | annotate | diff | comparison | revisions
eric6/APIs/Python3/eric6.api file | annotate | diff | comparison | revisions
eric6/Documentation/Help/source.qch file | annotate | diff | comparison | revisions
eric6/Documentation/Help/source.qhp file | annotate | diff | comparison | revisions
eric6/Documentation/Source/eric6.Utilities.__init__.html file | annotate | diff | comparison | revisions
eric6/Documentation/Source/eric6.VirtualEnv.VirtualenvAddEditDialog.html file | annotate | diff | comparison | revisions
eric6/Documentation/Source/eric6.VirtualEnv.VirtualenvConfigurationDialog.html file | annotate | diff | comparison | revisions
eric6/Documentation/Source/eric6.VirtualEnv.VirtualenvManager.html file | annotate | diff | comparison | revisions
eric6/Documentation/Source/eric6.VirtualEnv.VirtualenvManagerDialog.html file | annotate | diff | comparison | revisions
eric6/VirtualEnv/VirtualenvAddEditDialog.py file | annotate | diff | comparison | revisions
eric6/VirtualEnv/VirtualenvConfigurationDialog.py file | annotate | diff | comparison | revisions
eric6/VirtualEnv/VirtualenvManager.py file | annotate | diff | comparison | revisions
eric6/VirtualEnv/VirtualenvManagerDialog.py file | annotate | diff | comparison | revisions
eric6/VirtualEnv/VirtualenvManagerDialog.ui file | annotate | diff | comparison | revisions
eric6/i18n/eric6_cs.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_de.qm file | annotate | diff | comparison | revisions
eric6/i18n/eric6_de.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_empty.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_en.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_es.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_fr.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_it.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_pt.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_ru.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_tr.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_zh_CN.ts file | annotate | diff | comparison | revisions
--- a/docs/changelog	Wed Dec 23 11:47:43 2020 +0100
+++ b/docs/changelog	Wed Dec 23 16:28:35 2020 +0100
@@ -21,6 +21,8 @@
   -- added code to enclose the current selection by entering " or ' characters
 - User Interface
   -- added capability to show Qt6 documentation (configurable)
+- VirtualEnv Manager
+  -- improved the handling of virtual environments slightly
 
 Version 20.12.1:
 - bug fixes
--- a/eric6/APIs/Python3/eric6.api	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/APIs/Python3/eric6.api	Wed Dec 23 16:28:35 2020 +0100
@@ -9399,7 +9399,7 @@
 eric6.Utilities._uunescape?8
 eric6.Utilities.absolutePath?4(path, start)
 eric6.Utilities.absoluteUniversalPath?4(path, start)
-eric6.Utilities.checkPyside?4(variant="2")
+eric6.Utilities.checkPyside?4(variant=2)
 eric6.Utilities.codingBytes_regexps?7
 eric6.Utilities.coding_regexps?7
 eric6.Utilities.compactPath?4(path, width, measure=len)
@@ -9457,7 +9457,7 @@
 eric6.Utilities.generateDistroInfo?4(linesep='\n')
 eric6.Utilities.generatePluginsVersionInfo?4(linesep='\n')
 eric6.Utilities.generatePyQtToolPath?4(toolname, alternatives=None)
-eric6.Utilities.generatePySideToolPath?4(toolname, variant="2")
+eric6.Utilities.generatePySideToolPath?4(toolname, variant=2)
 eric6.Utilities.generateQtToolName?4(toolname)
 eric6.Utilities.generateVersionInfo?4(linesep='\n')
 eric6.Utilities.getDirs?4(path, excludeDirs)
@@ -9808,7 +9808,7 @@
 eric6.VirtualEnv.VirtualenvAddEditDialog.VirtualenvAddEditDialog.on_pythonExecPicker_textChanged?4(txt)
 eric6.VirtualEnv.VirtualenvAddEditDialog.VirtualenvAddEditDialog.on_remoteCheckBox_toggled?4(checked)
 eric6.VirtualEnv.VirtualenvAddEditDialog.VirtualenvAddEditDialog.on_targetDirectoryPicker_textChanged?4(txt)
-eric6.VirtualEnv.VirtualenvAddEditDialog.VirtualenvAddEditDialog?1(manager, venvName="", venvDirectory="", venvInterpreter="", isGlobal=False, isConda=False, isRemote=False, execPath="", parent=None)
+eric6.VirtualEnv.VirtualenvAddEditDialog.VirtualenvAddEditDialog?1(manager, venvName="", venvDirectory="", venvInterpreter="", isGlobal=False, isConda=False, isRemote=False, execPath="", baseDir="", parent=None)
 eric6.VirtualEnv.VirtualenvConfigurationDialog.VirtualenvConfigurationDialog.getData?4()
 eric6.VirtualEnv.VirtualenvConfigurationDialog.VirtualenvConfigurationDialog.on_condaButton_toggled?4(checked)
 eric6.VirtualEnv.VirtualenvConfigurationDialog.VirtualenvConfigurationDialog.on_condaCloneButton_clicked?4()
@@ -9824,7 +9824,7 @@
 eric6.VirtualEnv.VirtualenvConfigurationDialog.VirtualenvConfigurationDialog.on_pyvenvButton_toggled?4(checked)
 eric6.VirtualEnv.VirtualenvConfigurationDialog.VirtualenvConfigurationDialog.on_targetDirectoryPicker_textChanged?4(txt)
 eric6.VirtualEnv.VirtualenvConfigurationDialog.VirtualenvConfigurationDialog.on_virtualenvButton_toggled?4(checked)
-eric6.VirtualEnv.VirtualenvConfigurationDialog.VirtualenvConfigurationDialog?1(parent=None)
+eric6.VirtualEnv.VirtualenvConfigurationDialog.VirtualenvConfigurationDialog?1(baseDir="", parent=None)
 eric6.VirtualEnv.VirtualenvExecDialog.VirtualenvExecDialog.on_buttonBox_clicked?4(button)
 eric6.VirtualEnv.VirtualenvExecDialog.VirtualenvExecDialog.start?4(arguments)
 eric6.VirtualEnv.VirtualenvExecDialog.VirtualenvExecDialog?1(configuration, venvManager, parent=None)
@@ -9833,10 +9833,11 @@
 eric6.VirtualEnv.VirtualenvInterpreterSelectionDialog.VirtualenvInterpreterSelectionDialog?1(venvName, venvDirectory, parent=None)
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.DefaultKey?7
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.addVirtualEnv?4(venvName, venvDirectory, venvInterpreter="", isGlobal=False, isConda=False, isRemote=False, execPath="")
-eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.createVirtualEnv?4()
+eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.createVirtualEnv?4(baseDir="")
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.deleteVirtualEnvs?4(venvNames)
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.getDefaultEnvironment?4()
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.getEnvironmentEntries?4()
+eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.getVirtualEnvironmentsBaseDir?4()
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.getVirtualenvDirectory?4(venvName)
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.getVirtualenvExecPath?4(venvName)
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.getVirtualenvInterpreter?4(venvName)
@@ -9848,6 +9849,7 @@
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.removeVirtualEnvs?4(venvNames)
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.renameVirtualEnv?4(oldVenvName, venvName, venvDirectory, venvInterpreter, isGlobal, isConda, isRemote, execPath)
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.setVirtualEnv?4(venvName, venvDirectory, venvInterpreter, isGlobal, isConda, isRemote, execPath)
+eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.setVirtualEnvironmentsBaseDir?4(baseDir)
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.showVirtualenvManagerDialog?4(modal=False)
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.shutdown?4()
 eric6.VirtualEnv.VirtualenvManager.VirtualenvManager.virtualEnvironmentAdded?7
@@ -9858,6 +9860,7 @@
 eric6.VirtualEnv.VirtualenvManagerDialog.VirtualenvManagerDialog.IsCondaRole?7
 eric6.VirtualEnv.VirtualenvManagerDialog.VirtualenvManagerDialog.IsGlobalRole?7
 eric6.VirtualEnv.VirtualenvManagerDialog.VirtualenvManagerDialog.IsRemoteRole?7
+eric6.VirtualEnv.VirtualenvManagerDialog.VirtualenvManagerDialog.closeEvent?4(evt)
 eric6.VirtualEnv.VirtualenvManagerDialog.VirtualenvManagerDialog.on_addButton_clicked?4()
 eric6.VirtualEnv.VirtualenvManagerDialog.VirtualenvManagerDialog.on_deleteAllButton_clicked?4()
 eric6.VirtualEnv.VirtualenvManagerDialog.VirtualenvManagerDialog.on_deleteButton_clicked?4()
Binary file eric6/Documentation/Help/source.qch has changed
--- a/eric6/Documentation/Help/source.qhp	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/Documentation/Help/source.qhp	Wed Dec 23 16:28:35 2020 +0100
@@ -16172,6 +16172,7 @@
       <keyword name="VirtualenvManager.deleteVirtualEnvs" id="VirtualenvManager.deleteVirtualEnvs" ref="eric6.VirtualEnv.VirtualenvManager.html#VirtualenvManager.deleteVirtualEnvs" />
       <keyword name="VirtualenvManager.getDefaultEnvironment" id="VirtualenvManager.getDefaultEnvironment" ref="eric6.VirtualEnv.VirtualenvManager.html#VirtualenvManager.getDefaultEnvironment" />
       <keyword name="VirtualenvManager.getEnvironmentEntries" id="VirtualenvManager.getEnvironmentEntries" ref="eric6.VirtualEnv.VirtualenvManager.html#VirtualenvManager.getEnvironmentEntries" />
+      <keyword name="VirtualenvManager.getVirtualEnvironmentsBaseDir" id="VirtualenvManager.getVirtualEnvironmentsBaseDir" ref="eric6.VirtualEnv.VirtualenvManager.html#VirtualenvManager.getVirtualEnvironmentsBaseDir" />
       <keyword name="VirtualenvManager.getVirtualenvDirectory" id="VirtualenvManager.getVirtualenvDirectory" ref="eric6.VirtualEnv.VirtualenvManager.html#VirtualenvManager.getVirtualenvDirectory" />
       <keyword name="VirtualenvManager.getVirtualenvExecPath" id="VirtualenvManager.getVirtualenvExecPath" ref="eric6.VirtualEnv.VirtualenvManager.html#VirtualenvManager.getVirtualenvExecPath" />
       <keyword name="VirtualenvManager.getVirtualenvInterpreter" id="VirtualenvManager.getVirtualenvInterpreter" ref="eric6.VirtualEnv.VirtualenvManager.html#VirtualenvManager.getVirtualenvInterpreter" />
@@ -16183,6 +16184,7 @@
       <keyword name="VirtualenvManager.removeVirtualEnvs" id="VirtualenvManager.removeVirtualEnvs" ref="eric6.VirtualEnv.VirtualenvManager.html#VirtualenvManager.removeVirtualEnvs" />
       <keyword name="VirtualenvManager.renameVirtualEnv" id="VirtualenvManager.renameVirtualEnv" ref="eric6.VirtualEnv.VirtualenvManager.html#VirtualenvManager.renameVirtualEnv" />
       <keyword name="VirtualenvManager.setVirtualEnv" id="VirtualenvManager.setVirtualEnv" ref="eric6.VirtualEnv.VirtualenvManager.html#VirtualenvManager.setVirtualEnv" />
+      <keyword name="VirtualenvManager.setVirtualEnvironmentsBaseDir" id="VirtualenvManager.setVirtualEnvironmentsBaseDir" ref="eric6.VirtualEnv.VirtualenvManager.html#VirtualenvManager.setVirtualEnvironmentsBaseDir" />
       <keyword name="VirtualenvManager.showVirtualenvManagerDialog" id="VirtualenvManager.showVirtualenvManagerDialog" ref="eric6.VirtualEnv.VirtualenvManager.html#VirtualenvManager.showVirtualenvManagerDialog" />
       <keyword name="VirtualenvManager.shutdown" id="VirtualenvManager.shutdown" ref="eric6.VirtualEnv.VirtualenvManager.html#VirtualenvManager.shutdown" />
       <keyword name="VirtualenvManagerDialog" id="VirtualenvManagerDialog" ref="eric6.VirtualEnv.VirtualenvManagerDialog.html#VirtualenvManagerDialog" />
@@ -16191,6 +16193,7 @@
       <keyword name="VirtualenvManagerDialog.__populateVenvList" id="VirtualenvManagerDialog.__populateVenvList" ref="eric6.VirtualEnv.VirtualenvManagerDialog.html#VirtualenvManagerDialog.__populateVenvList" />
       <keyword name="VirtualenvManagerDialog.__resizeSections" id="VirtualenvManagerDialog.__resizeSections" ref="eric6.VirtualEnv.VirtualenvManagerDialog.html#VirtualenvManagerDialog.__resizeSections" />
       <keyword name="VirtualenvManagerDialog.__updateButtons" id="VirtualenvManagerDialog.__updateButtons" ref="eric6.VirtualEnv.VirtualenvManagerDialog.html#VirtualenvManagerDialog.__updateButtons" />
+      <keyword name="VirtualenvManagerDialog.closeEvent" id="VirtualenvManagerDialog.closeEvent" ref="eric6.VirtualEnv.VirtualenvManagerDialog.html#VirtualenvManagerDialog.closeEvent" />
       <keyword name="VirtualenvManagerDialog.on_addButton_clicked" id="VirtualenvManagerDialog.on_addButton_clicked" ref="eric6.VirtualEnv.VirtualenvManagerDialog.html#VirtualenvManagerDialog.on_addButton_clicked" />
       <keyword name="VirtualenvManagerDialog.on_deleteAllButton_clicked" id="VirtualenvManagerDialog.on_deleteAllButton_clicked" ref="eric6.VirtualEnv.VirtualenvManagerDialog.html#VirtualenvManagerDialog.on_deleteAllButton_clicked" />
       <keyword name="VirtualenvManagerDialog.on_deleteButton_clicked" id="VirtualenvManagerDialog.on_deleteButton_clicked" ref="eric6.VirtualEnv.VirtualenvManagerDialog.html#VirtualenvManagerDialog.on_deleteButton_clicked" />
--- a/eric6/Documentation/Source/eric6.Utilities.__init__.html	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/Documentation/Source/eric6.Utilities.__init__.html	Wed Dec 23 16:28:35 2020 +0100
@@ -572,14 +572,14 @@
 <hr />
 <a NAME="checkPyside" ID="checkPyside"></a>
 <h2>checkPyside</h2>
-<b>checkPyside</b>(<i>variant="2"</i>)
+<b>checkPyside</b>(<i>variant=2</i>)
 
 <p>
     Module function to check the presence of PySide2.
 </p>
 <dl>
 
-<dt><i>variant</i> (str)</dt>
+<dt><i>variant</i> (int)</dt>
 <dd>
 indicator for the PySide variant (not used)
 </dd>
@@ -1160,7 +1160,7 @@
 <hr />
 <a NAME="generatePySideToolPath" ID="generatePySideToolPath"></a>
 <h2>generatePySideToolPath</h2>
-<b>generatePySideToolPath</b>(<i>toolname, variant="2"</i>)
+<b>generatePySideToolPath</b>(<i>toolname, variant=2</i>)
 
 <p>
     Module function to generate the executable path for a PySide2 tool.
@@ -1171,7 +1171,7 @@
 <dd>
 base name of the tool
 </dd>
-<dt><i>variant</i> (str)</dt>
+<dt><i>variant</i> (int)</dt>
 <dd>
 indicator for the PySide variant (not used)
 </dd>
--- a/eric6/Documentation/Source/eric6.VirtualEnv.VirtualenvAddEditDialog.html	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/Documentation/Source/eric6.VirtualEnv.VirtualenvAddEditDialog.html	Wed Dec 23 16:28:35 2020 +0100
@@ -113,7 +113,7 @@
 
 <a NAME="VirtualenvAddEditDialog.__init__" ID="VirtualenvAddEditDialog.__init__"></a>
 <h4>VirtualenvAddEditDialog (Constructor)</h4>
-<b>VirtualenvAddEditDialog</b>(<i>manager, venvName="", venvDirectory="", venvInterpreter="", isGlobal=False, isConda=False, isRemote=False, execPath="", parent=None</i>)
+<b>VirtualenvAddEditDialog</b>(<i>manager, venvName="", venvDirectory="", venvInterpreter="", isGlobal=False, isConda=False, isRemote=False, execPath="", baseDir="", parent=None</i>)
 
 <p>
         Constructor
@@ -153,6 +153,10 @@
 search path string to be prepended to the PATH
             environment variable
 </dd>
+<dt><i>baseDir</i> (str)</dt>
+<dd>
+base directory for the virtual environments
+</dd>
 <dt><i>parent</i> (QWidget)</dt>
 <dd>
 reference to the parent widget
--- a/eric6/Documentation/Source/eric6.VirtualEnv.VirtualenvConfigurationDialog.html	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/Documentation/Source/eric6.VirtualEnv.VirtualenvConfigurationDialog.html	Wed Dec 23 16:28:35 2020 +0100
@@ -171,13 +171,17 @@
 
 <a NAME="VirtualenvConfigurationDialog.__init__" ID="VirtualenvConfigurationDialog.__init__"></a>
 <h4>VirtualenvConfigurationDialog (Constructor)</h4>
-<b>VirtualenvConfigurationDialog</b>(<i>parent=None</i>)
+<b>VirtualenvConfigurationDialog</b>(<i>baseDir="", parent=None</i>)
 
 <p>
         Constructor
 </p>
 <dl>
 
+<dt><i>baseDir</i> (str)</dt>
+<dd>
+base directory for the virtual environments
+</dd>
 <dt><i>parent</i> (QWidget)</dt>
 <dd>
 reference to the parent widget
--- a/eric6/Documentation/Source/eric6.VirtualEnv.VirtualenvManager.html	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/Documentation/Source/eric6.VirtualEnv.VirtualenvManager.html	Wed Dec 23 16:28:35 2020 +0100
@@ -124,6 +124,10 @@
 <td>Public method to get a dictionary containing the defined virtual environment entries.</td>
 </tr>
 <tr>
+<td><a href="#VirtualenvManager.getVirtualEnvironmentsBaseDir">getVirtualEnvironmentsBaseDir</a></td>
+<td>Public method to set the base directory for the virtual environments.</td>
+</tr>
+<tr>
 <td><a href="#VirtualenvManager.getVirtualenvDirectory">getVirtualenvDirectory</a></td>
 <td>Public method to get the directory of a virtual environment.</td>
 </tr>
@@ -168,6 +172,10 @@
 <td>Public method to change a virtual environment.</td>
 </tr>
 <tr>
+<td><a href="#VirtualenvManager.setVirtualEnvironmentsBaseDir">setVirtualEnvironmentsBaseDir</a></td>
+<td>Public method to set the base directory for the virtual environments.</td>
+</tr>
+<tr>
 <td><a href="#VirtualenvManager.showVirtualenvManagerDialog">showVirtualenvManagerDialog</a></td>
 <td>Public slot to show the virtual environment manager dialog.</td>
 </tr>
@@ -278,11 +286,18 @@
 </dl>
 <a NAME="VirtualenvManager.createVirtualEnv" ID="VirtualenvManager.createVirtualEnv"></a>
 <h4>VirtualenvManager.createVirtualEnv</h4>
-<b>createVirtualEnv</b>(<i></i>)
+<b>createVirtualEnv</b>(<i>baseDir=""</i>)
 
 <p>
         Public slot to create a new virtual environment.
 </p>
+<dl>
+
+<dt><i>baseDir</i> (str)</dt>
+<dd>
+base directory for the virtual environments
+</dd>
+</dl>
 <a NAME="VirtualenvManager.deleteVirtualEnvs" ID="VirtualenvManager.deleteVirtualEnvs"></a>
 <h4>VirtualenvManager.deleteVirtualEnvs</h4>
 <b>deleteVirtualEnvs</b>(<i>venvNames</i>)
@@ -343,6 +358,25 @@
 dict
 </dd>
 </dl>
+<a NAME="VirtualenvManager.getVirtualEnvironmentsBaseDir" ID="VirtualenvManager.getVirtualEnvironmentsBaseDir"></a>
+<h4>VirtualenvManager.getVirtualEnvironmentsBaseDir</h4>
+<b>getVirtualEnvironmentsBaseDir</b>(<i></i>)
+
+<p>
+        Public method to set the base directory for the virtual environments.
+</p>
+<dl>
+<dt>Returns:</dt>
+<dd>
+base directory for the virtual environments
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
 <a NAME="VirtualenvManager.getVirtualenvDirectory" ID="VirtualenvManager.getVirtualenvDirectory"></a>
 <h4>VirtualenvManager.getVirtualenvDirectory</h4>
 <b>getVirtualenvDirectory</b>(<i>venvName</i>)
@@ -655,6 +689,20 @@
             environment variable
 </dd>
 </dl>
+<a NAME="VirtualenvManager.setVirtualEnvironmentsBaseDir" ID="VirtualenvManager.setVirtualEnvironmentsBaseDir"></a>
+<h4>VirtualenvManager.setVirtualEnvironmentsBaseDir</h4>
+<b>setVirtualEnvironmentsBaseDir</b>(<i>baseDir</i>)
+
+<p>
+        Public method to set the base directory for the virtual environments.
+</p>
+<dl>
+
+<dt><i>baseDir</i> (str)</dt>
+<dd>
+base directory for the virtual environments
+</dd>
+</dl>
 <a NAME="VirtualenvManager.showVirtualenvManagerDialog" ID="VirtualenvManager.showVirtualenvManagerDialog"></a>
 <h4>VirtualenvManager.showVirtualenvManagerDialog</h4>
 <b>showVirtualenvManagerDialog</b>(<i>modal=False</i>)
--- a/eric6/Documentation/Source/eric6.VirtualEnv.VirtualenvManagerDialog.html	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/Documentation/Source/eric6.VirtualEnv.VirtualenvManagerDialog.html	Wed Dec 23 16:28:35 2020 +0100
@@ -87,6 +87,10 @@
 <td>Private method to update the enabled state of the various buttons.</td>
 </tr>
 <tr>
+<td><a href="#VirtualenvManagerDialog.closeEvent">closeEvent</a></td>
+<td>Protected method to handle the close event.</td>
+</tr>
+<tr>
 <td><a href="#VirtualenvManagerDialog.on_addButton_clicked">on_addButton_clicked</a></td>
 <td>Private slot to add a new entry.</td>
 </tr>
@@ -169,6 +173,20 @@
 <p>
         Private method to update the enabled state of the various buttons.
 </p>
+<a NAME="VirtualenvManagerDialog.closeEvent" ID="VirtualenvManagerDialog.closeEvent"></a>
+<h4>VirtualenvManagerDialog.closeEvent</h4>
+<b>closeEvent</b>(<i>evt</i>)
+
+<p>
+        Protected method to handle the close event.
+</p>
+<dl>
+
+<dt><i>evt</i> (QCloseEvent)</dt>
+<dd>
+reference to the close event
+</dd>
+</dl>
 <a NAME="VirtualenvManagerDialog.on_addButton_clicked" ID="VirtualenvManagerDialog.on_addButton_clicked"></a>
 <h4>VirtualenvManagerDialog.on_addButton_clicked</h4>
 <b>on_addButton_clicked</b>(<i></i>)
--- a/eric6/VirtualEnv/VirtualenvAddEditDialog.py	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/VirtualEnv/VirtualenvAddEditDialog.py	Wed Dec 23 16:28:35 2020 +0100
@@ -26,7 +26,7 @@
     """
     def __init__(self, manager, venvName="", venvDirectory="",
                  venvInterpreter="", isGlobal=False, isConda=False,
-                 isRemote=False, execPath="", parent=None):
+                 isRemote=False, execPath="", baseDir="", parent=None):
         """
         Constructor
         
@@ -47,6 +47,8 @@
         @param execPath search path string to be prepended to the PATH
             environment variable
         @type str
+        @param baseDir base directory for the virtual environments
+        @type str
         @param parent reference to the parent widget
         @type QWidget
         """
@@ -57,10 +59,19 @@
         self.__manager = manager
         self.__editMode = bool(venvName)
         
+        if self.__editMode:
+            self.setWindowTitle(self.tr("Edit Virtual Environment"))
+        else:
+            self.setWindowTitle(self.tr("Add Virtual Environment"))
+        
+        self.__envBaseDir = baseDir
+        if not self.__envBaseDir:
+            self.__envBaseDir = Utilities.getHomeDir()
+        
         self.targetDirectoryPicker.setMode(E5PathPickerModes.DirectoryMode)
         self.targetDirectoryPicker.setWindowTitle(
             self.tr("Virtualenv Target Directory"))
-        self.targetDirectoryPicker.setDefaultDirectory(Utilities.getHomeDir())
+        self.targetDirectoryPicker.setDefaultDirectory(self.__envBaseDir)
         
         self.pythonExecPicker.setMode(E5PathPickerModes.OpenFileMode)
         self.pythonExecPicker.setWindowTitle(
@@ -75,8 +86,12 @@
         )
         
         self.nameEdit.setText(venvName)
-        self.targetDirectoryPicker.setText(venvDirectory,
-                                           toNative=not isRemote)
+        if venvName:
+            self.targetDirectoryPicker.setText(venvDirectory,
+                                               toNative=not isRemote)
+        else:
+            self.targetDirectoryPicker.setText(self.__envBaseDir,
+                                               toNative=not isRemote)
         self.pythonExecPicker.setText(venvInterpreter,
                                       toNative=not isRemote)
         self.globalCheckBox.setChecked(isGlobal)
@@ -103,12 +118,11 @@
             )
         
         if not self.globalCheckBox.isChecked():
-            enable = (
-                enable and (
-                    self.remoteCheckBox.isChecked() or (
-                        bool(self.targetDirectoryPicker.text()) and
-                        os.path.exists(self.targetDirectoryPicker.text())
-                    )
+            enable &= (
+                self.remoteCheckBox.isChecked() or (
+                    bool(self.targetDirectoryPicker.text()) and
+                    self.targetDirectoryPicker.text() != self.__envBaseDir and
+                    os.path.exists(self.targetDirectoryPicker.text())
                 )
             )
         
--- a/eric6/VirtualEnv/VirtualenvConfigurationDialog.py	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/VirtualEnv/VirtualenvConfigurationDialog.py	Wed Dec 23 16:28:35 2020 +0100
@@ -30,20 +30,27 @@
     Class implementing a dialog to enter the parameters for the
     virtual environment.
     """
-    def __init__(self, parent=None):
+    def __init__(self, baseDir="", parent=None):
         """
         Constructor
         
+        @param baseDir base directory for the virtual environments
+        @type str
         @param parent reference to the parent widget
         @type QWidget
         """
         super(VirtualenvConfigurationDialog, self).__init__(parent)
         self.setupUi(self)
         
+        if not baseDir:
+            baseDir = Utilities.getHomeDir()
+        self.__envBaseDir = baseDir
+        
         self.targetDirectoryPicker.setMode(E5PathPickerModes.DirectoryMode)
         self.targetDirectoryPicker.setWindowTitle(
             self.tr("Virtualenv Target Directory"))
-        self.targetDirectoryPicker.setDefaultDirectory(Utilities.getHomeDir())
+        self.targetDirectoryPicker.setText(baseDir)
+        self.targetDirectoryPicker.setDefaultDirectory(baseDir)
         
         self.extraSearchPathPicker.setMode(E5PathPickerModes.DirectoryMode)
         self.extraSearchPathPicker.setWindowTitle(
@@ -114,11 +121,13 @@
         Private method to update the enabled status of the OK button.
         """
         if self.virtualenvButton.isChecked() or self.pyvenvButton.isChecked():
-            self.buttonBox.button(QDialogButtonBox.Ok).setEnabled(
+            enable = (
                 (self.__virtualenvFound or self.__pyvenvFound) and
                 bool(self.targetDirectoryPicker.text()) and
                 bool(self.nameEdit.text())
             )
+            enable &= self.targetDirectoryPicker.text() != self.__envBaseDir
+            self.buttonBox.button(QDialogButtonBox.Ok).setEnabled(enable)
         elif self.condaButton.isChecked():
             enable = (
                 bool(self.condaNameEdit.text()) or
--- a/eric6/VirtualEnv/VirtualenvManager.py	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/VirtualEnv/VirtualenvManager.py	Wed Dec 23 16:28:35 2020 +0100
@@ -58,6 +58,9 @@
         """
         Private slot to load the virtual environments.
         """
+        self.__virtualEnvironmentsBaseDir = Preferences.Prefs.settings.value(
+            "PyVenv/VirtualEnvironmentsBaseDir", "")
+        
         venvString = Preferences.Prefs.settings.value(
             "PyVenv/VirtualEnvironments", "{}")     # __IGNORE_WARNING_M613__
         environments = json.loads(venvString)
@@ -127,6 +130,10 @@
         Private slot to save the virtual environments.
         """
         Preferences.Prefs.settings.setValue(
+            "PyVenv/VirtualEnvironmentsBaseDir",
+            self.__virtualEnvironmentsBaseDir)
+        
+        Preferences.Prefs.settings.setValue(
             "PyVenv/VirtualEnvironments",
             json.dumps(self.__virtualEnvironments)
         )
@@ -164,15 +171,21 @@
         return ("", {})
     
     @pyqtSlot()
-    def createVirtualEnv(self):
+    def createVirtualEnv(self, baseDir=""):
         """
         Public slot to create a new virtual environment.
+        
+        @param baseDir base directory for the virtual environments
+        @type str
         """
         from .VirtualenvConfigurationDialog import (
             VirtualenvConfigurationDialog
         )
         
-        dlg = VirtualenvConfigurationDialog()
+        if not baseDir:
+            baseDir = self.__virtualEnvironmentsBaseDir
+        
+        dlg = VirtualenvConfigurationDialog(baseDir=baseDir)
         if dlg.exec() == QDialog.Accepted:
             resultDict = dlg.getData()
             
@@ -602,3 +615,22 @@
             return self.__virtualEnvironments[venvName]["exec_path"]
         else:
             return ""
+    
+    def setVirtualEnvironmentsBaseDir(self, baseDir):
+        """
+        Public method to set the base directory for the virtual environments.
+        
+        @param baseDir base directory for the virtual environments
+        @type str
+        """
+        self.__virtualEnvironmentsBaseDir = baseDir
+        self.__saveSettings()
+    
+    def getVirtualEnvironmentsBaseDir(self):
+        """
+        Public method to set the base directory for the virtual environments.
+        
+        @return base directory for the virtual environments
+        @rtype str
+        """
+        return self.__virtualEnvironmentsBaseDir
--- a/eric6/VirtualEnv/VirtualenvManagerDialog.py	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/VirtualEnv/VirtualenvManagerDialog.py	Wed Dec 23 16:28:35 2020 +0100
@@ -11,8 +11,12 @@
 from PyQt5.QtCore import pyqtSlot, Qt
 from PyQt5.QtWidgets import QDialog, QTreeWidgetItem, QHeaderView
 
+from E5Gui.E5PathPicker import E5PathPickerModes
+
 from .Ui_VirtualenvManagerDialog import Ui_VirtualenvManagerDialog
 
+import Utilities
+
 
 class VirtualenvManagerDialog(QDialog, Ui_VirtualenvManagerDialog):
     """
@@ -38,6 +42,15 @@
         
         self.__manager = manager
         
+        baseDir = self.__manager.getVirtualEnvironmentsBaseDir()
+        if not baseDir:
+            baseDir = Utilities.getHomeDir()
+        
+        self.envBaseDirectoryPicker.setMode(E5PathPickerModes.DirectoryMode)
+        self.envBaseDirectoryPicker.setWindowTitle(
+            self.tr("Virtualenv Base Directory"))
+        self.envBaseDirectoryPicker.setText(baseDir)
+        
         self.__populateVenvList()
         self.__updateButtons()
         
@@ -94,7 +107,10 @@
         Private slot to add a new entry.
         """
         from .VirtualenvAddEditDialog import VirtualenvAddEditDialog
-        dlg = VirtualenvAddEditDialog(self.__manager)
+        dlg = VirtualenvAddEditDialog(
+            self.__manager,
+            baseDir=self.envBaseDirectoryPicker.text()
+        )
         if dlg.exec() == QDialog.Accepted:
             (venvName, venvDirectory, venvInterpreter, isGlobal, isConda,
              isRemote, execPath) = dlg.getData()
@@ -108,7 +124,8 @@
         """
         Private slot to create a new virtual environment.
         """
-        self.__manager.createVirtualEnv()
+        self.__manager.createVirtualEnv(
+            baseDir=self.envBaseDirectoryPicker.text())
     
     @pyqtSlot()
     def on_editButton_clicked(self):
@@ -126,6 +143,7 @@
             selectedItem.data(0, VirtualenvManagerDialog.IsCondaRole),
             selectedItem.data(0, VirtualenvManagerDialog.IsRemoteRole),
             selectedItem.data(0, VirtualenvManagerDialog.ExecPathRole),
+            baseDir=self.envBaseDirectoryPicker.text()
         )
         if dlg.exec() == QDialog.Accepted:
             (venvName, venvDirectory, venvInterpreter, isGlobal, isConda,
@@ -273,3 +291,15 @@
         self.venvList.header().resizeSections(
             QHeaderView.ResizeToContents)
         self.venvList.header().setStretchLastSection(True)
+    
+    def closeEvent(self, evt):
+        """
+        Protected method to handle the close event.
+        
+        @param evt reference to the close event
+        @type QCloseEvent
+        """
+        baseDir = self.envBaseDirectoryPicker.text()
+        self.__manager.setVirtualEnvironmentsBaseDir(baseDir)
+        
+        evt.accept()
--- a/eric6/VirtualEnv/VirtualenvManagerDialog.ui	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/VirtualEnv/VirtualenvManagerDialog.ui	Wed Dec 23 16:28:35 2020 +0100
@@ -181,6 +181,33 @@
     </layout>
    </item>
    <item row="1" column="0" colspan="2">
+    <layout class="QHBoxLayout" name="horizontalLayout">
+     <item>
+      <widget class="QLabel" name="label_2">
+       <property name="text">
+        <string>Base Directory:</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="E5PathPicker" name="envBaseDirectoryPicker" native="true">
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
+         <horstretch>0</horstretch>
+         <verstretch>0</verstretch>
+        </sizepolicy>
+       </property>
+       <property name="focusPolicy">
+        <enum>Qt::WheelFocus</enum>
+       </property>
+       <property name="toolTip">
+        <string>Enter the base directory of the virtual environments</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+   <item row="2" column="0" colspan="2">
     <widget class="QDialogButtonBox" name="buttonBox">
      <property name="orientation">
       <enum>Qt::Horizontal</enum>
@@ -192,6 +219,14 @@
    </item>
   </layout>
  </widget>
+ <customwidgets>
+  <customwidget>
+   <class>E5PathPicker</class>
+   <extends>QWidget</extends>
+   <header>E5Gui/E5PathPicker.h</header>
+   <container>1</container>
+  </customwidget>
+ </customwidgets>
  <tabstops>
   <tabstop>venvList</tabstop>
   <tabstop>addButton</tabstop>
--- a/eric6/i18n/eric6_cs.ts	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/i18n/eric6_cs.ts	Wed Dec 23 16:28:35 2020 +0100
@@ -85044,12 +85044,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="61"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="72"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="77"/>
         <source>Python Interpreter</source>
         <translation type="unfinished"></translation>
     </message>
@@ -85069,7 +85069,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="71"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82"/>
         <source>Enter the executable search path to be prepended to the PATH environment variable. Use &apos;{0}&apos; as the separator.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -85099,6 +85099,16 @@
         <source>Remote Environment</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63"/>
+        <source>Edit Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65"/>
+        <source>Add Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvConfigurationDialog</name>
@@ -85308,47 +85318,47 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="44"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="50"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="49"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="56"/>
         <source>Extra Search Path for setuptools/pip</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="54"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="61"/>
         <source>Python Interpreter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="333"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="342"/>
         <source>&lt;virtualenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="351"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="360"/>
         <source>&lt;No suitable virtualenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="353"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="362"/>
         <source>virtualenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="387"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="396"/>
         <source>&lt;pyvenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="407"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="416"/>
         <source>&lt;No suitable pyvenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="409"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="418"/>
         <source>pyvenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -85468,22 +85478,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="68"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
         <source>Conda Environment Location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="82"/>
         <source>Conda Requirements File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="79"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="86"/>
         <source>Text Files (*.txt);;All Files (*)</source>
         <translation type="unfinished">Textové soubory (*.txt);;Všechny soubory (*)</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="421"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="430"/>
         <source>conda Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -85634,52 +85644,52 @@
 <context>
     <name>VirtualenvManager</name>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>Add Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; exists already. Shall it be replaced?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="284"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="297"/>
         <source>Change Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; does not exist. Aborting!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>Rename Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="426"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="439"/>
         <source>{0} - {1}</source>
         <translation type="unfinished">{0} - {1}</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Delete Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Do you really want to delete these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Remove Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Do you really want to remove these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -85776,6 +85786,21 @@
         <source>Delete All</source>
         <translation type="unfinished">Smazat vše</translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="188"/>
+        <source>Base Directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="204"/>
+        <source>Enter the base directory of the virtual environments</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.py" line="50"/>
+        <source>Virtualenv Base Directory</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvNameDialog</name>
Binary file eric6/i18n/eric6_de.qm has changed
--- a/eric6/i18n/eric6_de.ts	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/i18n/eric6_de.ts	Wed Dec 23 16:28:35 2020 +0100
@@ -80854,12 +80854,12 @@
         <translation>Gib den Python Interpreter der virtuellen Umgebung ein</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="61"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="72"/>
         <source>Virtualenv Target Directory</source>
         <translation>Zielverzeichnis der virtullen Umgebung</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="77"/>
         <source>Python Interpreter</source>
         <translation>Python Interpreter</translation>
     </message>
@@ -80879,7 +80879,7 @@
         <translation>PATH Präfix:</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="71"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82"/>
         <source>Enter the executable search path to be prepended to the PATH environment variable. Use &apos;{0}&apos; as the separator.</source>
         <translation>Gib den Suchpfad ein, der der PATH Umgebungsvariablen vorangestellt werden soll. Verwende &apos;{0}&apos; als Trenner.</translation>
     </message>
@@ -80910,6 +80910,16 @@
         <source>Remote Environment</source>
         <translation>Umgebung über Fernzugriff</translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63"/>
+        <source>Edit Virtual Environment</source>
+        <translation>Virtuelle Umgebung Bearbeiten</translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65"/>
+        <source>Add Virtual Environment</source>
+        <translation>Virtuelle Umgebung Hinzufügen</translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvConfigurationDialog</name>
@@ -81079,17 +81089,17 @@
         <translation>Öffne Zielverzeichnis zum Abschluss</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="44"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="50"/>
         <source>Virtualenv Target Directory</source>
         <translation>Zielverzeichnis der virtullen Umgebung</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="49"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="56"/>
         <source>Extra Search Path for setuptools/pip</source>
         <translation>Suchpfad für setuptools/pip</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="54"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="61"/>
         <source>Python Interpreter</source>
         <translation>Python Interpreter</translation>
     </message>
@@ -81134,32 +81144,32 @@
         <translation>Aktualisieren</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="333"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="342"/>
         <source>&lt;virtualenv did not finish within 5s.&gt;</source>
         <translation>&lt;virtualenv endete nicht innerhalb von 5s.&gt;</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="351"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="360"/>
         <source>&lt;No suitable virtualenv found.&gt;</source>
         <translation>&lt;Kein funktionsfähiges virtualenv gefunden.&gt;</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="353"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="362"/>
         <source>virtualenv Version: {0}</source>
         <translation>virtualenv Version: {0}</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="387"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="396"/>
         <source>&lt;pyvenv did not finish within 5s.&gt;</source>
         <translation>&lt;pyvenv endete nicht innerhalb von 5s.&gt;</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="407"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="416"/>
         <source>&lt;No suitable pyvenv found.&gt;</source>
         <translation>&lt;Kein funktionsfähiges pyvenv gefunden.&gt;</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="409"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="418"/>
         <source>pyvenv Version: {0}</source>
         <translation>pyvenv Version: {0}</translation>
     </message>
@@ -81279,22 +81289,22 @@
         <translation>Testlauf durchführen</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="68"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
         <source>Conda Environment Location</source>
         <translation>Ort der Conda Umgebung</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="82"/>
         <source>Conda Requirements File</source>
         <translation>Conda Anforderungsdatei</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="79"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="86"/>
         <source>Text Files (*.txt);;All Files (*)</source>
         <translation>Textdateien (*.txt);;Alle Dateien (*)</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="421"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="430"/>
         <source>conda Version: {0}</source>
         <translation>conda Version: {0}</translation>
     </message>
@@ -81467,52 +81477,52 @@
 <context>
     <name>VirtualenvManager</name>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>Add Virtual Environment</source>
         <translation>Virtuelle Umgebung hinzufügen</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; exists already. Shall it be replaced?</source>
         <translation>Eine virtuelle Umgebung mit Namen &lt;b&gt;{0}&lt;/b&gt; existiert bereits. Soll sie ersetzt werden?</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="284"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="297"/>
         <source>Change Virtual Environment</source>
         <translation>Virtuelle Umgebung ändern</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; does not exist. Aborting!</source>
         <translation>Eine virtuelle Umgebung mit Namen &lt;b&gt;{0}&lt;/b&gt; existiert nicht. Abbruch!</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>Rename Virtual Environment</source>
         <translation>Virtuelle Umgebung umbenennen</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="426"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="439"/>
         <source>{0} - {1}</source>
         <translation>{0} – {1}</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Delete Virtual Environments</source>
         <translation>Virtuelle Umgebung löschen</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Do you really want to delete these virtual environments?</source>
         <translation>Sollen diese virtuellen Umgebungen wirklich gelöscht werden?</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Remove Virtual Environments</source>
         <translation>Virtuelle Umgebung entfernen</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Do you really want to remove these virtual environments?</source>
         <translation>Sollen diese virtuellen Umgebungen wirklich entfernt werden?</translation>
     </message>
@@ -81609,6 +81619,21 @@
         <source>Delete All</source>
         <translation>Alle Löschen</translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="188"/>
+        <source>Base Directory:</source>
+        <translation>Basisverzeichnis:</translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="204"/>
+        <source>Enter the base directory of the virtual environments</source>
+        <translation>Gib das Basisverzeichnis der Virtuellen Umgebungen ein</translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.py" line="50"/>
+        <source>Virtualenv Base Directory</source>
+        <translation>Virtualenv Basisverzeichnis</translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvNameDialog</name>
--- a/eric6/i18n/eric6_empty.ts	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/i18n/eric6_empty.ts	Wed Dec 23 16:28:35 2020 +0100
@@ -80264,12 +80264,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="61"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="72"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="77"/>
         <source>Python Interpreter</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80289,7 +80289,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="71"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82"/>
         <source>Enter the executable search path to be prepended to the PATH environment variable. Use &apos;{0}&apos; as the separator.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80319,6 +80319,16 @@
         <source>Remote Environment</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63"/>
+        <source>Edit Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65"/>
+        <source>Add Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvConfigurationDialog</name>
@@ -80488,17 +80498,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="44"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="50"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="49"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="56"/>
         <source>Extra Search Path for setuptools/pip</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="54"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="61"/>
         <source>Python Interpreter</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80538,32 +80548,32 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="333"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="342"/>
         <source>&lt;virtualenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="351"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="360"/>
         <source>&lt;No suitable virtualenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="353"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="362"/>
         <source>virtualenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="387"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="396"/>
         <source>&lt;pyvenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="407"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="416"/>
         <source>&lt;No suitable pyvenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="409"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="418"/>
         <source>pyvenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80688,22 +80698,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="68"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
         <source>Conda Environment Location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="82"/>
         <source>Conda Requirements File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="79"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="86"/>
         <source>Text Files (*.txt);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="421"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="430"/>
         <source>conda Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80854,52 +80864,52 @@
 <context>
     <name>VirtualenvManager</name>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>Add Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; exists already. Shall it be replaced?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="284"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="297"/>
         <source>Change Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; does not exist. Aborting!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>Rename Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="426"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="439"/>
         <source>{0} - {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Delete Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Do you really want to delete these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Remove Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Do you really want to remove these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80996,6 +81006,21 @@
         <source>Delete All</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="188"/>
+        <source>Base Directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="204"/>
+        <source>Enter the base directory of the virtual environments</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.py" line="50"/>
+        <source>Virtualenv Base Directory</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvNameDialog</name>
--- a/eric6/i18n/eric6_en.ts	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/i18n/eric6_en.ts	Wed Dec 23 16:28:35 2020 +0100
@@ -80311,12 +80311,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="61"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="72"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="77"/>
         <source>Python Interpreter</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80336,7 +80336,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="71"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82"/>
         <source>Enter the executable search path to be prepended to the PATH environment variable. Use &apos;{0}&apos; as the separator.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80366,6 +80366,16 @@
         <source>Remote Environment</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63"/>
+        <source>Edit Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65"/>
+        <source>Add Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvConfigurationDialog</name>
@@ -80535,17 +80545,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="44"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="50"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="49"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="56"/>
         <source>Extra Search Path for setuptools/pip</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="54"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="61"/>
         <source>Python Interpreter</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80585,32 +80595,32 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="333"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="342"/>
         <source>&lt;virtualenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="351"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="360"/>
         <source>&lt;No suitable virtualenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="353"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="362"/>
         <source>virtualenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="387"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="396"/>
         <source>&lt;pyvenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="407"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="416"/>
         <source>&lt;No suitable pyvenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="409"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="418"/>
         <source>pyvenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80735,22 +80745,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="68"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
         <source>Conda Environment Location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="82"/>
         <source>Conda Requirements File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="79"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="86"/>
         <source>Text Files (*.txt);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="421"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="430"/>
         <source>conda Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80901,52 +80911,52 @@
 <context>
     <name>VirtualenvManager</name>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>Add Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; exists already. Shall it be replaced?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="284"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="297"/>
         <source>Change Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; does not exist. Aborting!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>Rename Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="426"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="439"/>
         <source>{0} - {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Delete Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Do you really want to delete these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Remove Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Do you really want to remove these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81043,6 +81053,21 @@
         <source>Delete All</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="188"/>
+        <source>Base Directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="204"/>
+        <source>Enter the base directory of the virtual environments</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.py" line="50"/>
+        <source>Virtualenv Base Directory</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvNameDialog</name>
--- a/eric6/i18n/eric6_es.ts	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/i18n/eric6_es.ts	Wed Dec 23 16:28:35 2020 +0100
@@ -80955,12 +80955,12 @@
         <translation>Introducir el intérprete de Python para el entorno virtual</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="61"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="72"/>
         <source>Virtualenv Target Directory</source>
         <translation>Directorio de Destino para el Virtualenv</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="77"/>
         <source>Python Interpreter</source>
         <translation>Intérprete de Python</translation>
     </message>
@@ -80980,7 +80980,7 @@
         <translation>Prefijo de PATH:</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="71"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82"/>
         <source>Enter the executable search path to be prepended to the PATH environment variable. Use &apos;{0}&apos; as the separator.</source>
         <translation>Introducir la ruta de búsqueda del ejecutable a anteponer a la variable de entorno PATH. Usar &apos;{0}&apos; como separador.</translation>
     </message>
@@ -81011,6 +81011,16 @@
         <source>Remote Environment</source>
         <translation>Entorno Remoto</translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63"/>
+        <source>Edit Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65"/>
+        <source>Add Virtual Environment</source>
+        <translation type="unfinished">Añadir Entorno Virtual</translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvConfigurationDialog</name>
@@ -81180,17 +81190,17 @@
         <translation>Abrir directorio de destino despues de creación</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="44"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="50"/>
         <source>Virtualenv Target Directory</source>
         <translation>Directorio de Destino para el Virtualenv</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="49"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="56"/>
         <source>Extra Search Path for setuptools/pip</source>
         <translation>Ruta Extra de Búsqueda para setuptools/pip</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="54"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="61"/>
         <source>Python Interpreter</source>
         <translation>Intérprete de Python</translation>
     </message>
@@ -81235,32 +81245,32 @@
         <translation>Actualizar</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="333"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="342"/>
         <source>&lt;virtualenv did not finish within 5s.&gt;</source>
         <translation>&lt;virtualenv no ha terminado en 5s.&gt;</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="351"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="360"/>
         <source>&lt;No suitable virtualenv found.&gt;</source>
         <translation>&lt;No se ha encontrado un virtualenv adecuado.&gt;</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="353"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="362"/>
         <source>virtualenv Version: {0}</source>
         <translation>Versión de virtualenv : {0}</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="387"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="396"/>
         <source>&lt;pyvenv did not finish within 5s.&gt;</source>
         <translation>&lt;pyvenv no ha terminado en 5s.&gt;</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="407"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="416"/>
         <source>&lt;No suitable pyvenv found.&gt;</source>
         <translation>&lt;No se ha encontrado un pyvenv adecuado.&gt;</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="409"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="418"/>
         <source>pyvenv Version: {0}</source>
         <translation>Versión de pyvenv : {0}</translation>
     </message>
@@ -81380,22 +81390,22 @@
         <translation>Llevar a cabo Simulacro (Dry-Run)</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="68"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
         <source>Conda Environment Location</source>
         <translation>Ubicación de Entorno Conda</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="82"/>
         <source>Conda Requirements File</source>
         <translation>Archivo de Requisitos Conda</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="79"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="86"/>
         <source>Text Files (*.txt);;All Files (*)</source>
         <translation>Archivos de Texto (*.txt);;Todos los Archivos (*)</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="421"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="430"/>
         <source>conda Version: {0}</source>
         <translation>Versión de conda: {0}</translation>
     </message>
@@ -81568,52 +81578,52 @@
 <context>
     <name>VirtualenvManager</name>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>Add Virtual Environment</source>
         <translation>Añadir Entorno Virtual</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; exists already. Shall it be replaced?</source>
         <translation>Un entorno virtual llamado &lt;b&gt;{0}&lt;/b&gt; ya existe. ¿Desea reemplazarlo?</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="284"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="297"/>
         <source>Change Virtual Environment</source>
         <translation>Cambiar Entorno Virtual</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; does not exist. Aborting!</source>
         <translation>Un entorno virtual llamado &lt;b&gt;{0}&lt;/b&gt; no existe. ¡Abortando!</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>Rename Virtual Environment</source>
         <translation>Renombrar Entorno Virtual</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="426"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="439"/>
         <source>{0} - {1}</source>
         <translation>{0} - {1}</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Delete Virtual Environments</source>
         <translation>Borrar Entornos Virtuales</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Do you really want to delete these virtual environments?</source>
         <translation>¿Desea borrar estos entornos virtuales?</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Remove Virtual Environments</source>
         <translation>Eliminar Entornos Virtuales</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Do you really want to remove these virtual environments?</source>
         <translation>¿Desea eliminar estos entornos virtuales?</translation>
     </message>
@@ -81710,6 +81720,21 @@
         <source>Delete All</source>
         <translation>Borrar todo</translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="188"/>
+        <source>Base Directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="204"/>
+        <source>Enter the base directory of the virtual environments</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.py" line="50"/>
+        <source>Virtualenv Base Directory</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvNameDialog</name>
--- a/eric6/i18n/eric6_fr.ts	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/i18n/eric6_fr.ts	Wed Dec 23 16:28:35 2020 +0100
@@ -84351,12 +84351,12 @@
         <translation>Entrer l&apos;interpréteur Python de l&apos;environnement virtuel</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="61"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="72"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="77"/>
         <source>Python Interpreter</source>
         <translation>Interpréteur Python</translation>
     </message>
@@ -84376,7 +84376,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="71"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82"/>
         <source>Enter the executable search path to be prepended to the PATH environment variable. Use &apos;{0}&apos; as the separator.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -84406,6 +84406,16 @@
         <source>Remote Environment</source>
         <translation>Environnement distant</translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63"/>
+        <source>Edit Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65"/>
+        <source>Add Virtual Environment</source>
+        <translation type="unfinished">Ajouter environnement virtuel</translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvConfigurationDialog</name>
@@ -84615,47 +84625,47 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="44"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="50"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="49"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="56"/>
         <source>Extra Search Path for setuptools/pip</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="54"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="61"/>
         <source>Python Interpreter</source>
         <translation>Interpréteur Python</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="333"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="342"/>
         <source>&lt;virtualenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="351"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="360"/>
         <source>&lt;No suitable virtualenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="353"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="362"/>
         <source>virtualenv Version: {0}</source>
         <translation>Version virtualenv : {0}</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="387"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="396"/>
         <source>&lt;pyvenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="407"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="416"/>
         <source>&lt;No suitable pyvenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="409"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="418"/>
         <source>pyvenv Version: {0}</source>
         <translation>Version pyvenv : {0}</translation>
     </message>
@@ -84775,22 +84785,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="68"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
         <source>Conda Environment Location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="82"/>
         <source>Conda Requirements File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="79"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="86"/>
         <source>Text Files (*.txt);;All Files (*)</source>
         <translation>Fichiers texte (*.txt);;Tous les fichiers (*)</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="421"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="430"/>
         <source>conda Version: {0}</source>
         <translation>Version conda : {0}</translation>
     </message>
@@ -84961,52 +84971,52 @@
 <context>
     <name>VirtualenvManager</name>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>Add Virtual Environment</source>
         <translation>Ajouter environnement virtuel</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; exists already. Shall it be replaced?</source>
         <translation>Un environnement virtuel nommé &lt;b&gt;{0}&lt;/b&gt; existe déjà. Faut il le remplacer ?</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="284"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="297"/>
         <source>Change Virtual Environment</source>
         <translation>Modifier l&apos;environnement virtuel</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; does not exist. Aborting!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>Rename Virtual Environment</source>
         <translation>Renommer l&apos;environnement virtuel</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="426"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="439"/>
         <source>{0} - {1}</source>
         <translation>{0} - {1}</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Delete Virtual Environments</source>
         <translation>Supprimer les environnements virtuels</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Do you really want to delete these virtual environments?</source>
         <translation>Voulez-vous vraiment supprimer ces environnements virtuels ?</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Remove Virtual Environments</source>
         <translation>Supprimer les environnements virtuels</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Do you really want to remove these virtual environments?</source>
         <translation>Voulez-vous vraiment supprimer ces environnements virtuels ?</translation>
     </message>
@@ -85103,6 +85113,21 @@
         <source>Delete All</source>
         <translation>Tous supprimer</translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="188"/>
+        <source>Base Directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="204"/>
+        <source>Enter the base directory of the virtual environments</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.py" line="50"/>
+        <source>Virtualenv Base Directory</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvNameDialog</name>
--- a/eric6/i18n/eric6_it.ts	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/i18n/eric6_it.ts	Wed Dec 23 16:28:35 2020 +0100
@@ -87278,12 +87278,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="61"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="72"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="77"/>
         <source>Python Interpreter</source>
         <translation type="unfinished"></translation>
     </message>
@@ -87303,7 +87303,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="71"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82"/>
         <source>Enter the executable search path to be prepended to the PATH environment variable. Use &apos;{0}&apos; as the separator.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -87333,6 +87333,16 @@
         <source>Remote Environment</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63"/>
+        <source>Edit Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65"/>
+        <source>Add Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvConfigurationDialog</name>
@@ -87542,47 +87552,47 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="44"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="50"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="49"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="56"/>
         <source>Extra Search Path for setuptools/pip</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="54"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="61"/>
         <source>Python Interpreter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="333"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="342"/>
         <source>&lt;virtualenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="351"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="360"/>
         <source>&lt;No suitable virtualenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="353"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="362"/>
         <source>virtualenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="387"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="396"/>
         <source>&lt;pyvenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="407"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="416"/>
         <source>&lt;No suitable pyvenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="409"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="418"/>
         <source>pyvenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -87702,22 +87712,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="68"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
         <source>Conda Environment Location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="82"/>
         <source>Conda Requirements File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="79"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="86"/>
         <source>Text Files (*.txt);;All Files (*)</source>
         <translation type="unfinished">File Testo(*.txt);;Tutti i file (*)</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="421"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="430"/>
         <source>conda Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -87868,52 +87878,52 @@
 <context>
     <name>VirtualenvManager</name>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>Add Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; exists already. Shall it be replaced?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="284"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="297"/>
         <source>Change Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; does not exist. Aborting!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>Rename Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="426"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="439"/>
         <source>{0} - {1}</source>
         <translation type="unfinished">{0} - {1}</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Delete Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Do you really want to delete these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Remove Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Do you really want to remove these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -88010,6 +88020,21 @@
         <source>Delete All</source>
         <translation type="unfinished">Cancella tutto</translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="188"/>
+        <source>Base Directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="204"/>
+        <source>Enter the base directory of the virtual environments</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.py" line="50"/>
+        <source>Virtualenv Base Directory</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvNameDialog</name>
--- a/eric6/i18n/eric6_pt.ts	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/i18n/eric6_pt.ts	Wed Dec 23 16:28:35 2020 +0100
@@ -85809,12 +85809,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="61"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="72"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="77"/>
         <source>Python Interpreter</source>
         <translation type="unfinished">Intérprete de Python</translation>
     </message>
@@ -85834,7 +85834,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="71"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82"/>
         <source>Enter the executable search path to be prepended to the PATH environment variable. Use &apos;{0}&apos; as the separator.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -85864,6 +85864,16 @@
         <source>Remote Environment</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63"/>
+        <source>Edit Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65"/>
+        <source>Add Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvConfigurationDialog</name>
@@ -86033,17 +86043,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="44"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="50"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="49"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="56"/>
         <source>Extra Search Path for setuptools/pip</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="54"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="61"/>
         <source>Python Interpreter</source>
         <translation>Intérprete de Python</translation>
     </message>
@@ -86083,32 +86093,32 @@
         <translation type="unfinished">Atualizar</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="333"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="342"/>
         <source>&lt;virtualenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="351"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="360"/>
         <source>&lt;No suitable virtualenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="353"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="362"/>
         <source>virtualenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="387"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="396"/>
         <source>&lt;pyvenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="407"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="416"/>
         <source>&lt;No suitable pyvenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="409"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="418"/>
         <source>pyvenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -86233,22 +86243,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="68"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
         <source>Conda Environment Location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="82"/>
         <source>Conda Requirements File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="79"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="86"/>
         <source>Text Files (*.txt);;All Files (*)</source>
         <translation type="unfinished">Ficheiros de Texto (*.txt);;Ficheiros Todos (*)</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="421"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="430"/>
         <source>conda Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -86399,52 +86409,52 @@
 <context>
     <name>VirtualenvManager</name>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>Add Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; exists already. Shall it be replaced?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="284"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="297"/>
         <source>Change Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; does not exist. Aborting!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>Rename Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="426"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="439"/>
         <source>{0} - {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Delete Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Do you really want to delete these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Remove Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Do you really want to remove these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -86541,6 +86551,21 @@
         <source>Delete All</source>
         <translation type="unfinished">Apagar Tudo</translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="188"/>
+        <source>Base Directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="204"/>
+        <source>Enter the base directory of the virtual environments</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.py" line="50"/>
+        <source>Virtualenv Base Directory</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvNameDialog</name>
--- a/eric6/i18n/eric6_ru.ts	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/i18n/eric6_ru.ts	Wed Dec 23 16:28:35 2020 +0100
@@ -81047,12 +81047,12 @@
         <translation>Задайте для виртуального окружения интерпретатор Python</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="61"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="72"/>
         <source>Virtualenv Target Directory</source>
         <translation>Целевая директория Virtualenv</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="77"/>
         <source>Python Interpreter</source>
         <translation>Интерпретатор Python</translation>
     </message>
@@ -81072,7 +81072,7 @@
         <translation>Префикс PATH:</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="71"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82"/>
         <source>Enter the executable search path to be prepended to the PATH environment variable. Use &apos;{0}&apos; as the separator.</source>
         <translation>Задайте выполнимый путь поиска, который будет добавлен к переменной среды окружения PATH. Используйте &apos;{0}&apos; в качестве разделителя.</translation>
     </message>
@@ -81103,6 +81103,16 @@
         <source>Remote Environment</source>
         <translation>Удаленная среда окружения</translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63"/>
+        <source>Edit Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65"/>
+        <source>Add Virtual Environment</source>
+        <translation type="unfinished">Добавить виртуальное окружение</translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvConfigurationDialog</name>
@@ -81272,17 +81282,17 @@
         <translation>Открывать целевую директорию после ее создания</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="44"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="50"/>
         <source>Virtualenv Target Directory</source>
         <translation>Целевая директория Virtualenv</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="49"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="56"/>
         <source>Extra Search Path for setuptools/pip</source>
         <translation>Дополнительные пути поиска setuptools/pip</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="54"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="61"/>
         <source>Python Interpreter</source>
         <translation>Интерпретатор Python</translation>
     </message>
@@ -81327,32 +81337,32 @@
         <translation>Обновлять</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="333"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="342"/>
         <source>&lt;virtualenv did not finish within 5s.&gt;</source>
         <translation>&lt;virtualenv не завершился в течение 5 сек.&gt;</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="351"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="360"/>
         <source>&lt;No suitable virtualenv found.&gt;</source>
         <translation>&lt;Не найден подходящий virtualenv.&gt;</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="353"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="362"/>
         <source>virtualenv Version: {0}</source>
         <translation>Версия virtualenv: {0}</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="387"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="396"/>
         <source>&lt;pyvenv did not finish within 5s.&gt;</source>
         <translation>&lt;pyvenv не завершился в течение 5 сек.&gt;</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="407"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="416"/>
         <source>&lt;No suitable pyvenv found.&gt;</source>
         <translation>&lt;Не найден подходящий pyvenv .&gt;</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="409"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="418"/>
         <source>pyvenv Version: {0}</source>
         <translation>Версия pyvenv: {0}</translation>
     </message>
@@ -81472,22 +81482,22 @@
         <translation>Выполнять пробный прогон</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="68"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
         <source>Conda Environment Location</source>
         <translation>Расположение среды окружения Conda</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="82"/>
         <source>Conda Requirements File</source>
         <translation>Файл зависимостей Conda</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="79"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="86"/>
         <source>Text Files (*.txt);;All Files (*)</source>
         <translation>Текстовые файлы (*.txt);;Все файлы (*)</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="421"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="430"/>
         <source>conda Version: {0}</source>
         <translation>Версия conda: {0}</translation>
     </message>
@@ -81661,52 +81671,52 @@
 <context>
     <name>VirtualenvManager</name>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>Add Virtual Environment</source>
         <translation>Добавить виртуальное окружение</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; exists already. Shall it be replaced?</source>
         <translation>Виртуальное окружение с именем &lt;b&gt;{0}&lt;/b&gt; уже существует.Заменить его?</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="284"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="297"/>
         <source>Change Virtual Environment</source>
         <translation>Изменить виртуальное окружение</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; does not exist. Aborting!</source>
         <translation>Виртуальное окружение с именем &lt;b&gt;{0}&lt;/b&gt; не существует. Прерывание!</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>Rename Virtual Environment</source>
         <translation>Переименовать виртуальное окружение</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="426"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="439"/>
         <source>{0} - {1}</source>
         <translation>{0} - {1}</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Delete Virtual Environments</source>
         <translation>Удалить виртуальные окружения</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Do you really want to delete these virtual environments?</source>
         <translation>Вы действительно хотите удалить эти виртуальные окружения?</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Remove Virtual Environments</source>
         <translation>Убрать виртуальные окружения из списка</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Do you really want to remove these virtual environments?</source>
         <translation>Вы действительно хотите убрать эти виртуальные окружения из списка?</translation>
     </message>
@@ -81803,6 +81813,21 @@
         <source>Delete All</source>
         <translation>Удалить все</translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="188"/>
+        <source>Base Directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="204"/>
+        <source>Enter the base directory of the virtual environments</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.py" line="50"/>
+        <source>Virtualenv Base Directory</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvNameDialog</name>
--- a/eric6/i18n/eric6_tr.ts	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/i18n/eric6_tr.ts	Wed Dec 23 16:28:35 2020 +0100
@@ -84916,12 +84916,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="61"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="72"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="77"/>
         <source>Python Interpreter</source>
         <translation type="unfinished"></translation>
     </message>
@@ -84941,7 +84941,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="71"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82"/>
         <source>Enter the executable search path to be prepended to the PATH environment variable. Use &apos;{0}&apos; as the separator.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -84971,6 +84971,16 @@
         <source>Remote Environment</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63"/>
+        <source>Edit Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65"/>
+        <source>Add Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvConfigurationDialog</name>
@@ -85180,47 +85190,47 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="44"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="50"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="49"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="56"/>
         <source>Extra Search Path for setuptools/pip</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="54"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="61"/>
         <source>Python Interpreter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="333"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="342"/>
         <source>&lt;virtualenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="351"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="360"/>
         <source>&lt;No suitable virtualenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="353"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="362"/>
         <source>virtualenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="387"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="396"/>
         <source>&lt;pyvenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="407"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="416"/>
         <source>&lt;No suitable pyvenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="409"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="418"/>
         <source>pyvenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -85340,22 +85350,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="68"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
         <source>Conda Environment Location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="82"/>
         <source>Conda Requirements File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="79"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="86"/>
         <source>Text Files (*.txt);;All Files (*)</source>
         <translation type="unfinished">Metin Dosyaları (*.txt);;Tüm Dosyalar (*)</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="421"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="430"/>
         <source>conda Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -85506,52 +85516,52 @@
 <context>
     <name>VirtualenvManager</name>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>Add Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; exists already. Shall it be replaced?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="284"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="297"/>
         <source>Change Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; does not exist. Aborting!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>Rename Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="426"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="439"/>
         <source>{0} - {1}</source>
         <translation type="unfinished">{0} - {1}</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Delete Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Do you really want to delete these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Remove Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Do you really want to remove these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -85648,6 +85658,21 @@
         <source>Delete All</source>
         <translation type="unfinished">Hepsini Sil</translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="188"/>
+        <source>Base Directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="204"/>
+        <source>Enter the base directory of the virtual environments</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.py" line="50"/>
+        <source>Virtualenv Base Directory</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvNameDialog</name>
--- a/eric6/i18n/eric6_zh_CN.ts	Wed Dec 23 11:47:43 2020 +0100
+++ b/eric6/i18n/eric6_zh_CN.ts	Wed Dec 23 16:28:35 2020 +0100
@@ -86510,12 +86510,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="61"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="72"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="77"/>
         <source>Python Interpreter</source>
         <translation type="unfinished"></translation>
     </message>
@@ -86535,7 +86535,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="71"/>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82"/>
         <source>Enter the executable search path to be prepended to the PATH environment variable. Use &apos;{0}&apos; as the separator.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -86565,6 +86565,16 @@
         <source>Remote Environment</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63"/>
+        <source>Edit Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65"/>
+        <source>Add Virtual Environment</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvConfigurationDialog</name>
@@ -86774,47 +86784,47 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="44"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="50"/>
         <source>Virtualenv Target Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="49"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="56"/>
         <source>Extra Search Path for setuptools/pip</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="54"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="61"/>
         <source>Python Interpreter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="333"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="342"/>
         <source>&lt;virtualenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="351"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="360"/>
         <source>&lt;No suitable virtualenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="353"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="362"/>
         <source>virtualenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="387"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="396"/>
         <source>&lt;pyvenv did not finish within 5s.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="407"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="416"/>
         <source>&lt;No suitable pyvenv found.&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="409"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="418"/>
         <source>pyvenv Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -86934,22 +86944,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="68"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
         <source>Conda Environment Location</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="75"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="82"/>
         <source>Conda Requirements File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="79"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="86"/>
         <source>Text Files (*.txt);;All Files (*)</source>
         <translation type="unfinished">文本文件 (*.txt);;所有文件 (*)</translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="421"/>
+        <location filename="../VirtualEnv/VirtualenvConfigurationDialog.py" line="430"/>
         <source>conda Version: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -87100,52 +87110,52 @@
 <context>
     <name>VirtualenvManager</name>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>Add Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="220"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="233"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; exists already. Shall it be replaced?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="284"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="297"/>
         <source>Change Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>A virtual environment named &lt;b&gt;{0}&lt;/b&gt; does not exist. Aborting!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="335"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="348"/>
         <source>Rename Virtual Environment</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="426"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="439"/>
         <source>{0} - {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Delete Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="367"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="380"/>
         <source>Do you really want to delete these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Remove Virtual Environments</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VirtualEnv/VirtualenvManager.py" line="432"/>
+        <location filename="../VirtualEnv/VirtualenvManager.py" line="445"/>
         <source>Do you really want to remove these virtual environments?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -87242,6 +87252,21 @@
         <source>Delete All</source>
         <translation type="unfinished">全部删除</translation>
     </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="188"/>
+        <source>Base Directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.ui" line="204"/>
+        <source>Enter the base directory of the virtual environments</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../VirtualEnv/VirtualenvManagerDialog.py" line="50"/>
+        <source>Virtualenv Base Directory</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>VirtualenvNameDialog</name>

eric ide

mercurial