Freigeben über


Problembehandlung in Windows Terminal

In diesem Handbuch werden einige der häufig auftretenden Fehler und Hindernisse behandelt, die bei der Verwendung von Windows Terminal auftreten können.

Das Öffnen der Einstellungen bewirkt nichts (oder öffnet eine unerwartete Anwendung)

Wenn Sie die Schaltfläche "Einstellungen" in der Dropdownliste auswählen, versucht das Terminal, die Einstellungsdatei zu öffnen. settings.json Diese Aktion bewirkt, dass das Betriebssystem den konfigurierten .json Datei-Editor startet. Dieser Editor kann Visual Studio, Notepad oder eine andere unerwartete Anwendung sein. Wenn Ihr Computer nicht über einen konfigurierten .json Editor verfügt, zeigt ihnen das Betriebssystem schließlich das Dialogfeld "Wie soll diese Datei geöffnet werden".

Tipp

Sie können auch die Einstellungs-UI verwenden, um Ihre Einstellungen zu konfigurieren. Sie erfahren, wie Sie die Einstellungs-UI auf der Seite "Aktionen" öffnen.

Legen Sie die WSL-Verteilung so fest, dass sie im Startverzeichnis ~ gestartet wird, wenn sie in älteren Versionen von Windows Terminal gestartet wird.

Standardmäßig ist startingDirectory des Profils %USERPROFILE% (C:\Users\<YourUsername>). Dieser Pfad ist ein Windows-Pfad. Für WSL-Verteilungen, die eine neue Version von Windows Terminal ausführen, können die Dateisysteme eingeben ~ , um diesen Startpfad festzulegen. In älteren Versionen von Windows Terminal können Sie /home/<Your Ubuntu Username> direkt auf Ihren Home-Ordner verweisen. Die folgende Einstellung startet beispielsweise die Distribution "Ubuntu-20.04" in ihrem Home-Verzeichnispfad.

{
    "name": "Ubuntu-20.04",
    "commandline" : "wsl -d Ubuntu-20.04",
    "startingDirectory" : "/home/<Your Ubuntu Username>"
}

Wenn Sie eine sehr frühe Version von Windows Terminal verwenden, muss WSL möglicherweise das \\wsl$\ Präfix verwenden, wenn Sie auf das Home-Verzeichnis einer Distribution für die startingDirectory Einstellung verweisen. Die folgende Einstellung startet z. B. die Distribution "Ubuntu-18.04" im Home-Verzeichnis:

{
    "name": "Ubuntu-18.04",
    "commandline" : "wsl -d Ubuntu-18.04",
    "startingDirectory" : "//wsl$/Ubuntu-18.04/home/<Your Ubuntu Username>"
}

Von Bedeutung

In neueren Versionen von Windows startingDirectory können Pfade im Linux-Stil akzeptiert werden.

Festlegen des Registerkartentitels

Wenn die Shell den Registerkartentitel automatisch festlegen soll, besuchen Sie das Lernprogramm zum Festlegen des Registerkartentitels. Wenn Sie Ihren eigenen Registerkartentitel festlegen möchten, öffnen Sie die settings.json Datei , und führen Sie die folgenden Schritte aus:

  1. Fügen Sie im Profil der Befehlszeile Ihrer Wahl "suppressApplicationTitle": true hinzu, um alle von der Shell gesendeten Titeländerungsereignisse zu unterdrücken. Wenn Sie Ihrem Profil nur diese Einstellung hinzufügen, wird der Registerkartentitel auf den Namen Ihres Profils festgelegt.

  2. Wenn Sie einen benutzerdefinierten Registerkartentitel benötigen, der nicht der Name Ihres Profils ist, fügen Sie es hinzu "tabTitle": "TITLE". Ersetzen Sie "TITEL" durch Ihren bevorzugten Tab-Titel.

Befehlszeilenargumente in PowerShell

Informationen dazu, wie Befehlszeilenargumente in PowerShell funktionieren, finden Sie auf der Befehlszeilenargumentseite.

Befehlszeilenargumente in WSL

Informationen dazu, wie Befehlszeilenargumente in WSL funktionieren, finden Sie auf der Befehlszeilenargumentseite.

Problemstellung startingDirectory

Wenn Ihr Profil die Einstellung ignoriert, überprüfen Sie zuerst die startingDirectory Syntax in Ihrer settings.json Datei. Zur Überprüfung dieser Syntax wird "$schema": "https://aka.ms/terminal-profiles-schema" automatisch eingefügt. Einige Anwendungen, z. B. Visual Studio Code, verwenden dieses eingefügte Schema, um Ihre JSON-Datei während der Bearbeitung zu überprüfen.

Wenn Ihre Einstellungen korrekt sind, führen Sie möglicherweise ein Startskript aus, das das Startverzeichnis Ihres Terminals separat festlegt. PowerShell verfügt beispielsweise über ein eigenes separates Konzept von Profilen. Wenn Sie Ihr Startverzeichnis in einem PowerShell-Profil ändern, hat sie Vorrang vor der in Windows Terminal definierten Einstellung.

Alternativ können Sie, wenn Sie ein Skript mithilfe der commandline Profileinstellung ausführen, den Speicherort in diesem Skript festlegen. Ähnlich wie bei PowerShell-Profilen haben Ihre Befehle im Skript Vorrang vor der startingDirectory Profileinstellung.

Der Zweck startingDirectory besteht darin, eine neue Windows Terminal-Instanz im angegebenen Verzeichnis zu starten. Wenn das Terminal Code ausführt, der sein Verzeichnis ändert, überprüfen Sie diesen Code.

Strg+= vergrößert nicht die Schriftgröße

Wenn Sie ein deutsches Tastaturlayout verwenden, tritt möglicherweise dieses Problem auf. Strg+= wird als Strg+Umschalt+0 deserialisiert, wenn das Haupttastaturlayout auf Deutsch festgelegt ist. Diese Zuordnung ist für deutsche Tastaturen richtig.

Wichtiger ist, dass die App niemals die Tastenkombination STRG+UMSCHALT+0 erhält. Dieses Problem tritt auf, da Windows STRG+UMSCHALT+0 reserviert, wenn mehrere Tastaturlayouts aktiv sind.

Wenn Sie dieses Feature so deaktivieren möchten, dass es Ctrl+= ordnungsgemäß funktioniert, folgen Sie den Anweisungen für "Ändern von Hotkeys zum Wechseln des Tastaturlayouts in Windows 10" in diesem Blogbeitrag.

Ändern Sie die Option "Tastaturlayout wechseln" in "Nicht zugewiesen" (oder deaktivieren Sie STRG+UMSCHALT), und wählen Sie dann OK und Übernehmen aus. STRG+UMSCHALT+0 sollte nun als Tastenbindung funktionieren und an das Terminal weitergeleitet werden.

Wenn Sie jedoch dieses Hotkey-Feature für mehrere Eingabesprachen verwenden, können Sie ihre eigene benutzerdefinierte Tastenbindung in Ihrer settings.json Datei konfigurieren.

Der Text ist verschwommen

Einige Anzeigetreiber und Hardwarekombinationen verarbeiten keinen Bildlauf und keine schmutzigen Bereiche, ohne die Daten aus dem vorherigen Frame unscharf darzustellen. Um dieses Problem zu beheben, fügen Sie eine Kombination dieser globalen Renderingeinstellungen hinzu, um die Belastung ihrer Hardware zu verringern, die durch den Terminaltextrenderer verursacht wird.

Meine Farben sehen seltsam aus! Es gibt schwarze Balken auf meinem Bildschirm!

Von Bedeutung

Dieses Problem gilt nur für Version 1.2+ von Windows Terminal. Wenn Farbprobleme in Windows Terminal 1.0 oder 1.1 oder probleme auftreten, die hier nicht erfasst werden, geben Sie bitte einen Fehler ein.

Windows Terminal 1.2 und höhere Versionen verfügen über ein verbessertes Verständnis bestimmter Anwendungsfarbeinstellungen. Aufgrund dieses verbesserten Verständnisses haben wir eine Reihe von Kompatibilitätsblöcken entfernt, die zu einer schlechten Benutzererfahrung geführt haben. Leider kann eine kleine Anzahl von Anwendungen Probleme haben.

Wir halten diesen Fehlerbehebungseintrag auf dem neuesten Stand mit der Liste bekannter Probleme und deren Lösungen.

Schwarze Linien in PowerShell (5.1, 6.x, 7.0)

Terminal kann, wenn es mit der Zeilenbearbeitungsbibliothek PSReadline von PowerShell gekoppelt ist, schwarze Linien über den Bildschirm ziehen. Diese falsch eingefärbten Bereiche erstrecken sich über den Bildschirm hinaus, unabhängig davon, wo Befehlsparameter, Zeichenfolgen oder Operatoren vorhanden sind.

PSReadline Version 2.0.3 enthält einen Fix für dieses Problem. Wenn Sie die Vorabversion von PSReadline verwenden, beachten Sie, dass noch kein Fix verfügbar ist.

Um auf die neueste Version von PSReadline zu aktualisieren, führen Sie den folgenden Befehl aus:

Update-Module PSReadline

Warum werden meine Emojis nicht als Symbole in der Sprungliste angezeigt?

Nur Bilder, die mit einem Dateispeicherort verknüpft sind, können als Profilsymbole in der Sprungliste gerendert werden. Die Sprungliste unterstützt keine Emojis für Symbole.

Technische Hinweise

Anwendungen, die die GetConsoleScreenBufferInfo Familie der APIs verwenden, um die aktiven Konsolenfarben im Win32-Format abzurufen und dann zu versuchen, sie in plattformübergreifende VT-Sequenzen zu transformieren (z. B. durch Transformieren BACKGROUND_RED\x1b[41min ) können die Fähigkeit von Terminal beeinträchtigen, welche Hintergrundfarbe die Anwendung zu verwenden versucht.

Wählen Sie entweder Windows-API-Funktionen oder VT-Sequenzen zum Anpassen von Farben aus. Mischen Sie sie nicht.

Tastaturdienstwarnung

Ab Windows Terminal 1.5 zeigt das Terminal eine Warnung an, wenn der Dienst "Bildschirmtastatur und Handschriftbereich" deaktiviert ist. Das Betriebssystem benötigt diesen Dienst, um Eingabeereignisse ordnungsgemäß an die Terminalanwendung (sowie viele andere Anwendungen unter Windows) weiterzuleiten. Wenn diese Warnung angezeigt wird, führen Sie die folgenden Schritte aus, um den Dienst erneut zu aktivieren:

  1. Führen Sie im Dialogfeld "Ausführen" den Befehl services.msc aus.

    services.msc im Dialogfeld Ausführen

  2. Finden Sie den Dienst "Touchtastatur und Handschrifttafel"

    Bildschirmtastatur und Handschriftbereichsdienst in Services.msc

  3. Öffnen der "Eigenschaften" für diesen Dienst

    Diensteigenschaften

  4. Ändern des "Starttyps" in "Automatisch"

    Dienststarttyp

  5. Wählen Sie "OK" aus, und starten Sie den PC neu.

Nach dem Neustart des Computers wird der Dienst automatisch gestartet, und das Dialogfeld wird nicht mehr angezeigt.

Warum sehe ich ein Blinken oder Flackern, wenn ich die Git Bash-Kommandozeile verwende?

Möglicherweise bemerken Sie ein Blinken oder Flimmern, wenn Sie eine Git Bash-Kommandozeile innerhalb von Windows Terminal verwenden. Dieses Verhalten ist eigentlich beabsichtigt. Das Terminal führt die Anweisungen von Git Bash aus (indem bell-style auf visible gesetzt wird, was einen visuellen Effekt auslöst, der dem Signalton zugeordnet ist), aber dieses Verhalten kann störend sein. Um dieses Problem zu beheben, öffnen Sie die .inputrc Datei für Ihre Git Bash mit einem Text-Editor. Diese Datei befindet sich wahrscheinlich im Pfad C:\Program Files\Git\etc. Um die Datei mit dem Nano-Text-Editor zu öffnen, verwenden Sie den Befehl: nano ~/.inputrc.

Standard ändern:

# none, visible or audible
set bell-style visible

Setzen Sie bell-style entweder auf none oder auf audible, um den sichtbaren Blitz zu entfernen.

set bell-style none

Drücken Sie STRG+O und STRG+X, um zu speichern und zu beenden.

Wie setze ich meine Einstellungen in Windows Terminal wieder auf die Standardeinstellungen zurück?

Wenn Sie Ihre Einstellungen auf die ursprünglichen Standardeinstellungen zurücksetzen möchten, löschen Sie ihre settings.json Datei. Diese Aktion bewirkt, dass Windows Terminal eine settings.json Datei mit den ursprünglichen Standardeinstellungen neu generiert.

Von Bedeutung

Ab Windows Terminal Version 1.10 oder höher müssen Sie die state.json Datei auch im selben Verzeichnis löschen wie die settings.json Datei, um die Einstellungen vollständig auf die Standardwerte zurückzusetzen.

Warum ist Acryldurchsichtigkeit nicht transparent für meinen Windows Terminal-Hintergrund?

Sie können die Transparenz eines Terminalfensters mit der useAcrylic Eigenschaft festlegen. Es gibt einige Gründe, warum Ihre Deckkrafteinstellung für Acrylglas möglicherweise nicht funktioniert, einschließlich:

  • Als systemweite Richtlinie ist Acryl nur für das Vordergrundfenster aktiviert. Wenn Sie ein anderes Fenster als das Terminal aktivieren, wird das Acryl des Terminals deaktiviert.
  • Acryl funktioniert nicht, wenn ihre GPU-Hardware sie nicht unterstützt. Wenn Sie eine App auf einem virtuellen Computer (VM) oder über Remotedesktop ausführen, funktioniert Acryl wahrscheinlich nicht.
  • Das Betriebssystem deaktiviert Acryl aus einer Reihe von Gründen, z. B. im Energiesparmodus (low-battery) oder beim Zugriff auf einen Computer mithilfe von Remotedesktop.

Warum verschwindet mein Mauszeiger, wenn ich mit der Maus auf ein Fenster zeige und mit der Eingabe beginne?

Dieses Verhalten des automatischen Ausblendens des Cursors ist beabsichtigt; Sie können es jedoch deaktivieren. Suchen Sie in den Windows-Einstellungen nach Mauseinstellungen>>Mauseigenschaften>Mauszeigeroptionen>, und deaktivieren Sie das Kontrollkästchen "Zeiger beim Eingeben ausblenden". Möglicherweise müssen Sie Ihr Windows-Terminal neu starten, damit diese Änderung wirksam wird.