WSL植入Window Terminal体验全新终端环境

4,612 阅读3分钟

记得刚看window Microsoft宣传片的时候看到能直接选出ubuntu、debian等wsl,印象深刻,安装之后才发现默认自带的只有cmd和powershell,其他的都得自己配置,这个配置过程大概是太简单了还是什么其他的原因,非常吃惊发布半年了,各大社区居然还没有中文教程

首先搞到window terminal,它现在已经可以在Microsoft store直接安装

window terminal
也可以在github下载最新的releases
Github
新的release底部都会有一个Assets,打开它,里面会有一个msixbundle安装包,下载安装即可
Assets

然后是WSL,也是可以在Microsoft store下载,以ubuntu为例:

ubuntu

两个程序界面如下

window terminal

ubuntu wsl

如何将ubuntu植入window terminal呢?在window terminal按下ctrl+,,或者在tab drop处选择Setting:

setting
此时window terminal会打开文件profiles.json,有可能遇到特殊情况,这个文件没有被自动打开,那就手动打开它,这个文件的目录默认是在

C:\Users\[用户名]\AppData\Local\Packages\Microsoft.WindowsTerminal_[一串random hex字符]\LocalState

这个json有3个主要的节点

微软文档说是4个,多列出了一个key binding,而实际上是三个,这个key binding节点到现在也没有被拆出来,保留在globals节点中

  • globals 基本的操作设置,快捷键设置,外观设置
  • profiles 选项卡中可以选择的终端列表
  • schemes 对应每一个profiles的主题皮肤

修改这个profiles.json文件来实现扩展(目前配置window terminal只有这一种方式),改之前最好backup一下,修改文件是动态生效的,改出问题了window terminal马上就会弹出错误, 如果没有backup,可以还原成默认配置github.com/microsoft/t…

想要使window terminal可以在选项卡中打开wsl,就要在Profiles节点新加入一个子项,完全可以copy其中一个,比喻说cmd.exe,它的属性是这样的:

{
    "acrylicOpacity" : 0.75,
    "closeOnExit" : true,
    "colorScheme" : "Campbell",
    "commandline" : "cmd.exe",
    "cursorColor" : "#FFFFFF",
    "cursorShape" : "bar",
    "fontFace" : "Consolas",
    "fontSize" : 10,
    "guid" : "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
    "historySize" : 9001,
    "icon" : "ms-appx:///ProfileIcons/{0caa0dad-35be-5f56-a8ff-afceeeaa6101}.png",
    "name" : "cmd",
    "padding" : "0, 0, 0, 0",
    "snapOnInput" : true,
    "startingDirectory" : "%USERPROFILE%",
    "useAcrylic" : true
}

copy下来只需要修改3个属性

  • commandline 启动的文件的位置或执行的命令,(wsl入口文件的位置)

  • guid 唯一标志符号,只需修改一下其中一两个字母,或者自己手动生成一个guid,只要符合guid规范,并不与其他item重复即可

    GUID的标准结构:docs.microsoft.com/zh-cn/windo…

  • icon 图标是支持ico,png等多种图片类型的,在目录中挑选合适的即可

如果不清楚wsl入口文件位置的可以在task manager中找:

task manager

ubuntu

icon就在Assets文件夹中,在里面随便挑一张即可,window terminal会自动调节尺寸的

注意:由于字符串特殊符号转义,commandline中的路径分隔符是\\,而不是\

成功后就可以在tab drop列表中选择打开他了

window terminal
window terminal

微软官方的文档在github.com/microsoft/t… ,但看上去还没写好的样子,不少内容是前天刚补充的