[TOC]html
0.引言
Windows Terminal (如下簡稱WT)將 PowerShell、Cmd 以及 Windows Linux 子系統(WSL)三大環境實現統一,而且提供美觀的頁面以及高度自定義的可能。git
本文將簡述WT的安裝,詳細的自定義配置,以及經常使用的鏈接雲服務器和WSL方法。github
項目GitHub地址:https://github.com/microsoft/terminaljson
1.簡易安裝
-
打開Microsoft Store數組
-
搜索Windows Terminal,安裝便可服務器
2.初識WT
打開WT有以下界面(默認打開的是PowerShell,能夠自由更改)。app
頂部菜單欄的+,能夠新建一個默認控制檯。ssh
頂部菜單欄的**﹀**,能夠新建指定的控制檯。(後兩個控制檯爲自定義的,後續會介紹)字體
其中最重要的也就是能夠自定義的地方就是Settings選項。網站
3.初識Settings
-
文件名:profiles.json
-
文檔基本結構
{ "$schema": "https://aka.ms/terminal-profiles-schema", // 默認終端 "defaultProfile": "{Profile's GUID}", // 是否在標題欄顯示終端名稱 "showTerminalTitleInTitlebar": true, // 根據本身意願添加全局設置 "GlobalSettings": "GlobalSettingsValue", // 每個終端的配置 "profiles": [{...},{...}], // 配色方案 "schema": [{...},{...}], // 鍵位綁定 "keybindings": [{...},{...}] }
-
該配置文件的具體配置信息在github上有描述(下文我將會簡要描述一下具體內容),地址:https://github.com/microsoft/terminal/blob/master/doc/cascadia/SettingsSchema.md
3.1全局配置
{ // 如下爲官方給出的全局配置,填寫的值爲默認值 "alwaysShowTabs" : true, // 是否老是顯示 "copyOnSelect" : false, // 當選中時複製 "defaultProfile" : "PowerShell guid", // 默認終端的guid "initialCols" : 120, // 初始化行數 "initialRows" : 30, // 初始化列數 "rowsToScroll" : "system", // 滾動時的列數,默認與系統一致,也能夠自定義一個整數 "requestedTheme" : "system", // 設置app的主題,變量:"light","dark","system" "showTerminalTitleInTitlebar" : true, // 終端標題是否在標題欄顯示 "showTabsInTitlebar" : true, // 選項卡是否在標題欄顯示 "snapToGridOnResize" : false, "tabWidthMode" : "equal", // 選項卡的寬度,變量: "equal"(平等),"titleLength"(與標題等長) "wordDelimiters" : "/\()"'-:,.;<>~!@#$%^&*|+=[]{}?" }
3.2每個終端配置
"profiles": [ { *"guid" : "{00000000-0000-0000-0000-000000000000}", // guid必須爲該格式,後附上自動生成guid地址 *"name" : "XXXXX", // 名稱,在菜單中顯示 "tabTitle" : "", // 標題欄上的名稱 "icon" : "", // 顯示在標題欄上的圖標 "hidden" : false, // 是否隱藏 "commandline" : "", // 在終端中可執行字段 "historySize" : 9001,// 容許的歷史命令行數 "startingDirectory" : "", // 開始時的目錄 "suppressApplicationTitle" : true, // "tabTitle"覆蓋默認標題 "cursorColor" : "#rrggbb", // 光標的顏色 "cursorShape" : "bar", //光標的形狀,變量:"vintage"(▃),"bar"(┃),"underscore"(▁),"filledBox"(█),"emptyBox"(▯) "cursorHeight": 25, // 光標高度,25-100,當且僅當"cursorShape"="vintage" "colorScheme" : "Campbell", // 配色方案 "colorTable" : [], // 配色方案數組,當且僅當"colorScheme"屬性未定義 "background" : "#rrggbb", // 背景顏色,十六進制顏色 "foreground" : "#rrggbb", // 前景色,十六進制顏色 "selectionBackground" : "", // 被選中部分顏色,將覆蓋配色方案中設置 "backgroundImage" : "", // 圖片的絕對路徑 "backgroundImageAlignment" : "center", // 圖片對齊標準,變量: "center","left","top","right","bottom","topLeft","topRight","bottomLeft","bottomRight" "backgroundImageOpacity" : 1.0, // 背景圖的透明度0-1 "backgroundImageStrechMode" : "uniformToFill", // 填充方式,變量:"none","fill","uniform","uniformToFill" "fontFace" : "Consolas", // 字體 "fontSize" : 12, // 字體大小 "padding" : "8,8,8,8", // 終端的內邊距 "scrollbarState" : "", // 滾動條狀態,變量:"visible","hidden" "useAcrylic" : true, // 是否使用毛玻璃 "acrylicOpacity" : 0.5, // 毛玻璃透明度 "snapOnInput" : true, // 輸入時是否將頁面滾動到輸入位置 "closeOnExit" : true, // 退出時關閉,變量:"graceful","always","never" }, {...} ]
自動生成GUID網站:http://www.ofmonkey.com/transfer/guid
每個終端的GUID必須惟一
3.3配色方案
如下列出的屬性特定於不一樣的配色方案。ColorTool 能夠用來建立和探索新的配色方案。全部顏色使用十六進制顏色格式。
"schemes": [ { "name":"", "foreground" : "#rrggbb", "background`" : "#rrggbb", "selectionBackground" : "#rrggbb", "black" : "#rrggbb", "blue" : "#rrggbb", "brightBlack" : "#rrggbb", "brightBlue" : "#rrggbb", "brightCyan" : "#rrggbb", "brightGreen" : "#rrggbb", "brightPurple" : "#rrggbb", "brightRed" : "#rrggbb", "brightWhite" : "#rrggbb", "brightYellow" : "#rrggbb", "cyan" : "#rrggbb", "green" : "#rrggbb", "purple" : "#rrggbb", "red" : "#rrggbb", "white" : "#rrggbb", "yellow" : "#rrggbb" // "black"到"yellow"的屬性能夠簡寫成以下數組,依次爲每個顏色的值 // "colors":[ // "#rrggbb", // ... // ] }, {...} ]
3.4鍵位綁定
"keybindings" : [ { "command" : "", "keys" : ["","",,] }, {...} ]
3.4.1提供的command
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
---|---|---|---|---|---|---|---|
1 | copy | newTabProfile1 | newTabProfile8 | increaseFontSize | switchToTab0 | switchToTab7 | resizePaneDown |
2 | copyTextWithoutNewlines | newTabProfile2 | closeWindow | decreaseFontSize | switchToTab1 | switchToTab8 | moveFocusLeft |
3 | paste | newTabProfile3 | closeTab | resetFontSize | switchToTab2 | openSettings | moveFocusRight |
4 | newTab | newTabProfile4 | closePane | scrollUp | switchToTab3 | splitPane | moveFocusUp |
5 | openNewTabDropdown | newTabProfile5 | switchToTab | scrollDown | switchToTab4 | resizePaneLeft | moveFocusDown |
6 | duplicateTab | newTabProfile6 | nextTab | scrollUpPage | switchToTab5 | resizePaneRight | toggleFullscreen |
7 | newTabProfile0 | newTabProfile7 | prevTab | scrollDownPage | switchToTab6 | resizePaneUp | find |
3.4.2可供參考的keys
0 | 1 | 2 | 3 |
---|---|---|---|
1 | ctrl+1 | shift+numpad_1 | ctrl+alt+shift+pgup |
2 | ctrl+plus | ctrL+shift+numpad_plus | - |
3 | alt+- | ctrl+pgdn | - |
4.鏈接雲服務器
以添加騰訊雲CentOS 7.4爲例
只需修改"commandline"命令便可
"commandline" : "ssh -p 端口號 用戶名@服務器地址"
5.鏈接WSL
只需安裝WSL則會在配置中自動添加WSL相關的終端。
一樣推薦如何安裝WSL的博客:https://www.jianshu.com/p/32b241189739
6.玩轉Emoji
如下僅推薦別人的博客:https://blog.csdn.net/sD7O95O/article/details/94501960
原文出處:https://www.cnblogs.com/Lu-Yuyang/p/12238581.html