Windows Terminal入门
0.引言
Windows Terminal (以下简称WT)将 PowerShell、Cmd 以及 Windows Linux 子系统(WSL)三大环境实现统一,并且提供美观的页面以及高度自定义的可能。
本文将简述WT的安装,详细的自定义配置,以及常用的连接云服务器和WSL方法。
项目GitHub地址:https://github.com/microsoft/terminal
1.简易安装
打开Microsoft Store
搜索Windows Terminal,安装即可
2.初识WT
打开WT有如下界面(默认打开的是PowerShell,可以自由更改)。
顶部菜单栏的+,可以新建一个默认控制台。
顶部菜单栏的﹀,可以新建指定的控制台。(后两个控制台为自定义的,后续会介绍)
其中最重要的也就是可以自定义的地方就是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
Windows Terminal入门的更多相关文章
- Windows Terminal 新手入门
翻译自 Kayla Cinnamon 2020年12月17日的文章<Getting Started with Windows Terminal> [1] 安装 Windows Termin ...
- Windows编程入门程序详解
引用:http://blog.csdn.net/jarvischu/article/details/8115390 1. 程序 /******************************* ...
- Windows Azure 入门系列课程Windows Azure 入门系列课程
Windows Azure 入门系列课程 https://www.microsoft.com/china/msdn/events/webcasts/shared/webcast/NewSeries/A ...
- C#创建Windows服务入门图解(VS2010)
C#创建Windows服务入门图解(VS2010) Windows服务大家都知道,比如Audio.Theme都是大家比较熟悉的服务,他们可以设为自动启动的,并且在注册表的开机自启动项里是没有痕迹的.所 ...
- 微软云平台windows azure入门系列八课程
微软云平台windows azure入门系列八课程: Windows Azure入门教学系列 (一): 创建第一个WebRole程序与部署 Windows Azure入门教学系列 (二): 创建第一个 ...
- Windows Azure入门教学系列 (二):部署第一个Web Role程序
本文是Windows Azure入门教学的第二篇文章. 在第一篇教学中,我们已经创建了第一个Web Role程序.在这篇教学中,我们将学习如何把该Web Role程序部署到云端. 注意:您需要购买Wi ...
- Windows Azure入门教学系列 (一): 创建第一个WebRole程序
原文 Windows Azure入门教学系列 (一): 创建第一个WebRole程序 在第一篇教学中,我们将学习如何在Visual Studio 2008 SP1中创建一个WebRole程序(C#语言 ...
- Windows Azure入门教学系列 (九):Windows Azure 诊断功能
本文是Windows Azure入门教学的第九篇文章. 本文将会介绍如何使用Windows Azure 诊断功能.跟部署在本地服务器上的程序不同,当我们的程序发布到云端之后,我们不能使用通常的调试方法 ...
- Windows Azure入门教学系列 (七):使用REST API访问Storage Service
本文是Windows Azure入门教学的第七篇文章. 本文将会介绍如何使用REST API来直接访问Storage Service. 在前三篇教学中,我们已经学习了使用Windows Azure S ...
随机推荐
- 2019-2-11-WPF-列表自动换行
title author date CreateTime categories WPF 列表自动换行 lindexi 2019-02-11 08:55:31 +0800 2019-02-11 08:5 ...
- 牛客练习赛11 假的字符串 (Trie树+拓扑找环)
牛客练习赛11 假的字符串 (Trie树+拓扑找环) 链接:https://ac.nowcoder.com/acm/problem/15049 来源:牛客网 给定n个字符串,互不相等,你可以任意指定字 ...
- asdf
[root@host01 ~]# netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' TIME_WAIT 3 CL ...
- 一张图帮你记忆,Spring Boot 应用在启动阶段执行代码的几种方式
前言 有时候我们需要在应用启动时执行一些代码片段,这些片段可能是仅仅是为了记录 log,也可能是在启动时检查与安装证书 ,诸如上述业务要求我们可能会经常碰到 Spring Boot 提供了至少 5 种 ...
- ELK学习实验009:安装kibana的仪表盘
一 metricbeat仪表盘 1.1 安装metricbeat仪表盘 可以将metricbeat数据在kibana中展示 [root@node4 ~]# cd /usr/local/metricbe ...
- spring boot 中事物的使用
一.什么是事务? 事务,通俗的说就是,同时做多个事,要么全做,要么不做,也是其特性.举个例子来说,好比你在某宝.某东.某多上购物,在你提交订单的时候,库存也会相应减少,不可能是钱付了,库存不减少,或者 ...
- cs服务器搭建(cobaltstrike)
linux服务器中安装 1.因为cs这个工具需要用到Java环境,新装的linux系统没有Java环境,所以这里先装一下java环境 yum install -y java-1.8.0-openjdk ...
- 使用ASP.NET Core 3.x 构建 RESTful API - 4.2 过滤和搜索
向Web API传递参数 数据可以通过多种方式来传给API. Binding Source Attributes 会告诉 Model 的绑定引擎从哪里找到绑定源. 共有以下六种 Binding Sou ...
- 程序员初学者参考 ---懂得基础语法后如何做一个自己的case?
对于很多人来说,我懂java语法,甚至面向对象的特性啦这些都是有了解的,但我就是不会做项目,其实项目真有那么难吗? 对于基础不牢固的人来说,我还不会这个基础点,那个还没学呢,你让我做个项目,我保证做不 ...
- 【5min+】 什么?原来C#还有这两个关键字
系列介绍 简介 [五分钟的dotnet]是一个利用您的碎片化时间来学习和丰富.net知识的博文系列.它所包含了.net体系中可能会涉及到的方方面面,比如C#的小细节,AspnetCore,微服务中的. ...