1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > Windows Terminal 配置文件+图形化配置界面+右键菜单+管理员权限

Windows Terminal 配置文件+图形化配置界面+右键菜单+管理员权限

时间:2020-02-23 08:46:55

相关推荐

Windows Terminal 配置文件+图形化配置界面+右键菜单+管理员权限

Windows Terminal 配置

Windows Terminal 是一个面向命令行工具和 shell(如命令提示符、PowerShell 和适用于 Linux 的 Windows 子系统 (WSL))用户的新式终端应用程序。 它的主要功能包括多个选项卡、窗格、Unicode 和 UTF-8 字符支持、GPU 加速文本呈现引擎,还可以用于创建你自己的主题并自定义文本、颜色、背景和快捷键绑定。

记录Windows Terminal配置文件信息以及添加为右键菜单

零.安装

1.直接应用商店安装,没啥好说的

2.GitHub下载啥啥啥.msixbundle文件手动安装,两种方式

2.1PowerShell命令行安装,效果与应用商店安装一样

Add-AppPackage 下载的.msixbundle文件路径

2.2 解压安装 2.2.1 将下载的啥啥啥.msixbundle文件后缀改为.zip解压2.2.2 同样方法根据自己电脑的架构将对应的CascadiaPackage_哟哟哟.msix文件解压到某一文件夹2.2.3 将解压出来的文件夹放到自己想要放的地方,然后使用wt.exe或者WindowsTerminal.exe打开即可

一.参数说明

0.图形化配置

好消息从 预览版v1.6.10272.0 开始支持可选的图形化配置,可选意思就是默认依然是配置文件,图形化界面需要手动打开

在配置文件的"keybindings"模块添加如下内容, 保存后可使用ctrl+shift+,命令打开图形配置界面,也可自行修改"keys"字段对应的数据自定义其他快捷键

注意使用图形化配置界面保存后会覆盖手动编辑保存的配置文件,如果有什么要保留的东西提前备份

{"command": {"action": "openSettings", "target": "settingsUI" }, "keys": "ctrl+shift+," }

官方文档

1.global

顾名思义,该部分配置对于整个 Windows Terminal 软件生效,以下是部分常用参数

$schema ==> 配置项可选值,类似xml的scheme https://aka.ms/terminal-profiles-schemadefaultProfile ==> 默认打开profiles的guidinitialCols ==> 列数(宽度)initialRows ==> 行数(高度)confirmCloseAllTabs ==> 多标签页同时关闭时是否弹窗提示tabWidthMode ==> 标签宽度 equal|titleLength,即 等宽|与标题相同

2.profiles

该部分用来控制shell标签的行为

2-1.defaults

每个shell标签都会使用的配置,可以把 终端的配置 中所有shell标签都会用到的统一数据提取到该处

2-2.list

数组格式,用来配置shell标签的行为,以下为部分参数

guid ==> 唯一标识符name ==> 指定该profiles对象的名称,将会显示在下拉菜单中source ==> 内置的一些命令 Windows.Terminal.Wsl|Windows.Terminal.Azurecommandline ==> 启动终端窗口时执行指定的程序/命令/脚本startingDirectory ==> 启动时的路径tabTitle ==> 标签名fontFace ==> 字体fontSize ==> 字体大小useAcrylic ==> 开启亚克力模糊即俗称的毛玻璃效果,值:true|falseacrylicOpacity ==> 亚克力模糊效果透明度,值:0~1,useAcrylic=false时无效closeOnExit ==> 关闭窗口时退出当前shell,值:true|falsecolorScheme ==> 颜色主题名称,为[]schemes下的主题对象中name的值cursorColor ==> 光标颜色,值:16进制码cursorShape ==> 光标形状,值:bar|vintage|underscore|filledBox|emptyBoxhistorySize ==> 保留历史行数icon ==> 指定显示在顶部tab以及下拉菜单中的图标padding ==> 边距,值:0, 0, 0, 0 值设定顺序为左、上、右、下snapOnInput ==> 键入时跳转到光标位置,值:true|false

3.schemes

添加主题配色,数组格式,参数值均为十六进制

name ==> 配色名称background ==> 背景色foreground ==> 前景色black/white/yellow/green/cyan/purple/blue/red ==> 定义8个颜色与对应浅色,浅色添加前缀bright

4.keybindings

快捷键,数组格式

command ==> 命令 closeTab: 关闭标签newTab: 新标签newTabProfile0: 新标签,0~9nextTab: 下一个标签openSettings: 打开设置prevTab: 上一个标签scrollDown: 下拉scrollDownPage: 下拉一页scrollUp: 上拉scrollUpPage: 上拉一页switchToTab0: 切换到第几个标签 0~9keys ==> 绑定的快捷键,数组格式 如 [ctrl+t]

二.配置文件示例

一个配置文件示例

// 按住 'alt' 键点击 '设置按钮' 可以打开默认设置文件// 官方文档地址 https://aka.ms/terminal-documentation{// 全局配置信息,官方文档 https://aka.ms/terminal-global-settings"$schema": "https://aka.ms/terminal-profiles-schema",// 选择内容后复制, true:选择后立刻复制,鼠标右键变为始终粘贴; false:不立刻复制,选中后右键复制,非选中状态右键粘贴"copyOnSelect": false,// 是否复制字体/颜色等格式"copyFormatting": false,// 这会确定双击选定的内容中使用的字分隔符。 字分隔符是指定两个字之间的边界的字符。 最常见的示例包括空格、分号、逗号和句号。//"wordDelimiters": " ./\\()\"'-:,.;<>~!@#$%^&*|+=[]{}~?│",// 屏幕重绘 true:终端将重绘整个屏幕的每个帧; false:只会渲染屏幕中发生了变化的帧//"experimental.rendering.forceFullRepaint": true,// 设置打开 Terminal 时默认打开哪个标签"defaultProfile": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}", // cmd//"defaultProfile": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}", // powershell//"defaultProfile": "{58ad8b0c-3ef8-5f4d-bc6f-13e4c00f2530}", // wsl// "system":跟随系统; "dark":深色主题; "light":浅色主题"theme": "system",// 宽度"initialCols": 115,// 高度"initialRows": 33,// 始终显示标签"alwaysShowTabs": true,// 在标题栏中显示终端窗口标签栏"showTabsInTitlebar": true,// 在标签栏中显示终端标签,true:标题栏将显示所选选项卡的标题; false:标题栏将显示“Windows 终端”"showTerminalTitleInTitlebar": true,//"experimental_showTabsInTitlebar": true,// 标签宽度模式 equal:登长|titleLength:标题的长度|compact:非活动标签最窄"tabWidthMode": "compact",// 多标签关闭时提示"confirmCloseAllTabs": false,"profiles": {"defaults": {// 所有标签都会启用的设置// 加载 shell 时所处的起始目录 "%USERPROFILE%":用户文件夹; "//wsl$/Ubuntu-20.04":wsl的某个分发版; ".":当前位置,在右键菜单打开时有效"startingDirectory": ".",// 禁止脚本修改标题 true:tabTitle 成为默认标题,并禁止应用程序的任何标题更改消息,未设置tabTitle将改为使用name。false:tabTitle会正常起作用//"suppressApplicationTitle": false,// 主题配色 Campbell; Campbell Powershell; Vintage; One Half Dark; One Half Light; Solarized Dark; Solarized Light; Tango Dark; Tango Light"colorScheme": "One Half Dark",// 字体"fontFace" : "Cascadia Code PL",// 字体大小//"fontSize" : 12,// 字体粗细 "normal"、"thin"、"extra-light"、"light"、"semi-light"、"medium"、"semi-bold"、"bold"、"extra-bold"、"black"、"extra-black",或与 OpenType 字体粗细的数值表示形式相对应的整数//"fontWeight": "normal",// 消除文本锯齿 "grayscale"、"cleartype"、"aliased"//"antialiasingMode": "grayscale",// 输出历史行数"historySize": 9001,// 光标类型 "bar":┃,竖线; "emptyBox":▯,空心竖块; "filledBox":█实心竖块; "underscore": ▁,细下划线; "vintage":▃,粗下划线"cursorShape": "bar",// 光标百分数高度(从底部开始)。 只有将 cursorShape 设置为 "vintage" 时,此操作才有效。//"cursorHeight": 25,// 光标颜色 以十六进制格式表示的字符串形式的颜色:"#rgb" 或 "#rrggbb"//"cursorColor": "",// 文字距四周边框举例"padding": "0, 0, 0, 0",// acrylic即毛玻璃效果"useAcrylic": true,// acrylic即毛玻璃效果的不透明度,默认0.5"acrylicOpacity": 0.8,// 背景图片 输入图片位置即可//"backgroundImage": "",// 背景图片拉伸模式 "none"、"fill"、"uniform"、"uniformToFill"//"backgroundImageStretchMode": "fill",// 背景图片与窗口的对齐方式 "center"、"left"、"top"、"right"、"bottom"、"topLeft"、"topRight"、"bottomLeft"、"bottomRight"//"backgroundImageAlignment": "bottom",// 背景图片的不透明度//"backgroundImageOpacity": 1.0,// 滚动条可见性 "visible"、"hidden"//"scrollbarState": "visible",// 键入时滚动到输入行 true:则在键入时,窗口将滚动到命令输入行; false:则在开始键入时,窗口不会滚动//"snapOnInput": true,// 使用exit或正常退出时如何关闭配置文件。"graceful"/true:关闭配置文件; "always":始终关闭配置文件; "never"/false:永远不会关闭配置文件"closeOnExit": "graceful",// 控制 Windows 终端是否将 ctrl+alt 视为 AltGr 的别名"altGrAliasing": true},"list": [{"guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}","name": "cmd","tabTitle": "cmd","commandline": "cmd.exe",//"icon" : "ms-appx:///ProfileIcons/{0caa0dad-35be-5f56-a8ff-afceeeaa6101}.png",// 是否隐藏"hidden": false},{"guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}","name": "PowerShell","tabTitle": "PowerShell","commandline": "powershell.exe",//"icon" : "ms-appx:///ProfileIcons/{61c54bbd-c2c6-5271-96e7-009a87ff44bf}.png",// 是否隐藏"hidden": false},{"guid": "{58ad8b0c-3ef8-5f4d-bc6f-13e4c00f2530}","name": "Debian","tabTitle": "Debian(WSL)","source": "Windows.Terminal.Wsl",// 是否隐藏"hidden": false},{"guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6102}","name": "cmdAdmin","tabTitle": "cmdAdmin",// 以管理员身份打开新标签, 需要安装如下模块// PowerShell -Command "Set-ExecutionPolicy RemoteSigned -scope Process; iwr -useb /gerardog/gsudo/master/installgsudo.ps1 | iex""commandline": "gsudo.exe cmd.exe","icon" : "ms-appx:///ProfileIcons/{0caa0dad-35be-5f56-a8ff-afceeeaa6101}.png",// 是否隐藏"hidden": false},{"guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44c0}","name": "PowerShellAdmin","tabTitle": "PowerShellAdmin",// 以管理员身份打开新标签, 需要安装如下模块// PowerShell -Command "Set-ExecutionPolicy RemoteSigned -scope Process; iwr -useb /gerardog/gsudo/master/installgsudo.ps1 | iex""commandline": "gsudo.exe powershell.exe","icon" : "ms-appx:///ProfileIcons/{61c54bbd-c2c6-5271-96e7-009a87ff44bf}.png",// 是否隐藏"hidden": false},{"guid": "{b453ae62-4e3d-5e58-b989-0a998ec441b8}","name": "Azure Cloud Shell","source": "Windows.Terminal.Azure","hidden": true}],// 添加自定义主题配色"schemes": [{"name": "Night Owlish Light","background": "#FFFFFF","black": "#011627","blue": "#4876D6","brightBlack": "#7A8181","brightBlue": "#5CA7E4","brightCyan": "#00C990","brightGreen": "#49D0C5","brightPurple": "#697098","brightRed": "#F76E6E","brightWhite": "#989FB1","brightYellow": "#DAC26B","cyan": "#08916A","foreground": "#403F53","green": "#2AA298","purple": "#403F53","red": "#D3423E","white": "#7A8181","yellow": "#DAAA01"}]},// 设置快捷键, 文档地址 https://aka.ms/terminal-keybindings"keybindings": [// 打开命令面板{"command": "commandPalette","keys": "ctrl+shift+p"},// 打开图形配置界面{"command": {"action": "openSettings","target": "settingsUI"},"keys": "ctrl+shift+,"}]}

三.右键菜单

1.添加右键菜单

复制下面的代码另存为add.js文件,双击执行即可在右键菜单添加菜单

1.1 使用安装中第 1 和 2.1 两种方法安装的

注意修改下面代码中用户名为自己电脑的用户名

var WshShell = new ActiveXObject("WScript.Shell");WshShell.RegWrite("HKCU\\Software\\Classes\\Directory\\Background\\shell\\wt_here\\", "Windows Terminal", "REG_SZ");WshShell.RegWrite("HKCU\\Software\\Classes\\Directory\\Background\\shell\\wt_here\\command\\", "C:\\Users\\用户名\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe", "REG_SZ");

1.2 使用安装中 2.2 方法安装的

注意修改下面代码中自定义存放路径为自己存放解压文件夹,注意转义,即双反斜杠\\作为路径分隔符

var WshShell = new ActiveXObject("WScript.Shell");WshShell.RegWrite("HKCU\\Software\\Classes\\Directory\\Background\\shell\\wt_here\\", "Windows Terminal", "REG_SZ");WshShell.RegWrite("HKCU\\Software\\Classes\\Directory\\Background\\shell\\wt_here\\command\\", "自定义存放路径\\wt.exe", "REG_SZ");

2.删除右键菜单

复制下面代码另存为remove.js,双击执行即可移除右键菜单

var WshShell = new ActiveXObject("WScript.Shell");WshShell.RegDelete("HKCU\\Software\\Classes\\Directory\\Background\\shell\\wt_here\\command\\");WshShell.RegDelete("HKCU\\Software\\Classes\\Directory\\Background\\shell\\wt_here\\");

四.使用管理员身份打开

1.使用第三方软件 gsudo

gsudo 是一个开源软件,类似LinuxMac OS中的sudo命令

该方式可以自由选择打开一个有管理员权限或没有管理员权限的shell标签

复制下面的代码在power shell中运行

PowerShell -Command "Set-ExecutionPolicy RemoteSigned -scope Process; iwr -useb /gerardog/gsudo/master/installgsudo.ps1 | iex"

执行完毕后添加环境变量,然后就可以以类似LinuxMac OS中的sudo命令的方式进行提权,配合配置文件中的source即可在Windows Terminal中直接打开新的管理员身份的shell标签

// 以管理员身份打开cmdgsudo cmd.exe

2.直接以管理员权限打开Windows Terminal

该方法是直接添加一个新的右键菜单,通过此菜单打开的Terminal只能以管理员身份运行,不如gsudo灵活

复制以下代码另存为addAdmin.js,双击运行即可,注意将用户名修改为自己的用户名

var WshShell = new ActiveXObject("WScript.Shell");WshShell.RegWrite("HKCU\\Software\\Classes\\Directory\\Background\\shell\\runas\\", "Windows Terminal Admin", "REG_SZ");WshShell.RegWrite("HKCU\\Software\\Classes\\Directory\\Background\\shell\\runas\\command\\", "cmd.exe /k \"C:\\Users\\用户名\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe&&exit\"", "REG_SZ");

五.powershell设置主题

官方文档

安装微软开源的 Powerline 字体 Cascadia Code PL

在powershell中执行以下命令安装Posh-Gitoh-my-posh

若提示不允许执行则开启开发者选项

如果尚未安装 NuGet,PowerShell 命令行会询问是否要安装 NuGet。 选择 [Y]“是”。 可能还需要批准从不受信任的存储库 PSGallery 中安装模块。 选择 [Y]“是”。

Install-Module posh-git -Scope CurrentUserInstall-Module oh-my-posh -Scope CurrentUser

如果使用的是PowerShell Core版本,还需要安装

Install-Module -Name PSReadLine -Scope CurrentUser -Force -SkipPublisherCheck

安装完成后在powershell中输入notepad $PROFILE命令,在打开的文件中填写如下代码

oh-my-posh支持的主题

Import-Module posh-gitImport-Module oh-my-poshSet-PoshPrompt Paradox

注意 新版本的oh-my-posh已经将Set-Theme命令替换为Set-PoshPrompt

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。