• Windows Terminal入门


    0.引言

    Windows Terminal (以下简称WT)将 PowerShell、Cmd 以及 Windows Linux 子系统(WSL)三大环境实现统一,并且提供美观的页面以及高度自定义的可能。

    本文将简述WT的安装,详细的自定义配置,以及常用的连接云服务器和WSL方法。

    项目GitHub地址:https://github.com/microsoft/terminal

    1.简易安装

    1. 打开Microsoft Store

      Microsoft Store

    2. 搜索Windows Terminal,安装即可

    WT搜索结果界面

    2.初识WT

    打开WT有如下界面(默认打开的是PowerShell,可以自由更改)。

    顶部菜单栏的,可以新建一个默认控制台。

    顶部菜单栏的,可以新建指定的控制台。(后两个控制台为自定义的,后续会介绍)

    其中最重要的也就是可以自定义的地方就是Settings选项

    WT打开界面

    3.初识Settings

    1. 文件名:profiles.json

    2. 文档基本结构

      {
      	"$schema": "https://aka.ms/terminal-profiles-schema",
          // 默认终端
          "defaultProfile": "{Profile's GUID}",
          
          // 是否在标题栏显示终端名称
          "showTerminalTitleInTitlebar": true,
          
          // 根据自己意愿添加全局设置
          "GlobalSettings": "GlobalSettingsValue",
          
          // 每一个终端的配置
          "profiles": [{...},{...}],
          
          // 配色方案 
          "schema": [{...},{...}],
          
          // 键位绑定
          "keybindings": [{...},{...}]
      }
      
    3. 该配置文件的具体配置信息在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

  • 相关阅读:
    Java日志框架Slf4j+Log4j入门
    Pandas常用函数入门
    Noip2018 倒计时
    【缩点】洛谷P3387
    用Visio进行数据库建模、设计和实现
    SQL Server 教程
    MS TransactSQL 存储过程的解密算法
    泛型编程
    网络实现语音
    Visual C++ 例程下载
  • 原文地址:https://www.cnblogs.com/Lu-Yuyang/p/12238581.html
Copyright © 2020-2023  润新知