Windows Terminal er blevet den schweiziske lommekniv Windows-konsoller tilbyder et væld af funktioner: faner, paneler, understøttelse af CMD, PowerShell, WSL og Azure, samt stort set uendelig tilpasningsmulighed. Hvis du bruger det direkte, udnytter du kun en lille brøkdel af, hvad det har at tilbyde.
Med et par justeringer af filen settings.json, nogle velgennemtænkte genveje Og med lidt omhu for designet kan du gå fra et "trist sort vindue" til et kraftfuldt, komfortabelt og visuelt tiltalende arbejdsmiljø. Lad os se, trin for trin, Vigtige genveje og tilpasninger til Windows Terminal ved hjælp af alt, hvad den officielle dokumentation tillader ... men forklaret i lægmandssprog.
Første start og automatiske profiler
Første gang du åbner Windows Terminal, vil du normalt se en Windows PowerShell-profil Åbnet i en fane. Fra starten opretter appen standardprofiler for PowerShell, kommandoprompt (CMD) og Azure Cloud Shell, som forbindes af andre dynamiske profiler, når du installerer flere ting.
Hvis du installerer en distribution af WSL (Ubuntu, Debian, Kali osv.)Windows Terminal tilføjer automatisk en profil for hver distribution. Hvis du tilføjer flere distributioner senere, Deres profiler vil blive vist på den næste opstart. uden at du behøver at gøre noget. Disse profiler er normalt ledsaget af et ikon med Tux, Linux-pingvinen, for hurtigt at identificere dem i rullemenuen.
Forståelse af basiskonfigurationen: settings.json og standardindstillinger
Windows Terminal konfigureres primært ved hjælp af en JSON-fil. Du kan åbne indstillingerne med den grafiske brugerflade, men hvis du holder Alt-tasten nede, når du åbner Indstillinger Standardkonfigurationsfilen (skrivebeskyttet) vises, hvilket er nyttigt til at se alle de muligheder, som programmet understøtter.
I den faktiske brugerfil er nøglen "profiler" indeholder et objekt med "standarder" og "liste". Inden for profiles.defaults Du definerer parametre, der gælder for alle profiler, uden at du behøver at gentage dem én efter én. For eksempel, for at bruge Cascadia Code-skrifttypen på alle konsoller:
{ "profiles": { "defaults": { "fontFace": "Cascadia Code" }, "list": [] } }
Bagefter i "profiles.list" definerer hver profil (PowerShell, CMD, WSL, Git Bash, Cmder osv.) med deres egne egenskaber: guid, name, commandline, startingDirectory, icon, hiddenog mange flere æstetiske og funktionelle muligheder.
Tilpas udseendet af hver profil
Hver profil kan have sin egen personlighed: ikoner, farver, baggrund, gennemsigtighed, skrifttype, markør... Alt er defineret i JSON, så ændringerne er øjeblikkelige efter lagring.
Nøgleparametre for en profil
I en typisk profil kan du bruge felter som f.eks. "guid", "kommandolinje", "startmappe" og "navn" at definere konsollen og hvor den starter, samt icon for at indstille et brugerdefineret ikon (f.eks. fra stien til RoamingState hjælp ms-appdata:///roaming/mi-icono.png).
For at arbejde komfortabelt er det meget praktisk at konfigurere "startingDirectory" med din projektmappe o con %USERPROFILE%eller endda forskellige repositories afhængigt af profilen (for eksempel en "Dev PowerShell"-profil, der altid starter i dit primære monorepo).
Gennemsigtighed, baggrundsbilleder og retro CRT-effekt
Hvis du ønsker, at terminalen skal have et moderne udseende, kan du aktivere akryl-effekt med egenskaberne useAcrylic (sandt/falsk) og acrylicOpacity (værdi fra 0 til 1). Med noget i retning af 0.75 Du får en behagelig gennemsigtighed uden at miste læsbarheden.
Du kan også indstille et statisk baggrundsbillede eller endda animerede GIF'er med backgroundImage, kontroller dens opacitet med backgroundImageOpacity og hvordan det passer til vinduet backgroundImageStretchMode (værdier som f.eks. fill, none, uniform o uniformToFill).
Hvis du er til nostalgi, er der en eksperimentel parameter kaldet "eksperimentel.retroTerminalEffekt" der simulerer en CRT-skærm med scanningslinjer. Kombiner det med en mørk baggrund og en matchende "tabColor" at have en spektakulær retro-konsol.
Farveskemaer og markør
I afsnittet "Skemaer" definerer farvepaletter komplet (tekst, baggrund, ANSI-farver, blanke varianter…). Hvert skema har en name som derefter refereres til i profilerne med colorSchemeWindows Terminal indeholder som standard flere temaer (Campbell, One Half Dark, Vintage…), men du kan oprette dine egne eller kopiere temaer fra andre konsoller.
Markøren kan også konfigureres. «markørform» du vælger mellem streg, understregning, vintage, fyldt boks eller tom boks, og med cursorColor Du angiver en bestemt farve. Ændring af disse to ting forbedrer oplevelsen betydeligt, hvis du bruger mange timer på konsollen.
Skrifttyper, NerdFonts og margin
For at vise avancerede ikoner og glyffer (git, sprog, mapper osv.) skal du bruge en NerdFont-skrifttypeEt klassisk eksempel er “Caskaydia Cove Nerd Font” (afledt af Cascadia Code). Efter installation på Windows skal du i profilerne (eller i profiles.defaults) USA "fontFace": "CaskaydiaCove NF" eller kildens korrekte navn.
Hvis du ser små firkanter eller mærkelige symboler I stedet for ikoner er det næsten helt sikkert skrifttypen, der ikke anvendes korrekt i profilen, Windows Terminal eller andre miljøer som den indbyggede VS Code-terminal. Justering af skrifttypeindstillingen på hvert sted burde løse det.
For at forhindre teksten i at klæbe til kanterne kan du bruge "polstring" med fire værdier (op, højre, ned, venstre) i pixels, for eksempel "padding": "8, 12, 8, 12" for at give lidt spillerum og lade alting ånde bedre.
Oh My Posh, ikoner og "fancy" shell i PowerShell og WSL

Hvis du ønsker en mere visuelt tiltalende og informativ prompt (Git-gren, repository-status, virtuelt miljø, bruger, maskine osv.), er den typiske PowerShell-kombinationsboks posh-git + oh-my-posh + TerminalikonerDe er installeret med:
Install-Module posh-git -Scope CurrentUser
Install-Module oh-my-posh -Scope CurrentUser
Install-Module -Name Terminal-Icons -Repository PSGallery
Derefter redigerer du din PowerShell-profil med notepad $PROFILE og du tilføjer linjer som Importmodul posh-git, Importmodul oh-my-posh, Importmodul Terminalikoner y Set-PoshPrompt -Theme NOMBRE_DEL_TEMAFra da af vil hver ny session indlæse den prompt ved hjælp af den NerdFont, du har konfigureret.
I WSL kan du anvende en lignende idé med Åh min Zsh og Åh min Bash redigering .bashrc o .zshrc, vælge temaer som powerlevel10k og tilføje værktøjer som neofetch eller winfetch for at vise en elegant systemoversigt, når terminalen åbnes.
Fokustilstand og Quake-tilstand: Arbejd uden distraktioner
Opkaldet "Fokustilstand" Skjuler titellinjen og fanerne, så du kun ser tekstområdet. Du kan aktivere det fra kommandopaletten (Ctrl+Shift+P) ved at søge efter "fokustilstand" eller tilføje en tastebinding med kommandoen toggleFocusMode en actions (f.eks. "keys": "ctrl+f12").
Fra fanen Start i indstillinger Du kan endda angive, at Windows Terminal altid skal starte i fokus- eller maksimeret fokus-tilstand. Dette er især nyttigt på små skærme, eller når du vil koncentrere dig fuldt ud om logning, testning eller fjernsessioner.
En anden perle er "Jævelstilstand"Dette skaber et flydende vindue i konsolstil, der popper op fra toppen af skærmen, ligesom spilterminaler. Internt er det et vindue med navnet... _quake, justeres automatisk til den øverste halvdel af skærmen og går i fokustilstand.
Der kan kun være ét Quake-vindue ad gangenOg når den er minimeret, forsvinder den fra proceslinjen og Alt+Tab. Du kan starte den ved at køre wt -w _quake eller at forbinde handlingen quakeMode til en global genvejstast ved hjælp af kommandoen globalSummon i afsnittet om globale handlinger.
Museinteraktion: zoom, opacitet og træk af filer
Selvom tastaturet er det primære værktøj, har musen også sin rolle. Du kan zoom ind på teksten ved at holde Ctrl nede og bruge hjuletDette øger eller mindsker skriftstørrelsen for den aktuelle session. Ændringen ændrer ikke profilindstillingerne, kun den pågældende instans.
Hvis du holder Ctrl+Shift og drej på hjuletDu justerer baggrundens opacitet i realtid for sessionen, perfekt hvis du vil se noget bag vinduet uden at røre JSON'en.
Windows Terminal genkender Ctrl+klik på links hvordan man åbner hyperlinks i standardbrowseren, og det giver dig også mulighed for Træk filer eller mapper over på knappen Ny fane For at åbne en profil med den pågældende mappe som den oprindelige placering. Hold Alt nede og åbner den i et nyt panel i den aktuelle fane, og hold Shift nede og åbner den i et nyt vindue.
Derudover har den en mulighed kopiérVedVælg at hvis du sætter det i trueDette vil bevirke, at al tekst, du vælger med musen, går direkte til udklipsholderen. I så fald vil højreklik altid være "indsæt". Meget praktisk, hvis du kommer fra Linux-verdenen eller MacOS.
Avancerede handlinger, tastaturgenveje og tastebindinger
Den virkelige styrke i Windows Terminal ligger i sektionen "handlinger" og "tastebindinger" fra settings.jsonDer definerer du, hvad hver genvej gør: åbner faner, opdeler paneler, flytter mellem dem, ændrer farver, justerer opacitet, sender foruddefineret tekst osv.
Handlingerne kan være enkle kommandoer efter navn (f.eks. "command": "toggleFullscreen") o kommandoer med argumenterhvor du bruger formularen { "action": "nombre", ...parámetros }Du kan tildele en id og derefter knytte den til en eller flere tastekombinationer i keybindings.
Send kommandoer til shell'en med sendInput
Med handlingen "sendInput" giver dig mulighed for at indsætte tekst i skallen som om du selv skrev det. Det er perfekt til gentagne kommandoer. For eksempel at rydde skærmen med clear ved at trykke på Alt+K:
{ "command": { "action": "sendInput", "input": "clear\r" }, "keys": "alt+k", "name": "clear terminal" }
Eller for at gå op til den overordnede mappe med Ctrl + Pil op sende cd ..:
{ "command": { "action": "sendInput", "input": "cd ..\r" }, "keys": "ctrl+up" }
Du kan også bruge escapede ANSI-sekvenser (f.eks. «\[A» for at simulere pil op) og opbyg små "opgaver", der udføres med en enkelt genvej: start scripts, tests, builds osv.
Fanebladshåndtering: åbn, luk, omdøb, farvelæg
Blandt de standardhandlinger, du har "nyfane", "lukfane", "duplikerfane", "næstefane", "forrigefane" og "skifttilfane", med parametre til at vælge profil efter indeks, GUID eller navn, justere fanebladtitel, farveskema, startmappe, forhøje til administrator osv.
Kommandoen "renameTab" giver dig mulighed for at angive en specifik titel eller nulstil den (ved at sætte title: null), mens openTabRenamer Åbner en lille tekstboks over den aktuelle fane, så du kan omdøbe den med det samme.
Det kan du også Ændr farven på en faneblad ved hjælp af handlingen "setTabColor", der sender en farve i hexadecimalt format (for eksempel, "#ff00ff") eller gendan til originalen ved hjælp af nullHvis du foretrækker noget mere visuelt, openTabColorPicker Åbn den integrerede farvevælger.
Opdelte paneler og navigation mellem dem
Panelerne er en af Windows Terminals store styrker: de tillader opdel den aktuelle fane i sektioner for at vise f.eks. server, logs, tests og editor parallelt uden at skulle skifte faneblad.
Handlingen "splitPane" opretter et nyt panel I fanen kan du angive retningen (lodret, vandret, op, ned, venstre, højre, auto), hvilken profil der skal bruges, startmappen, relativ størrelse, om det aktuelle panel skal duplikeres osv. For eksempel er en typisk genvej:
{ "command": { "action": "splitPane", "split": "auto" }, "keys": "alt+shift+d" }
Med "auto" bestemmer terminalen, om den skal opdeles lodret eller vandret, baseret på tilgængelig plads. Du kan også oprette specifikke links til lodret (for eksempel Alt+Shift+V) eller vandret (Alt+Shift+H).
Så bruger du "moveFocus" for at hoppe fra et panel til et andet (Alt+Piletaster, for eksempel) og "ændre størrelse på rude" for at ændre dens størrelse med Alt+Shift+Piletaster. Kommandoer som duplicatePane, movePane y swapPane De giver dig mulighed for at klone, flytte eller bytte placeringen af paneler uden at lukke noget.
Forudkonfigurerede arbejdsområder og flere handlinger
Hvis du ønsker, at dit miljø altid skal starte på samme måde (f.eks. PowerShell til venstre, CMD til højre, Ubuntu nederst og fokusere på en bestemt fane), kan du starte den med en enkelt kommando wt kædehandlinger:
wt -p "Windows PowerShell" ; sp -p "Command Prompt" ; new-tab -p "Ubuntu" ; sp -H -p "Ubuntu" ; focus-tab -t 0
Der er også den særlige handling "multipleActions" i settings.jsonDenne funktion giver dig mulighed for at tildele en liste over sekventielle handlinger til en enkelt genvej: oprette faner, opdele paneler, ændre farver, flytte fokus, zoome panel osv. Den er ideel til at oprette arbejdslayouts, som du kan sammensætte med en enkelt tastekombination når som helst.
Avanceret søgning og historikkontrol
med Ctrl+Shift+F åbner den integrerede søgningDenne proces gennemløber hele scrollbufferen, ikke kun den synlige del. Du kan aktivere/deaktivere store bogstaver, bruge regulære udtryk og navigere mellem resultater ved hjælp af handlingerne. findMatch (næste/forrige).
Hvis din historik er mangelfuld, så øg den. "historySize" til værdier som 20000 på det øverste niveau af JSON'en for at bevare flere linjer og udføre bredere søgninger. Hvis du har brug for at spore tidligere sessioner, er det bedst at omdirigere outputtet til logfiler og bruge eksterne søgeværktøjer (grep, rg osv.).
Modulær konfiguration, dynamiske profiler og miljø pr. profil
I store installationer kan konfigurations-JSON'en vokse sig ret stor. For at holde den ren kan du opdel det i fragmenter ved hjælp af "import"-egenskabenFor eksempel at have én fil til handlinger, en anden til temaer, en anden til profiler osv., og derefter liste dem i et array i hovedfilen.
Windows Terminal genererer dynamiske profiler til PowerShell, Azure, WSL og andre kilderHvis du aldrig bruger nogle af dem, kan du forenkle menuen ved at angive "deaktiverede profilkilder" med de oprindelser, du vil skjule (for eksempel "Azure" eller "PowerShell").
En anden meget kraftfuld mulighed er "miljø" inden for hver profil, med specifikke miljøvariabler: for eksempel en "Dev PowerShell"-profil med NODE_ENV=development y DEBUG=1og en anden "Prod" med andre variabler. Kombineret med startingDirectory Du har skaller, der er fuldstændig gearet til et specifikt projekt eller en rolle.
Shell-integration, smarte titler og rullemarkører
Hvis du tilpasser din shell-prompt (PowerShell, Bash, Zsh…) med passende scripts, kan du gøre det sådan, at Fanerne afspejler mapper, Git-grene og virtuelle miljøer og andre realtidsdata ved hjælp af escape-sekvenser, der understøttes af Windows Terminal.
Med handlingen Du kan også gennemtvinge opdateringer af titler ved hjælp af "sendInput". eller ryd skærmen som en hurtig genvej, mens du bruger kommandoerne addMark, scrollToMark, clearMark y clearAllMarks Du kan markere vigtige punkter i bufferen og navigere mellem dem, som om de var visuelle "milepæle".
Kopier, indsæt, vælg og rul med præcision.
Handlingen "kopiér" kopierer det markerede til udklipsholderenog accepterer parametre som f.eks. singleLine, withControlSequences o copyFormatting for at bestemme, om du vil have en enkelt linje, ANSI-format, HTML/RTF osv. Indsætning udføres med handlingen paste, som du kan linke til Ctrl+V, Ctrl+Shift+V eller Shift+Insert.
Værktøjer som "vælgAlle", "udvidValgTilOrd", "skiftBlokValg" og "markérTilstand" De giver dig meget fin kontrol over, hvordan du markerer tekst, kun ved hjælp af tastaturet. Og med scrollUp, scrollDown, scrollUpPage, scrollDownPage, scrollToTop y scrollToBottom Du kan rulle gennem historikken uden at røre musehjulet.
Endelig handlingen "clearBuffer" giver dig mulighed for at rydde skærmen, scrolle tilbage eller begge dele.Ideelt når en applikation har ødelagt bufferen, og du vil begynde at se nye data fra bunden.
Frigør nøgler og sameksister med applikationer som Vim eller tmux
Da Windows Terminal indeholder mange standardgenveje, kolliderer de nogle gange med kritiske kombinationer af Vim, tmux eller lignende konsolapplikationerFor at fjerne en nøgle fra terminalen og overføre den helt til den underliggende app, bruges specialkommandoen. ubundet eller feltet er indstillet id a null i den tastebinding.
Et typisk eksempel er Ctrl+V, som Windows Terminal bruger til at indsætteVim har dog brug for det til visuel blokvalg. Ved at fjerne linket i settings.json opfører genvejen sig som i Vim, ikke som i terminalen.
Kombinationen af veldefinerede profiler, omhyggeligt udvalgte emner og kilder, brugerdefinerede handlinger og genvejeSpecialtilstande som Fokus og Jordskælv, og den intelligente brug af klassiske kommandoer forvandler Windows Terminal til en konsol utrolig fleksibel, der er i stand til at tilpasse sig både hurtige administrationsopgaver og komplekse udviklingsmiljøer, hvor en velkonfigureret terminal virkelig gør en forskel for produktiviteten. Del denne vejledning, så flere brugere vil lære om emnet.