Sdílet prostřednictvím


Řešení potíží v terminálu Windows

Tato příručka řeší některé běžné chyby a překážky, se kterými se můžete setkat při používání terminálu Windows.

Otevření nastavení nedělá nic (nebo otevře neočekávanou aplikaci)

Pokud v rozevíracím seznamu vyberete tlačítko nastavení, terminál se pokusí otevřít soubor nastavení . settings.json Tato akce způsobí, že operační systém spustí nakonfigurovaný .json editor souborů. Tento editor může být Visual Studio, Poznámkový blok nebo jiná neočekávaná aplikace. Pokud váš počítač nemá nakonfigurovaný .json editor, operační systém vám nakonec ukáže dialogové okno Jak chcete tento soubor otevřít .

Návod

Ke konfiguraci nastavení můžete použít také uživatelské rozhraní nastavení. Na stránce Akce se dozvíte, jak otevřít uživatelské rozhraní nastavení.

Nastavte distribuci WSL tak, aby se spustila v domovském ~ adresáři při spuštění ve starších verzích terminálu Windows.

Ve výchozím nastavení je startingDirectory profilu %USERPROFILE% (C:\Users\<YourUsername>). Tato cesta je cesta Windows. V případě distribucí WSL, na kterých běží nová verze terminálu Windows, mohou systémy souborů zadat ~ , aby nastavili tuto domovskou cestu. Ve starších verzích terminálu Windows můžete přímo použít /home/<Your Ubuntu Username> pro odkazování na domovskou složku. Například následující nastavení spustí distribuci "Ubuntu-20.04" v domovské cestě:

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

Pokud používáte velmi ranou verzi terminálu Windows, WSL může vyžadovat použití předpony \\wsl$\ při odkazování na domovskou cestu distribuce pro nastavení startingDirectory. Například následující nastavení spustí distribuci Ubuntu-18.04 v jejím domovském adresáři:

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

Důležité

V novějších verzích Windows startingDirectory lze přijímat cesty ve stylu Linuxu.

Nastavení názvu záložky

Pokud chcete, aby prostředí automaticky nastavilo název karty, přejděte na tutoriál nastavující název karty. Pokud chcete nastavit vlastní název karty, otevřete souborsettings.json a postupujte takto:

  1. Do profilu pro příkazový řádek podle vašeho výběru přidejte "suppressApplicationTitle": true k potlačení událostí změny názvu, které shell odesílá. Přidáním pouze tohoto nastavení do vašeho profilu bude název záložky nastaven na jméno vašeho profilu.

  2. Pokud chcete vlastní název karty, který se liší od názvu vašeho profilu, přidejte "tabTitle": "TITLE". Nahraďte "TITLE" vaším upřednostňovaným titulkem panelu.

Argumenty příkazového řádku v PowerShellu

Informace o fungování argumentů příkazového řádku v PowerShellu najdete na stránce argumentů příkazového řádku.

Argumenty příkazového řádku ve WSL

Informace o fungování argumentů příkazového řádku ve WSL najdete na stránce argumentů příkazového řádku.

Nastavení problému startingDirectory

Pokud váš profil toto nastavení ignoruje startingDirectory , nejprve zkontrolujte syntaxi v souborusettings.json. Chcete-li tuto syntaxi zkontrolovat, "$schema": "https://aka.ms/terminal-profiles-schema" vloží se automaticky. Některé aplikace, jako je Visual Studio Code, používají toto vložené schéma k ověření souboru JSON při úpravách.

Pokud jsou vaše nastavení správná, možná spouštíte spouštěcí skript, který nastaví počáteční adresář terminálu samostatně. PowerShell má například svůj vlastní samostatný koncept profilů. Pokud změníte počáteční adresář v profilu PowerShellu, bude mít přednost před nastavením definovaným v terminálu Windows.

Případně pokud skript spustíte pomocí commandline nastavení profilu, můžete nastavit umístění v daném skriptu. Podobně jako v profilech PowerShellu mají vaše příkazy ve skriptu přednost před startingDirectory nastavením profilu.

Účelem startingDirectory je spustit novou instanci terminálu Windows v daném adresáři. Pokud terminál spustí jakýkoli kód, který změní svůj adresář, zkontrolujte tento kód.

Kombinace kláves Ctrl+= nezvětší velikost písma.

Pokud používáte německé rozložení klávesnice, můžete narazit na tento problém. Ctrl+= se deserializuje jako Ctrl+Shift+0 , pokud je hlavní rozložení klávesnice nastavené na němčinu. Toto mapování je správné pro německé klávesnice.

Důležitější je, že aplikace nikdy neobdrží stisknutí kláves Ctrl+Shift+0 . K tomuto problému dochází, protože systém Windows si vyhrazuje kombinaci kláves Ctrl+Shift+0 , pokud máte aktivní více rozložení klávesnice.

Pokud chcete tuto funkci zakázat, aby Ctrl+= fungovala správně, postupujte podle pokynů v části "Změna klávesových zkratek pro přepínání rozložení klávesnice v systému Windows 10" v tomto blogovém příspěvku.

Změňte možnost Přepnout rozložení klávesnice na Nepřiřazeno (nebo z Ctrl+Shift), poté vyberte OK a Použít. Kombinace kláves Ctrl+Shift+0 by teď měla fungovat jako vazba kláves a předává se do terminálu.

Pokud ale tuto funkci klávesové zkratky použijete pro více vstupních jazyků, můžete v souborusettings.jsonnakonfigurovat vlastní vazbu klíčů.

Text je rozmazaný.

Některé ovladače zobrazení a kombinace hardwaru nezpracují posun a špinavé oblasti bez rozmazaní dat z předchozího rámce. Chcete-li tento problém zmírnit, přidejte kombinaci těchto globálních nastavení vykreslování , abyste snížili zatížení hardwaru způsobené vykreslováním textu terminálu.

Moje barvy vypadají divně! Na mé obrazovce jsou černé pruhy!

Důležité

Tento problém platí jenom pro terminál Windows verze 1.2 nebo novější. Pokud se v terminálu Windows 1.0 nebo 1.1 zobrazí problémy s barvou nebo problémy, které tady nejsou zachycené, zapište chybu.

Windows Terminal 1.2 a novější verze mají lepší přehled o určitých nastaveních barev aplikace. Z důvodu tohoto lepšího porozumění jsme odebrali řadu bloků kompatibility, které vedly k špatnému uživatelskému prostředí. Bohužel může docházet k problémům s malým počtem aplikací.

Tuto položku pro řešení potíží udržujeme aktuální se seznamem známých problémů a jejich řešeními.

Černé čáry v PowerShellu (5.1, 6.x, 7.0)

Při použití s knihovnou pro úpravu řádků PowerShellu PSReadline může Terminál kreslit černé čáry na obrazovce. Nesprávně zbarvené oblasti se rozprostírají po obrazovce mimo vaši výzvu, kde se nacházejí parametry příkazů, řetězce nebo operátory.

PSReadline verze 2.0.3 obsahuje opravu tohoto problému. Pokud používáte předběžnou verzi psReadline, mějte na paměti, že oprava ještě není k dispozici.

Pokud chcete aktualizovat na nejnovější verzi PSReadline, spusťte následující příkaz:

Update-Module PSReadline

Proč se moje emoji nezobrazují jako ikony v jumplistu?

Pouze obrázky propojené z umístění souboru mohou být vykresleny jako ikony profilu v jumplistu. Jumplist nepodporuje emoji pro ikony.

Technické poznámky

Aplikace, které používají GetConsoleScreenBufferInfo řadu rozhraní API k načtení aktivních barev konzoly ve formátu Win32 a pak je zkusí transformovat na sekvence VT pro různé platformy (například transformací BACKGROUND_RED na \x1b[41m) můžou narušit schopnost terminálu zjistit, jakou barvu pozadí se aplikace pokouší použít.

Zvolte buď funkce rozhraní WINDOWS API , nebo sekvence VT pro úpravy barev. Nemíchejte je.

Upozornění služby klávesnice

Počínaje terminálem Windows 1.5 se v terminálu zobrazí upozornění, pokud je zakázaná služba panelu dotykové klávesnice a rukopisu. Operační systém potřebuje tuto službu ke správnému směrování vstupních událostí do terminálové aplikace (stejně jako mnoha dalších aplikací ve Windows). Pokud se zobrazí toto upozornění, znovu povolte službu následujícím postupem:

  1. V dialogovém okně Spustit spusťte příkaz services.msc

    services.msc v dialogovém okně Spustit

  2. Vyhledejte "Službu dotykové klávesnice a rukopisu"

    Dotyková klávesnice a služba panelu rukopisu ve službách Services.msc

  3. Otevřete vlastnosti pro tuto službu.

    vlastnosti služby

  4. Změňte typ spuštění na Automaticky.

    typ spuštění služby

  5. Vyberte ok a restartujte počítač.

Po restartování počítače se služba automaticky spustí a dialogové okno se už nezobrazí.

Proč vidím blikání nebo problikávání při použití příkazového řádku Git Bash?

Při použití příkazového řádku Git Bash v terminálu Windows si můžete všimnout blikání nebo zášlehu. Toto chování je ve skutečnosti úmyslné. Terminál vykonává, co mu Git Bash určí (nastavení bell-style na visible, což způsobí, že blesk se spojí s reakcí zvonku), ale toto chování může být působit rušivě. Pokud chcete tento problém vyřešit, otevřete .inputrc soubor pro Git Bash pomocí textového editoru. Tento soubor je pravděpodobně umístěn v cestě C:\Program Files\Git\etc. Pokud chcete soubor otevřít v textovém editoru Nano, použijte příkaz: nano ~/.inputrc.

Změňte výchozí nastavení:

# none, visible or audible
set bell-style visible

Nastavte bell-style buď na none nebo na audible pro odstranění viditelného blesku:

set bell-style none

Stisknutím kombinace kláves Ctrl+O a Ctrl+X uložte a ukončete.

Jak obnovím nastavení v terminálu Windows zpět na výchozí nastavení?

Pokud chcete obnovit nastavení zpět do původního výchozího nastavení, odstraňte settings.json soubor. Tato akce způsobí, že terminál windows znovu vygeneruje settings.json soubor s původním výchozím nastavením.

Důležité

Od terminálu Windows verze 1.10 nebo novější musíte také odstranit state.json soubor ve stejném adresáři jako settings.json soubor, aby se nastavení plně resetuje na výchozí hodnoty.

Proč akrylátová opacita nedělá pozadí mého Windows Terminalu průhledným?

Průhlednost okna terminálu můžete nastavit pomocí useAcrylic vlastnosti. Existuje několik důvodů, proč vaše nastavení neprůhlednosti nemusí fungovat pro Akryl, včetně:

  • Jako systémová politika je akryl povolen pouze pro okno popředí. Pokud aktivujete jiné okno než Terminál, vypne se akrylový efekt Terminálu.
  • Akryl nefunguje, pokud váš hardware GPU nepodporuje. Pokud používáte aplikaci na virtuálním počítači nebo na vzdálené ploše, akryl pravděpodobně nefunguje.
  • Operační systém zakáže akryl z řady důvodů, například v režimu úspory energie (nízká baterie) nebo při přístupu k počítači pomocí vzdálené plochy.

Proč ukazatel myši zmizí, když najedem myší na okno a začnu psát?

Toto chování automatického skrytí kurzoru je záměrně, ale můžete ho zakázat. Hledání v Nastavení Windows pro nastavení myši>Další nastavení myši>Vlastnosti myši>Možnosti ukazatele>, a zrušte zaškrtnutí skrýt ukazatel při psaní. Aby se tato změna projevila, budete možná muset restartovat terminál Windows.