2015-05-17 6 views
8

Ich versuche, ST3 für die Arbeit mit Python virtualenv, unter Windows 8.1. Normalerweise verwende ich SublimeREPL mit meiner globalen Python-Installation, um Dateien auszuführen. Jetzt, wo ich Venvs benutze, habe ich Probleme, etwas zum Laufen zu bekommen. Hier ist, was ich versucht habe:Verwenden von virtualenv mit Sublime Text 3 und SublimeREPL

Ich habe ein Elternverzeichnis mit einem Ordner virtualenvs, dann ein scripts für meine .py-Dateien, die ich herum mit. Normalerweise navigiere ich einfach zu \virtualenvs\venv\scripts\activate und mache meine Arbeit mit dem Python-Interpreter, aber ich würde gerne in der Lage sein, die Dateien zu erstellen, ohne mit ST3 und SublimeREPL Befehlszeilen durchgehen zu müssen.

Ich habe ein Build-System, das wie folgt aussieht:

{ 
    "shell_cmd": ["\code\virtualenvs\venv\scripts\python.exe", "-u", "$file"], 
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", 
    "selector": "source.python", 
} 

Aber ich bin nicht einmal sicher, ob dies ist, was ich tun müssen, um SublimeREPL zu verwenden, da ich nie über Tools > Build Systems kümmern mußte haben vorher, nur Tools > SublimeREPL > Python > Python - RUN current file.

Wie kann ich das Build-System ändern oder SublimeREPLs RUN anpassen? Für einen Testfall habe ich das requests Modul im venv installiert, aber nicht in meiner globalen Python-Installation. Das Importieren von der Befehlszeile funktioniert einwandfrei, aber eine .py-Datei mit import requests gibt einen ImportError zurück.

Antwort

3

Das ST3-Build-System und die SublimeREPL bieten zwei verschiedene Funktionen. Das Build-System ist etwas, das Sie normalerweise verwenden würden, wenn Sie mit einer kompilierten Sprache wie C arbeiten. Es erlaubt Ihnen zu definieren, wie Sie Ihr Programm aus den Quelldateien erstellen wollen.

Sie können das Build-System auch mit Python verwenden, um beispielsweise die aktuell geöffnete Datei auszuführen, was das Build-System für Sie tun sollte.

Die SublimeREPL auf der anderen Seite ermöglicht es Ihnen, eine Terminalsitzung innerhalb von Sublime auszuführen und (unter anderem) die Dateien im Kontext dieser Sitzung auszuwerten. Ich würde vorschlagen, Sie auf dem documentation for SublimeREPL and Python einen Blick:

Beide Lager Python und Execnet Integrationen Unterstützung virtualenv. Verschiedene Möglichkeiten, mit Python zu arbeiten, einschließlich PDB und IPython, werden unterstützt.

Für virtualenv erstellt Umgebungen sein Erkennbar SublimeREPL sollten sie in einem der folgenden erstellt oder Symlink werden: für virtualenvwrapper

  • ~/.virtualenvs Standard
  • ~/.venvs Standard für Venv

Alternativ können weitere Pfade zu "python_virtualenv_paths" in der SublimeREPL-Konfigurationsdatei hinzugefügt werden.

5
  1. installieren 'virtualenv' Paket in erhabenem Editor
  2. Dann geh System zu bauen und sie als 'Python + virtualenv' enter image description here 3.Gehen Sie nun in das Erhabene Projekt-Datei und fügen Pfad zum virtualenv "virtualenv":"D:/my_projects/scrapping_env", enter image description here
  3. zu testen Build-System fügen Sie den folgenden in den .sublime-Projekteinstellungen "build_systems": [ { "name": "Test", "shell_cmd": "D:/my_projects/scrapping_env/Scripts/python py.test" }, ],

  4. Wählen Sie Test Build Sytem von den Werkzeugen hinzufügen wie gezeigt enter image description here

Verwandte Themen