最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Windows Terminal 終極指南

2020-04-15 14:53 作者:JuvwxYZ  | 我要投稿

最好的Linux發(fā)行版是Windows 10。

上面這句話雖然只是玩笑,但隨著微軟接連發(fā)布 WSL (Windows Subsystem Linux) 和全新的 Windows Terminal,Windows 和 Linux 之間的界限已經(jīng)開始變得模糊了。許多非Linux不可事情已經(jīng)可以在Windows上實現(xiàn),需要頻繁在Linux和Windows之間切換的場景也不需要雙系統(tǒng)或者虛擬機了。

本文旨在介紹 Windows Terminal 的配置方法,并與大家交流分享一些 Windows Terminal 的使用心得和技巧。

目前(2020年4月初)Windows Terminal 仍處于預(yù)覽版階段,版本號v0.10.781.0,Windows Terminal 的某些功能可能還不完善,或者在后續(xù)的更新中發(fā)生變化。

1、配置文件

下拉菜單

在標(biāo)簽欄的下拉菜單中可以找到 Settings 選項。目前的設(shè)置只能通過編輯?profiles.json 文件來更改,沒有圖形界面。單擊 Settings 選項即可打開?profiles.json 文件。

Tips:按住 Alt 鍵再點擊 Settings 選項可以打開一個 defaults.json 文件,里面存放的是 Windows Terminal 各種設(shè)置的默認(rèn)值。需要注意的是,這些默認(rèn)值目前是硬編碼在代碼中的,修改這個文件不會應(yīng)用在程序中,這個文件只是給你看的。

配置文件的結(jié)構(gòu)并不復(fù)雜,大體可以分為四個部分:

  • 全局設(shè)置?

    最外側(cè)的是全局設(shè)置。包括窗口大小、默認(rèn)啟動配置、深色\淺色主題等。其實下面的三項也是全局設(shè)置的其中之一,但是很有必要將它們單獨提出來討論。

  • 啟動環(huán)境配置 profiles

    啟動不同 shell 環(huán)境時加載的配置列表,這個列表會顯示在標(biāo)簽欄的下拉菜單中。如菜單中的 Windows PowerShell、cmd等,可以針對不同的 shell 環(huán)境配置不同的字體、背景、顏色等等。

  • 顏色主題 schemes

    自定義配色方案列表。

  • 按鍵綁定?keybindings

    自定義快捷鍵列表。

1.1、全局設(shè)置

下圖是 defaults.json 中全局設(shè)置的默認(rèn)值:

全局設(shè)置的默認(rèn)值

alwaysShowTabs:顯示標(biāo)簽欄。如果 alwaysShowTabs 和 showTabsInTitlebar 同時設(shè)置為 false,那么標(biāo)簽欄會被隱藏,此時可以通過按下 ctrl + T 鍵顯示標(biāo)簽欄。

defaultProfile:默認(rèn)啟動的 shell 環(huán)境。通過GUID來指定啟動環(huán)境配置中的某一項。默認(rèn)是 PowerShell 的啟動配置。

initialCols:啟動時窗口的列數(shù)。默認(rèn)值是120。

initialRows:啟動時窗口的行數(shù)。默認(rèn)值是30。

requestedTheme:深色\淺色主題??梢允?#34;dark"深色、"light"淺色、"system"跟隨系統(tǒng)。默認(rèn)值是"system"。

showTabsInTitlebar:設(shè)置為 true 時,將標(biāo)簽顯示在窗口標(biāo)題欄中,并隱藏窗口標(biāo)題。設(shè)置為 false 時,會顯示窗口標(biāo)題欄,標(biāo)簽欄會顯示在窗口標(biāo)題下方。需要重啟窗口生效。

showTerminalTitleInTitlebar:控制窗口標(biāo)題欄的內(nèi)容。設(shè)置為 true 時,窗口標(biāo)題會顯示為當(dāng)前標(biāo)簽的標(biāo)題;設(shè)置為 false 時,窗口標(biāo)題固定顯示“Windows Terminal”。

顯示窗口標(biāo)題欄

tabWidthMode:控制標(biāo)簽寬度。可以是"equal":所有標(biāo)簽等寬,或"titleLength":根據(jù)標(biāo)題長度變化。默認(rèn)值是"equal"。

snapToGridOnResize:設(shè)置為 true 時,調(diào)整窗口大小會自動吸附到最近的字符邊界,設(shè)置為 false 時,調(diào)整窗口大小則會平滑地變化。

wordDelimiters:雙擊選詞時用于確定單詞分界的分割字符。

confirmCloseAllTabs:設(shè)置為?true 時,如果打開了多個標(biāo)簽頁,在關(guān)閉窗口時會彈出確認(rèn)對話框。設(shè)置為 false 則會直接關(guān)閉窗口而不會彈出確認(rèn)對話框。

除了上述選項之外,全局設(shè)置還有下列選項:

copyOnSelect:設(shè)置為 true 時,鼠標(biāo)選詞后會自動復(fù)制所選內(nèi)容。默認(rèn)值是 false。

copyFormatting:設(shè)置為 true 時,復(fù)制的內(nèi)容會包含格式信息(字體、字號、顏色等)。設(shè)置為 false 時,只復(fù)制純文本。默認(rèn)值是 false。

initialPosition:啟動時窗口左上角在屏幕上的坐標(biāo)。格式為"x,y"。有多個顯示器時,這個坐標(biāo)是相對于主顯示器的坐標(biāo)。如果 launchMode 設(shè)置為"maximized",窗口會最大化顯示在這個坐標(biāo)所在的顯示器上。

launchMode:啟動模式??梢允?#34;default":默認(rèn)窗口,或"maximized":最大化窗口。

rowsToScroll:控制鼠標(biāo)滾輪滾動一格頁面所滾動的行數(shù)。設(shè)置為0或"system"會跟隨系統(tǒng)設(shè)置。

1.2、啟動環(huán)境配置 profiles

作為一款終端,Windows Terminal 可以連接各種不同的 shell。安裝后,Windows Terminal 已經(jīng)為我們配置好了 PowerShell、cmd 以及 Azure Cloud Shell 的環(huán)境,如果你的系統(tǒng)安裝了 WSL,它還會為你配置 WSL 環(huán)境。

開箱即用的啟動環(huán)境配置

profiles?包含兩個部分:defaults?和?list。在?defaults?中設(shè)置的項目會對所有配置生效。list?則是包含所有配置的列表。如果某個項目在?list?中和?defaults?中都設(shè)置了,則?list?中的設(shè)置會覆蓋?defaults?中的設(shè)置。

profiles結(jié)構(gòu)

如果你想加入一個新的配置,只需要在 list 中增加一個配置即可,下面我以 Git Bash 為例來演示配置各個項目的作用。

Git Bash 示例

guid:每一個配置都必須有一個GUID,并且不同配置的GUID不可重復(fù),你可在網(wǎng)上搜索在線GUID生成器,或者使用Visual Studio菜單欄->工具->創(chuàng)建GUID 來創(chuàng)建一個GUID。

name:配置的名字,會顯示在下拉菜單中。

commandline:shell 可執(zhí)行文件的路徑。上圖的路徑是Git Bash的默認(rèn)安裝路徑。

Tips:Windows使用反斜杠"\"來分割路徑,而在json字符串中表示反斜杠需要兩個反斜杠來轉(zhuǎn)義"\\"。但是在Windows Terminal配置文件中可以用正斜杠"/"來代替反斜杠以避免轉(zhuǎn)義。

Tips:在后面加上命令行參數(shù),可以實現(xiàn)很多方便的功能,例如啟動后自動ssh到指定的服務(wù)器。這一點在后文有介紹。

hidden:是否隱藏該配置。如果設(shè)置為true,則配置不會顯示在下拉菜單中,可以用來隱藏系統(tǒng)自動生成的配置(例如Azure?Cloud?Shell,系統(tǒng)生成的配置無法被刪除,不常用的話可以用這個選項隱藏)。

startingDirectory:啟動時shell所在的路徑。

Tips:通常來說,啟動路徑只支持Windows下的路徑,如果你想在啟動wsl時進(jìn)入家目錄,可以如下設(shè)置:"//wsl$/DistroName/home/username"。注意修改其中對應(yīng)wsl發(fā)行版的名字以及你的用戶名。

closeOnExit:是否在退出shell或啟動失敗時關(guān)閉面板??梢允?#34;graceful":在鍵入 exit 命令或進(jìn)程正常退出時關(guān)閉面板(啟動失敗或進(jìn)程異常退出時不會關(guān)閉面板),或"never":從不關(guān)閉面板??梢杂?true 或 false?分別代替"graceful"或"never"。

colorScheme:顏色主題的名字。圖中的"Campbell"是自帶的顏色主題之一,可以在 defaults.json 中查看其他自帶的顏色主題。關(guān)于自定義顏色主題,將在下一節(jié)介紹。

cursorColor:光標(biāo)的顏色。十六進(jìn)制表示的顏色值,格式為"#RRGGBB"。

cursorShape:光標(biāo)的形狀??梢允?"bar"(?┃)、 "emptyBox"(???)、 "filledBox"(?█?)、 "underscore"(?▁?) 或 "vintage"(?▃?)。默認(rèn)值是"bar"。

fontFace:字體。能用什么字體取決于你的系統(tǒng)安裝了什么字體。

fontSize:字號。默認(rèn)值是12。

historySize:命令歷史記錄的最大行數(shù)。默認(rèn)值是9001。

icon:顯示在標(biāo)簽和菜單中的圖標(biāo)。

Tips:官方推薦使用32×32像素的點陣圖(png, gif, ico都可以)??梢员苊饪s放帶來的性能和畫質(zhì)損耗。

padding:邊距,顯示字符的區(qū)域與窗口邊界的距離。格式可以用一個數(shù)字"#"同時定義所有邊距,兩個數(shù)字"#, #"定義左右邊距和上下邊距,或四個數(shù)字"#, #,?#,?#"分別定義左、上、右、下邊距。默認(rèn)值是"8,?8,?8,?8"。

snapOnInput:設(shè)置為 true ,輸入時窗口會自動跳轉(zhuǎn)到輸入行;設(shè)置為 false ,輸入時窗口不會自動跳轉(zhuǎn)。

useAcrylic:設(shè)置為true來啟用亞克力效果,Windows Fluent Design 大法。默認(rèn)值是false。不過顯卡太弱的話會影響性能。

亞克力效果

antialiasingMode:抗鋸齒模式??梢允?#34;grayscale":灰度,"cleartype":清晰,或"aliased":無抗鋸齒。效果如下圖所示,默認(rèn)值是"grayscale"。推薦"cleartype"模式,字體更明亮銳利。

抗鋸齒模式對比

除了上述選項外,環(huán)境配置還有下列選項:

acrilicOpacity:啟用亞克力效果時控制窗口透明度。0到1之間的浮點數(shù),0表示完全透明,1表示完全不透明。默認(rèn)值是0.5。

background:背景顏色。十六進(jìn)制表示的顏色值,格式為"#RRGGBB"。注意,如果同時還設(shè)置了?colorScheme,則這個選項會覆蓋?colorScheme?中的設(shè)置。

backgroundImage:背景圖片的路徑。

backgroundImageOpacity:背景圖片的透明度。0到1之間的浮點數(shù),0表示完全透明,1表示完全不透明。

backgroundImageAlignment:背景圖片的對齊方式??梢允?"bottom"、 "bottomLeft"、 "bottomRight"、 "center"、 "left"、 "right"、 "top"、 "topLeft"或"topRight"。默認(rèn)值是"center"。

backgroundImageStretchMode:背景圖片的拉伸模式。可以是 "fill"、 "none"、 "uniform" 或 "uniformToFill"。默認(rèn)值是"uniformToFill"。

顯示一張背景圖片,透明度0.3,放置在右下角,不拉伸。

cursorHeight:當(dāng)光標(biāo)形狀是"vintage"時,控制光標(biāo)的高度。25到100之間的整數(shù),單位是相對于行高的百分比。

experimental.retroTerminalEffect:實驗性功能,不保證將來的版本會繼續(xù)存在。設(shè)置為true可以啟用模擬CRT顯示器效果,裝逼利器。效果如下圖所示,顯卡太弱的話會影響性能。需要重啟窗口才能生效。

CRT效果

foreground:前景色,即普通文本顯示的顏色。注意,同 background 一樣,如果同時還設(shè)置了?colorScheme,則這個選項會覆蓋?colorScheme?中的設(shè)置。

scrollbarState:滾動條狀態(tài)??梢允?#34;visible":顯示滾動條,或"hidden":隱藏滾動條。

selectionBackground:被選中文本的背景色。注意,同?background?一樣,如果同時還設(shè)置了?colorScheme,則這個選項會覆蓋?colorScheme?中的設(shè)置。

suppressApplicationTitle:忽略應(yīng)用標(biāo)題。設(shè)置為 true 時,標(biāo)簽標(biāo)題固定顯示 tabTitle 設(shè)置的值,設(shè)置為 false 時,標(biāo)簽標(biāo)題根據(jù)當(dāng)前運行的應(yīng)用變化。

tabTitle:啟動時的默認(rèn)標(biāo)簽標(biāo)題。(某些shell可能會忽略這個值,例如bash)。

完成你的配置之后,保存配置文件,即可在下拉菜單中看到新增的Git Bash選項,然后就可以愉快地在Windows Terminal中使用Git Bash了。

完成配置后保存,下拉菜單中出現(xiàn)Git Bash

1.3、顏色主題 schemes

在defaults.json文件中可以看到Windows Terminal內(nèi)置的顏色主題,例如:

內(nèi)置顏色主題 Campbell

其中 name 字段定義了該主題的名字,可以在環(huán)境配置中通過這個名字來使用這個主題。

你可以在 profiles.json 中增加自定義的主題。例如:

VSCode內(nèi)置終端的默認(rèn)主體顏色

上圖設(shè)置了一個名為VSCode的自定義主題,這個顏色配置是VSCode內(nèi)置Terminal的默認(rèn)配色。你可根據(jù)自己的喜好配置喜歡的顏色,也可以上網(wǎng)搜索,發(fā)現(xiàn)更多好看好用的配色。

Tips:在VSCode中,按ctrl+shift+p打開命令面板,搜索“顏色主題”(color theme),找到“開發(fā)者:使用當(dāng)前設(shè)置生成顏色主題”(Developer: Generate Color Theme From Current Settings)。該命令會根據(jù)當(dāng)前顏色主題生成一個配色文件。在"colors"字段中找到名稱中帶有"terminal.ansi****"系列的顏色,即是當(dāng)前VSCode終端中應(yīng)用的顏色配置。(如果你的當(dāng)前主題使用的是默認(rèn)配色,那么這些值可能會被注釋)

1.4、按鍵綁定 keybindings

同樣,在defaults.json中可以看到默認(rèn)的快捷鍵設(shè)置。例如 ctrl + shift + w 可以關(guān)閉面板、ctrl + shift + c可以復(fù)制所選文本、ctrl + shift + v可以粘貼文本,等等。此外,在下拉菜單中,各個環(huán)境配置右邊也可以看到快捷鍵提示,通過ctrl + shift + 數(shù)字鍵在新標(biāo)簽中打開相應(yīng)的shell環(huán)境。

你可以在profiles.json中添加新的快捷鍵。自定義快捷鍵格式如下:

自定義快捷鍵格式

其中 command 指定要執(zhí)行的命令。若無需參數(shù)或采用默認(rèn)參數(shù),將其指定為對應(yīng)命令的名稱即可;若需帶參數(shù)則需要用第二種格式,通過對應(yīng)的參數(shù)名稱來指定參數(shù)值。同一個命令可以綁定多組快捷鍵。

keys 指定了對應(yīng)的按鍵組合,前方的修飾鍵通過加號"+"連接??捎玫男揎楁I包括ctrl、alt、shift。如果多個命令綁定了相同的快捷鍵組合,那么上方的命令會優(yōu)先生效。

如果你想取消某個快捷鍵組合(可能是快捷鍵沖突),可以通過將 command 設(shè)置為 null 實現(xiàn)。例如:{ "command": null, "keys": "ctrl+shfit+w"?},即可取消這組快捷鍵組合。

可以綁定為快捷鍵的命令名稱如下:

closePane:關(guān)閉面板。默認(rèn)快捷鍵是"ctrl+shift+w"。

closeTab:關(guān)閉標(biāo)簽。

closeWindow:關(guān)閉窗口。默認(rèn)快捷鍵是"alt+f4"。

copy:復(fù)制選定文本。默認(rèn)快捷鍵是"ctrl+shift+c"和"ctrl+insert"。可選參數(shù)名稱:trimWhitespace ,布爾類型,設(shè)置為 true 時,刪除行尾的空白字符并保留換行符;設(shè)置為 false 時,保留空白字符并刪除換行符,默認(rèn)值是true。

copyTextWithoutNewlines:。復(fù)制選定文本,不帶換行符。等同于{ "action": "copy", "trimWhitespace": false }。

decreaseFontSize:減小字號。默認(rèn)快捷鍵是"ctrl+-"(或者按住ctrl鼠標(biāo)滾輪往下)。

duplicateTab:復(fù)制當(dāng)前標(biāo)簽頁。默認(rèn)快捷鍵是"ctrl+shift+d"。

increaseFontSize:增大字號。默認(rèn)快捷鍵是"ctrl+="(或者按住ctrl鼠標(biāo)滾輪往上)。

moveFocus:在標(biāo)簽頁的面板之間移動焦點??蛇x參數(shù)名稱:direction,指定焦點移動的方向,可以是"up", "down", "left", "right",默認(rèn)值是"left"。

moveFocusDown:向下移動焦點,默認(rèn)快捷鍵是"alt+down"。等同于{ "action": "moveFocus", "direction": "down" }。

moveFocusLeft:向左移動焦點,默認(rèn)快捷鍵是"alt+left"。等同于{ "action": "moveFocus", "direction": "left" }。

moveFocusRight:向右移動焦點,默認(rèn)快捷鍵是"alt+right"。等同于{ "action": "moveFocus", "direction": "right" }。

moveFocusUp:向上移動焦點,默認(rèn)快捷鍵是"alt+up"。等同于{?"action": "moveFocus", "direction": "up" }。

newTab:新建標(biāo)簽。可選參數(shù):index:整數(shù),指定shell環(huán)境配置在下拉菜單中的序號,注意這個序號是從0開始的,默認(rèn)值是0。profile:字符串,指定shell環(huán)境配置的GUID或名稱,和 index 同時存在時會忽略 index 參數(shù)。commandline:字符串,使用該參數(shù)指定的命令,會覆蓋配置中的設(shè)置。tabTitle:使用該參數(shù)指定的標(biāo)簽標(biāo)題,會覆蓋配置中的設(shè)置。startingDirectory:使用該參數(shù)指定的起始路徑,會覆蓋配置中的設(shè)置。

newTabProfile0:在新標(biāo)簽中打開配置0。默認(rèn)快捷鍵是"ctrl+shift+1"。等同于{?"action":?"newTab",?"index":?0?}。

newTabProfile1:在新標(biāo)簽中打開配置1。默認(rèn)快捷鍵是"ctrl+shift+2"。等同于{?"action":?"newTab",?"index":?1?}。

newTabProfile2:在新標(biāo)簽中打開配置2。默認(rèn)快捷鍵是"ctrl+shift+3"。等同于{?"action":?"newTab",?"index":?2?}。

newTabProfile3:在新標(biāo)簽中打開配置3。默認(rèn)快捷鍵是"ctrl+shift+4"。等同于{?"action":?"newTab",?"index":?3?}。

newTabProfile4:在新標(biāo)簽中打開配置4。默認(rèn)快捷鍵是"ctrl+shift+5"。等同于{?"action":?"newTab",?"index": 4?}。

newTabProfile5:在新標(biāo)簽中打開配置5。默認(rèn)快捷鍵是"ctrl+shift+6"。等同于{?"action":?"newTab",?"index":?5 }。

newTabProfile6:在新標(biāo)簽中打開配置6。默認(rèn)快捷鍵是"ctrl+shift+7"。等同于{?"action":?"newTab",?"index":?6?}。

newTabProfile7:在新標(biāo)簽中打開配置7。默認(rèn)快捷鍵是"ctrl+shift+8"。等同于{?"action":?"newTab",?"index":?7?}。

newTabProfile8:在新標(biāo)簽中打開配置8。默認(rèn)快捷鍵是"ctrl+shift+9"。等同于{?"action":?"newTab",?"index":?8?}。

nextTab:切換到下一個標(biāo)簽頁。默認(rèn)快捷鍵是"ctrl+tab"。

openNewTabDropdown:打開下拉菜單。默認(rèn)快捷鍵是"ctrl+shift+space"。

openSettings:打開設(shè)置。默認(rèn)快捷鍵是"ctrl+,"。

paste:粘貼復(fù)制的文本。默認(rèn)快捷鍵是"ctrl+shift+v"和"shift+insert"。

prevTab:切換到上一個標(biāo)簽頁。默認(rèn)快捷鍵是"ctrl+shift+tab"。

resetFontSize:重置字號。默認(rèn)快捷鍵是"ctrl+0"。

resizePane:調(diào)整面板大小。可選參數(shù):direction,指定調(diào)整的方向,可以是"up", "down", "left", "right",默認(rèn)值是"left"。

resizePaneDown:將面板分界線向上移動。默認(rèn)快捷鍵是"alt+shift+down"。等同于{?"action":?"resizePane",?"direction":?"down"?}。

resizePaneLeft:將面板分界線向上移動。默認(rèn)快捷鍵是"alt+shift+left"。等同于{?"action":?"resizePane",?"direction":?"left"?}。

resizePaneRight:將面板分界線向上移動。默認(rèn)快捷鍵是"alt+shift+right"。等同于{?"action":?"resizePane",?"direction":?"right"?}。

resizePaneUp:將面板分界線向上移動。默認(rèn)快捷鍵是"alt+shift+up"。等同于{?"action":?"resizePane",?"direction":?"up"?}。

scrollDown:向下滾動一行。默認(rèn)快捷鍵是"ctrl+shift+right"。

scrollDownPage:向下滾動一頁。默認(rèn)快捷鍵是"ctrl+shift+pgdn"。

scrollUp:向上滾動一行。默認(rèn)快捷鍵是"ctrl+shift+up"。

scrollUpPage:向上滾動一頁。默認(rèn)快捷鍵是"ctrl+shift+pgup"。

splitHorizontal:水平拆分面板。默認(rèn)快捷鍵是"alt+shift+-"。等同于{?"action":?"splitPane",?"split":?"horizontal"}。

splitVertical:垂直拆分面板。默認(rèn)快捷鍵是"alt+shift+plus"。等同于{?"action":?"splitPane",?"split":?"vertical"}。

splitPane:拆分面板。可選參數(shù):split,可以是"horizontal":水平拆分,"vertical":垂直拆分,或者"auto":自動,默認(rèn)值是自動。index:整數(shù),指定新面板中shell環(huán)境配置在下拉菜單中的序號,注意這個序號是從0開始的,默認(rèn)值是0。profile:字符串,指定新面板中shell環(huán)境配置的GUID或名稱,和?index?同時存在時會忽略?index?參數(shù)。commandline:字符串,使用該參數(shù)指定的命令,會覆蓋配置中的設(shè)置。tabTitle:使用該參數(shù)指定的標(biāo)簽標(biāo)題,會覆蓋配置中的設(shè)置。startingDirectory:使用該參數(shù)指定的起始路徑,會覆蓋配置中的設(shè)置。

switchToTab:切換標(biāo)簽??蛇x參數(shù):index:整數(shù),標(biāo)簽頁的序號,注意這個序號是從0開始的,默認(rèn)值是0。

switchToTab0:切換到0號標(biāo)簽。默認(rèn)快捷鍵是"ctrl+alt+1"。等同于{?"action":?"switchToTab",?"index":?0?}。

switchToTab1:切換到1號標(biāo)簽。默認(rèn)快捷鍵是"ctrl+alt+2"。等同于{?"action":?"switchToTab",?"index":?1?}。

switchToTab2:切換到2號標(biāo)簽。默認(rèn)快捷鍵是"ctrl+alt+3"。等同于{?"action":?"switchToTab",?"index":?2?}。

switchToTab3:切換到3號標(biāo)簽。默認(rèn)快捷鍵是"ctrl+alt+4"。等同于{?"action":?"switchToTab",?"index":?3?}。

switchToTab4:切換到4號標(biāo)簽。默認(rèn)快捷鍵是"ctrl+alt+5"。等同于{?"action":?"switchToTab",?"index":?4?}。

switchToTab5:切換到5號標(biāo)簽。默認(rèn)快捷鍵是"ctrl+alt+6"。等同于{?"action":?"switchToTab",?"index":?5?}。

switchToTab6:切換到6號標(biāo)簽。默認(rèn)快捷鍵是"ctrl+alt+7"。等同于{?"action":?"switchToTab",?"index":?6?}。

switchToTab7:切換到7號標(biāo)簽。默認(rèn)快捷鍵是"ctrl+alt+8"。等同于{?"action":?"switchToTab",?"index": 7?}。

switchToTab8:切換到8號標(biāo)簽。默認(rèn)快捷鍵是"ctrl+alt+9"。等同于{?"action":?"switchToTab",?"index":?8?}。

toggleFullscreen:切換到全屏模式。默認(rèn)快捷鍵是"alt+enter"和"f11"。

find:打開查找工具欄。默認(rèn)快捷鍵是"ctrl+shift+f"。

2、右鍵菜單

如果你經(jīng)常需要從某個特定的文件夾打開終端,那么把在文件管理器的右鍵菜單中加入“在此處打開終端”命令是非常方便的辦法。Windows Terminal從v0.9版本開始支持命令行參數(shù),因此我們可利用這一點在右鍵菜單中加入快捷啟動Windows Terminal的選項,并通過特定的參數(shù)啟動特定的shell環(huán)境。

增加右鍵菜單需要修改注冊表,你可以使用注冊表腳本來修改,或者按下Win+R,輸入 regedit 運行注冊表編輯器直接編輯注冊表。

如下圖所示的右鍵菜單中,“在 Git Bash 中打開”、“在 Linux Shell?中打開”、“在 PowerShell 中打開”可以在Windows Terminal中分別啟動相應(yīng)的shell。

注冊表腳本如下:

Windows?Registry?Editor?Version?5.00


[HKEY_CLASSES_ROOT\Directory\Background\shell\git-bash-wt]

@="在?Git?Bash?中打開"

"Icon"="C:\\Program?Files\\Git\\git-bash.exe"


[HKEY_CLASSES_ROOT\Directory\Background\shell\git-bash-wt\command]

@="C:\\Users\\YOURUSERNAME\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe?-p?\"PROFILE_OF_GIT_BASH\"?-d?\"%V\""


[HKEY_CLASSES_ROOT\Directory\shell\git-bash-wt]

@="在?Git?Bash?中打開"

"Icon"="C:\\Program?Files\\Git\\git-bash.exe"


[HKEY_CLASSES_ROOT\Directory\shell\git-bash-wt\command]

@="C:\\Users\\YOURUSERNAME\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe?-p?\"{PROFILE_OF_GIT_BASH}\"?-d?\"%V\""


[HKEY_CLASSES_ROOT\Directory\Background\shell\ps-wt]

@="在?PowerShell?中打開"

"Icon"="powershell.exe"


[HKEY_CLASSES_ROOT\Directory\Background\shell\ps-wt\command]

@="C:\\Users\\YOURUSERNAME\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe?-p?\"PROFILE_OF_POWERSHELL\"?-d?\"%V\""


[HKEY_CLASSES_ROOT\Directory\shell\ps-wt]

@="在?PowerShell?中打開"

"Icon"="powershell.exe"


[HKEY_CLASSES_ROOT\Directory\shell\ps-wt\command]

@="C:\\Users\\YOURUSERNAME\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe?-p?\"PROFILE_OF_POWERSHELL\"?-d?\"%V\""


[HKEY_CLASSES_ROOT\Directory\Background\shell\linux-wt]

@="在?Linux?Shell?中打開"

"Icon"="wsl.exe"


[HKEY_CLASSES_ROOT\Directory\Background\shell\linux-wt\command]

@="C:\\Users\\YOURUSERNAME\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe?-p?\"PROFILE_OF_WSL\"?-d?\"%V\""


[HKEY_CLASSES_ROOT\Directory\shell\linux-wt]

@="在?Linux?Shell?中打開"

"Icon"="wsl.exe"


[HKEY_CLASSES_ROOT\Directory\shell\linux-wt\command]

@="C:\\Users\\YOURUSERNAME\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe?-p?\"PROFILE_OF_WSL\"?-d?\"%V\""

請注意wt.exe的路徑,必須使用絕對路徑。示例的路徑是通過Windows App Store安裝的默認(rèn)路徑,請將其中的?YOURUSERNAME?改為你的用戶名。

其次是 -p 參數(shù)指定的profile,就是配置文件中相應(yīng)profile的名稱或者GUID,請根據(jù)自己的配置文件修改。

此外,其中的"Icon"指定了菜單項前面顯示的圖標(biāo)所在的路徑,可以指定一個exe文件或ico文件,系統(tǒng)會自動讀取其中的圖標(biāo)。如果你喜歡Windows Terminal的圖標(biāo),可以在GitHub上找到。在Windows?Terminal倉庫中搜索terminal.ico就能找到。注意字符串當(dāng)中的反斜杠"\\"、雙引號"\""需要轉(zhuǎn)義。

右鍵菜單的本質(zhì)是帶參數(shù)執(zhí)行wt.exe,下面介紹wt.exe的命令行參數(shù),格式如下

wt.exe?[terminal_parameters]

[new-tab?[terminal_parameters]]

[split-pane?[-H]|[-V]?[terminal_parameters]]

[focus-tab?[--target,-t?tab-index]|[--next,-n]|[--previous,-p]]


其中[terminal_parameters]:?[--profile,-p?profile-name]?[--startingDirectory,-d?starting-directory]?[commandline]

[terminal_parameters]用于指定打開的shell環(huán)境:--profile,-p 選項指定環(huán)境配置的名字或者GUID;--startingDirextory,-d 選項指定起始工作路徑,覆蓋環(huán)境配置中指定的路徑;commandline 用于指定命令行,同樣會覆蓋環(huán)境配置中指定的命令。

[new-tab?[terminal_parameters]]用于打開一個新的標(biāo)簽頁,后面可以帶[terminal_parameters]參數(shù)指定在新標(biāo)簽頁中啟動的shell配置。

[split-pane?[-H]|[-V]?[terminal_parameters]]用于拆分當(dāng)前面板。-H指定水平拆分,-V指定垂直拆分。后面同樣可以用[terminal_parameters]參數(shù)指定在新的面板中啟動的shell環(huán)境。

[focus-tab?[--target,-t?tab-index]|[--next,-n]|[--previous,-p]]用于切換到指定的標(biāo)簽頁。用[--target,-t?tab-index]指定標(biāo)簽頁的序號,或者用[--next,-n]|[--previous,-p]指定切換到前一個或后一個標(biāo)簽頁。

同理,你可以在配置文件中添加常用配置,并通過添加右鍵菜單的方式方便快捷地啟動它們。如果你經(jīng)常需要ssh到遠(yuǎn)程的服務(wù)器,那么下面的配置會非常適合你:(Windows 10可以安裝OpenSSH,因此沒有wsl的話可以用PowerShell)

{? //?啟動WSL并ssh到指定的服務(wù)器

? ? ? ? "guid": "generate-your-own-guid",

? ? ? ? "name": "ssh to server",

? ? ? ? "commandline": "wsl.exe ssh user@server.com"

}

3、總結(jié)

Windows Terminal尚在預(yù)覽版階段,但目前的使用體驗已經(jīng)非常棒了。對UTF-8的支持、GPU加速的界面渲染、Windows Fluent設(shè)計風(fēng)格、更重要的是它開源免費。終于能夠一改Windows下糟糕的命令行體驗,在圖形化的Windows中打開了一扇特殊的窗口。期待Windows Terminal 1.0版本的正式發(fā)布。

Windows Terminal 終極指南的評論 (共 條)

分享到微博請遵守國家法律
甘泉县| 太白县| 集安市| 磴口县| 玉林市| 南投市| 噶尔县| 高陵县| 象州县| 博客| 乐至县| 余江县| 浦东新区| 铜山县| 长兴县| 渝北区| 兰考县| 江山市| 凌云县| 依兰县| 方山县| 淄博市| 房产| 桦川县| 稷山县| 呼玛县| 乌什县| 广州市| 山丹县| 东阳市| 三门峡市| 吕梁市| 武川县| 寻乌县| 弥勒县| 麦盖提县| 广德县| 施甸县| 千阳县| 三穗县| 宁德市|