Remote-Entwicklung in WSL
Dieses Tutorial führt Sie durch die Aktivierung des Windows Subsystem für Linux (WSL) und die Ausführung von Visual Studio Code in WSL mithilfe der WSL-Erweiterung.
Voraussetzungen
Sie benötigen installiertes Visual Studio Code.
Erweiterung installieren
Die WSL-Erweiterung ermöglicht Ihnen die Ausführung von Visual Studio Code innerhalb des Windows Subsystem für Linux (WSL).

Voraussetzungsprüfung
Nach der Installation der WSL-Erweiterung sehen Sie ein neues Statusleistenelement ganz links.

Das Remotestatusleistenelement kann Ihnen schnell anzeigen, in welchem Kontext VS Code ausgeführt wird (lokal oder remote), und ein Klick auf das Element öffnet die Befehle der WSL-Erweiterung.

WSL aktivieren
Das Windows Subsystem für Linux (WSL) ist ein optionales Feature unter Windows 10. Sie können es über den Dialog "Windows-Features" oder PowerShell aktivieren.
Dialog "Windows-Features"
Geben Sie in die Windows-Suchleiste 'features' ein, um den Dialog Windows-Features aktivieren oder deaktivieren zu öffnen. Scrollen Sie nach unten und aktivieren Sie Windows Subsystem für Linux.

Wählen Sie OK und Sie werden aufgefordert, Windows neu zu starten.
PowerShell
Wenn Sie möchten, können Sie PowerShell als Administrator öffnen und Folgendes eingeben:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Nachdem der Befehl ausgeführt wurde, werden Sie aufgefordert, Windows neu zu starten.

WSL prüfen
Nach dem Neustart von Windows können Sie überprüfen, ob WSL aktiviert ist, indem Sie eine Eingabeaufforderung öffnen und 'wsl' eingeben.

WSL ist aktiviert, aber Sie haben noch keine Linux-Distribution installiert.
Linux-Distribution installieren
Linux-Distributionen für WSL installieren Sie aus dem Microsoft Store. Sie können die Store-App verwenden oder im Windows-Suchfeld nach einer Linux-Distribution suchen. Wählen Sie die Linux-Distribution, die Sie installieren möchten (z. B. Ubuntu) und folgen Sie den Anweisungen.

Wählen Sie Installieren.

Und wenn Sie fertig sind, wählen Sie Starten, um zu beginnen. Dies öffnet ein Linux-Terminal und schließt die Installation ab. Sie müssen eine Benutzer-ID und ein Passwort erstellen, da Sie eine vollständige Linux-Instanz einrichten. Sie führen jetzt Linux unter Windows aus.

Python-Entwicklung
Wenn Sie Python noch nicht installiert haben, führen Sie die folgenden Befehle aus, um Python3 und pip, den Paketmanager für Python, in Ihrer Linux-Installation zu installieren.
sudo apt update
sudo apt install python3 python3-pip
Und zur Überprüfung führen Sie Folgendes aus:
python3 --version
Beginnen Sie mit der kanonischen "Hello World"-App. Erstellen Sie einen neuen Ordner namens "helloWorld" und fügen Sie dann eine Python-Datei hinzu, die beim Ausführen eine Nachricht ausgibt
mkdir helloWorld && cd helloWorld
echo 'print("hello from python on ubuntu on windows!")' >> hello.py
python3 hello.py
In einer Remote-Linux-Umgebung (diese WSL-Distribution ist technisch gesehen eine weitere Maschine ohne Benutzeroberfläche, die zufällig lokal auf Ihrem Computer läuft) sind Ihre Entwicklungswerkzeuge und -erfahrungen ziemlich begrenzt. Sie können Vim im Terminal verwenden, um Ihre Datei zu bearbeiten, oder Sie können die Quellen auf der Windows-Seite über den \\wsl$-Mount bearbeiten.

Das Problem bei diesem Modell ist, dass die Python-Laufzeit, pip oder beliebige Conda-Pakete für diese Angelegenheit unter Windows nicht installiert sind.

Denken Sie daran, Python ist in der Linux-Distribution installiert, was bedeutet, dass Sie Python-Dateien, die Sie auf der Windows-Seite bearbeiten, nicht ausführen oder debuggen können, es sei denn, Sie installieren denselben Python-Entwicklungsstack unter Windows. Und das widerspricht dem Zweck, eine isolierte Linux-Instanz mit all Ihren Python-Tools und Laufzeiten eingerichtet zu haben!
In WSL ausführen
Stellen Sie im WSL-Terminal sicher, dass Sie sich im Ordner helloWorld befinden, und geben Sie 'code .' ein, um Visual Studio Code zu starten. Das '.'-Argument weist VS Code an, den aktuellen Ordner zu öffnen. Wenn Sie die Insiders-Version von VS Code verwenden, müssen Sie stattdessen 'code-insiders .' ausführen.
Hinweis: Wenn dieser Befehl nicht funktioniert, müssen Sie möglicherweise Ihr Terminal neu starten oder VS Code beim Installieren nicht zu Ihrem Pfad hinzugefügt haben.

Das erste, was Sie sehen werden, ist eine Meldung über das "Installieren des VS Code Servers" (die Zahl c7d83e57… ist die Version des VS Code Servers, die mit den Client-seitigen Tools übereinstimmt, die Sie gerade installiert haben). VS Code installiert einen kleinen Server auf der Linux-Seite, mit dem das Desktop-VS Code dann kommuniziert. Dieser Server installiert und hostet dann Erweiterungen in WSL, sodass sie im Kontext der in WSL installierten Tools und Frameworks ausgeführt werden. Mit anderen Worten, Ihre Spracherweiterungen werden gegen die in WSL installierten Tools und Frameworks ausgeführt, nicht gegen das, was auf der Windows-Seite installiert ist, wie es für die richtige Entwicklungserfahrung sein sollte.
Als Nächstes startet VS Code und öffnet den Ordner helloWorld. Möglicherweise sehen Sie eine kurze Benachrichtigung, dass VS Code eine Verbindung zu WSL herstellt, und Sie werden möglicherweise aufgefordert, den Zugriff auf den Node.js-basierten Server zu gestatten.

Wenn Sie nun mit der Maus über hello.py fahren, erhalten Sie den richtigen Linux-Pfad.

Integriertes Terminal
Führen Sie Terminal > Neues Terminal aus (⌃` (Windows, Linux Ctrl+`)), um eine neue Terminalinstanz zu öffnen.

Sie starten eine neue Instanz der Bash-Shell in WSL, wieder von VS Code, das unter Windows läuft.
Tipp: In der unteren linken Ecke der Statusleiste sehen Sie, dass Sie mit Ihrer WSL: Ubuntu-Instanz verbunden sind.

Bearbeiten und Debuggen
Installation der Python-Erweiterung (und zusätzlicher Tools)
Klicken Sie auf hello.py, um es zur Bearbeitung zu öffnen. Sie werden mit einer Erweiterungsempfehlung aufgefordert, in diesem Fall die Microsoft Python-Erweiterung zu installieren, die Ihnen umfangreiche Bearbeitungs- und Debugging-Erlebnisse bietet. Fahren Sie fort, wählen Sie Installieren und laden Sie bei Aufforderung neu.

Um zu beweisen, dass die Erweiterung in WSL installiert ist, öffnen Sie erneut die Erweiterungsansicht (⇧⌘X (Windows, Linux Ctrl+Shift+X)). Sie sehen einen Abschnitt mit dem Titel WSL: Ubuntu – Installiert, und Sie können alle Erweiterungen sehen, die auf der WSL-Seite installiert sind.

Beim Neuladen werden Sie auch aufgefordert, dass der Pylint-Linter nicht installiert ist. Linter werden verwendet, um Fehler und Warnungen im Quellcode anzuzeigen. Fahren Sie fort und wählen Sie Installieren.

Jetzt erhalten Sie beim Bearbeiten Ihres Codes eine umfangreiche Farbgebung und Vervollständigungen.

Und wenn Sie Ihre Datei speichern (⌘S (Windows, Linux Ctrl+S)), erhalten Sie Linting-Fehler und -Warnungen für die Datei.

Debugging
Nachdem Ihre Tools eingerichtet sind, gehen wir noch einen Schritt weiter. Setzen Sie einen Haltepunkt in Zeile 1 von hello.py, indem Sie in den Randbereich links neben der Zeilennummer klicken oder den Cursor auf die Zeile setzen und F9 drücken.

Drücken Sie nun F5, um Ihre Anwendung auszuführen. Sie werden gefragt, wie die Anwendung ausgeführt werden soll, und da dies eine einfache Datei ist, wählen Sie einfach Python-Datei.

Die App startet und Sie erreichen den Haltepunkt. Sie können Variablen inspizieren, Watches erstellen und den Aufrufstapel durchlaufen.
Drücken Sie F10, um einen Schritt auszuführen, und Sie sehen die Ausgabe der Print-Anweisung in der Debug-Konsole.

Sie erhalten die vollständige Entwicklungserfahrung von Visual Studio Code, indem Sie die unter WSL installierte Linux-Instanz verwenden.
Wenn Sie einen anderen Ordner in WSL öffnen möchten, öffnen Sie das Menü Datei und wählen Sie Ordner öffnen. Sie erhalten einen minimalen Datei- und Ordnernavigator für das Linux-Dateisystem, nicht für das Windows-Dateisystem.

Wenn Sie zu Windows zurückkehren möchten, wählen Sie die Option Lokal anzeigen, und Sie erhalten den Standard-Dialog "Datei öffnen" von Windows.
WSL-Verbindung beenden
Sie können Ihre Sitzung in WSL beenden und mit VS Code wieder lokal arbeiten, indem Sie Datei > Remote-Verbindung schließen auswählen.
Glückwunsch
Herzlichen Glückwunsch, Sie haben dieses Tutorial erfolgreich abgeschlossen!
Als Nächstes sehen Sie sich die anderen Remote-Entwicklungs-Erweiterungen an.
Oder erhalten Sie sie alle, indem Sie das Remote Development-Erweiterungspaket installieren.