Featured image of post Windows 终端美化指北

Windows 终端美化指北

尝试美化Terminal界面😤

上次出的美化教程已经4年了,这期间各个软件都有了不同程度的变化,因此更新一下教程,总体而言比以前简单挺多的,也作为自己的备忘录。

前置软件安装

  • 安装Terminal。最新Windows系统已经自带,替换了PowerShell。右键单击开始菜单即可找到。若没有,可以在Microsoft Store搜索Windows Terminal安装,或者在github release中下载安装;

  • 安装Winget,Windows包管理器,可以在PowerShell中使用命令行安装所需软件。最新Windows系统已经自带了Winget,如没有可以在Microsoft Store搜索应用安装程序进行安装,或者在github release中下载安装。注意命令行安装时要用下述命令配置好代理,或者使用WingetUI,一个第三方软件,给Winget提供了一个UI,推荐;

    1
    
    $Env:http_proxy="http://127.0.0.1:7890";$Env:https_proxy="http://127.0.0.1:7890"
    

    WingetUI

  • 右键windows徽标,打开终端(管理员),输入一下命令更改执行策略为RemoteSigned

    1
    
    Set-ExecutionPolicy RemoteSigned
    

    设置策略

  • 安装[Oh My Posh](Home | Oh My Posh)。这就是今天的主角了,类似于linux终端上的Oh My Zsh,Oh My Posh可以帮助我们美化Powershell,实现头图的效果。同样的,你可以直接在Microsoft Store找到它,也可以使用Winget或WingetUI安装,命令如下

    1
    
    winget install JanDeDobbeleer.OhMyPosh -s winget
    
  • 安装Nerd Fonts,可以选择自己喜欢的安装。该字体包含我们需要的图标符号等资源,普通字体无法显示。

  • (可选)安装VS Code,或者你觉得好用的文本编辑器,用来编辑json配置文件。可以去官网也可以直接用Winget命令行安装,打开终端输入代码即可,或者用WingetUI搜索安装;

    1
    
    winget install Microsoft.VisualStudioCode -s winget
    
  • (可选)安装PowerShell 7。Windows自带的PowerShell版本较老,但也不是不能用。同样可以使用Winget或者WingetUI安装;

    1
    
    winget install Microsoft.PowerShell -s winget
    

配置终端

启用Oh My Posh

此处参考作者给出的教程,仅做基础配置,深入了解可参考原文。

  • 创建并编辑配置文件。

    1
    2
    
    if (!(Test-Path -Path $PROFILE )) { New-Item -Type File -Path $PROFILE -Force }
    notepad $PROFILE
    
  • 在打开的配置文件中粘贴以下内容,启用Oh My Posh的默认主题,保存退出

    1
    
    oh-my-posh init pwsh | Invoke-Expression
    
  • 重新打开终端,可见powershell窗口,可以看到如下乱码效果,这是因为没有使用NF字体,导致无法加载图标

    字体字体

美化终端

  • 在终端-设置-PowerShell-外观中更改字体为安装的Nerd Fonts并保存,可见图标加载出来了。

    设置字体

    字体正常

  • 同样在外观中,修改背景不透明透明度,启用亚克力材质

    设置透明度

  • 修改配色。采用iTerm2-Color-Schemes。这是一个适配了多个终端的配色方案,包括zsh、powershell、windows terminal以及vscode等等等等。

    • 打开github仓库,找到windowsterminal文件夹,里面有许多配色方案的json文件,选中喜欢的将其内容复制下来,个人比较喜欢OneHalfDark配色,代码如下:

       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      
      {
        "name": "OneHalfDark",
        "black": "#282c34",
        "red": "#e06c75",
        "green": "#98c379",
        "yellow": "#e5c07b",
        "blue": "#61afef",
        "purple": "#c678dd",
        "cyan": "#56b6c2",
        "white": "#dcdfe4",
        "brightBlack": "#282c34",
        "brightRed": "#e06c75",
        "brightGreen": "#98c379",
        "brightYellow": "#e5c07b",
        "brightBlue": "#61afef",
        "brightPurple": "#c678dd",
        "brightCyan": "#56b6c2",
        "brightWhite": "#dcdfe4",
        "background": "#282c34",
        "foreground": "#dcdfe4",
        "cursorColor": "#a3b3cc",
        "selectionBackground": "#474e5d"
      }
      
    • 在Terminal设置左下角打开json文件,在打开的json文件中的schemes项下,粘贴刚才复制的配色方案,注意不要漏掉结尾的英文逗号,然后保存退出

      添加配色方案

    • 在外观中选择刚才设置的配色方案,保存,此时即可看到头图上最终的效果。

细节调整

启用PowerShell 7

在安装7之后,终端中会自动出现相关的标签页,按照上述方案设置即可

自定义图标

在设置中可以自定义图标,下载图标后启用即可,这里放一些头图里出现的图标

powershellrun-commandserver

ubuntuunraidgpu

使用管理员Powershell

可以复制一个已有配置,然后在设置中选择以管理员身份运行,也可以使用gsuso,但是我发现管理员用的不多,因此有需要可以自行配置。

添加SSH

Terminal支持自定义启动命令,因此我们可以添加ssh连接,一键ssh服务器。

SSH

VSCode内PowerShell美化

打开VSCode,我们会发现其内的PowerShell还是很丑。这部分专门讲一下其美化,不用VSCode开发的可以跳过。

  • 字体。在vscode里打开设置,搜索font。

    editor.fontFamily里添加Nerd Font字体,将terminal.integrated.fontFamily改为之前下载的字体即可,注意字体名称可以从终端设置中获取。

    VSCode字体

  • 主题&配色。打开vscode的扩展商店,搜索你喜欢的配色主题。这里推荐Atom One LightAtom One Dark以及One Half Dark主题。

    在设置里搜索theme,我的设置如下:

    VSCode主题

    搜索window.autoDetectColorScheme,勾选。这样就可以根据Windows主题自动切换VSCode主题。

    自动切换主题

Windows自动切换深色模式

上面的Terminal和VSCode我都设置了主题跟随系统,怎么能不设置系统自动切换呢?

使用软件Auto Night Mode即可实现自动切换,还可更换壁纸。同样的可以在Winget中安装。

1
winget install Armin2208.WindowsAutoNightMode -s winget

自动切换深色模式

Licensed under CC BY-NC-SA 4.0