Solution pour WSL (Ubuntu sous Windows)
Si vous utilisez WSL (Ubuntu sous Windows), vous pouvez également ouvrir bash en tant que terminal dans pycharm et activer un Linux virtualenv.
Utilisez un .pycharmrc
fichier comme décrit dans la réponse de Peter Gibson; Ajoutez le .pycharmrc
fichier à votre répertoire personnel avec le contenu suivant:
source ~/.bashrc
source ~/path_to_virtualenv/bin/activate
Dans Fichier Pycharm > Paramètres> Outils> Terminal, ajoutez le `` chemin Shell '' suivant:
"C:/Windows/system32/bash.exe" -c "bash --rcfile ~/.pycharmrc"
Virtualenv spécifique au projet
Le chemin vers votre virtualenv dans .pycharmrc
n'a pas à être absolu. Vous pouvez définir un virtualenv spécifique à un projet en définissant un chemin relatif à partir du répertoire de votre projet. Mon virtualenv est toujours situé dans un dossier 'venv' sous mon répertoire de projet, donc mon .pycharmrc
fichier ressemble à ceci:
source ~ / .bashrc
source ~ / pycharmvenv / bin / activate # chemin absolu
source ./venv/bin/activate # chemin relatif
BONUS: ouvrir automatiquement le tunnel ssh pour connecter virtualenv en tant qu'interpréteur de projet
Ajoutez ce qui suit à votre .pycharmrc
fichier:
if [ $(ps -aux | grep -c 'ssh') -lt 2 ]; then
sudo service ssh start
fi
Cela vérifie si un tunnel ssh est déjà ouvert et en ouvre un dans le cas contraire. Dans Fichier -> Paramètres -> Projet -> Interpréteur de projet dans Pycharm, ajoutez un nouvel interpréteur distant avec la configuration suivante:
+ -------------------------- + ---------------------- ----------- + ------- + ---- +
| Nom: | <Nom de l'interprète> | | |
| Sélectionnez | «Informations d'identification SSH» | | |
| Hôte: | 127.0.0.1 | Port: | 22 |
| Utilisateur: | <Nom d'utilisateur Linux> | | |
| Type d'authentification: | «Mot de passe» | | |
| Mot de passe: | <Mot de passe Linux> | | |
| Chemin de l'interpréteur Python: | <Chemin Linux vers votre virtualenv> | | |
| Chemin des aides Python: | <Définir automatiquement> | | |
+ -------------------------- + ---------------------- ----------- + ------- + ---- +
Désormais, lorsque vous ouvrez votre projet, votre bash démarre automatiquement dans votre virtualenv, ouvre un tunnel ssh et pycharm connecte virtualenv en tant qu'interpréteur distant.
avertissement: la dernière mise à jour de Windows démarre automatiquement un service SshBroker et SshProxy au démarrage. Ceux-ci bloquent le tunnel ssh de Linux vers Windows. Vous pouvez arrêter ces services dans le Gestionnaire des tâches -> Services, après quoi tout fonctionnera à nouveau.
~/pycharmenv/bin/terminalactivate
semble être une bonne option.