Windows Terminal 安装使用和美化教程

发布于 2022-05-14  77 次阅读


微软自带的 cmd 和 Powershell 用起来都不够舒服,而在2019年,微软终于推出了一款新的终端--Windows Terminal。

Windows Terminal 启动速度快,单个终端占用资源少,支持WSL(windows subsystem for linux), 命令提示符,Powershell等多种shell,支持个性化设置,还是免费开源的。

安装

打开电脑自带的Microsoft Store,搜索Windows Terminal并安装,注意不是Windows Terminal Preview

基本使用

点击下拉栏,可以从这里选择你要创建的shell

常用快捷键

改动仅在当前终端有效

  • Ctrl + Shift + D 创建一个新标签页
  • Alt + Shift + D 沿长边拆分窗口
  • Alt + Shift + - 水平拆分窗口
  • Alt + Shift + + 垂直拆分窗口
  • Alt + 方向键 切换活动窗格
  • Alt + Shift + 方向键 调整窗格大小
  • Ctrl + +或- 调整终端字体显 示大小

美化

安装插件

oh my posh 提供很多美观的主题,可以美化我们的命令行终端

使用管理员身份打开Windows Terminal,执行如下命令

#绕过power shell执行策略,使其可以执行脚本文件
Set-ExecutionPolicy Bypass

# 安装oh-my-posh主题
Install-Module oh-my-posh -Scope CurrentUser

# 安装posh-git主题,用于git提示
Install-Module posh-git -Scope CurrentUser

配置

生成并打开配置文件 if (!(Test-Path -Path $PROFILE )) { New-Item -Type File -Path $PROFILE -Force }

notepad $PROFILE

Import-Module posh-git
Import-Module oh-my-posh
Set-PoshPrompt -Theme 主题

可以通过执行 Get-PoshThemes 查看可选主题

修改好后保存并重启Windows Terminal

报错解决

此时可能与出现很多环境变量有关的错误,还会出现乱码

针对环境变量有关的报错,这是由于新版Windows Terminal不兼容导致的,使用下面的命令安装oh-my-posh.exe,并会自动配好环境变量

Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://ohmyposh.dev/install.ps1'))

notepad $PROFILE 打开配置文件,添加如下内容,可以自行选择主题

oh-my-posh init pwsh --config $env:POSH_THEMES_PATH\主题.omp.json | Invoke-Expression

安装字体

此时字体和图标还是乱码,这是因为oh-my-posh使用提供了一些Nerd字体,需要我们自行下载安装

# 下载字体仓库
git clone https://github.com/powerline/fonts.git --depth=1`
cd ./fonts
# 安装字体
./install.ps1

还可以从 这里 下载字体,解压后全选安装

按照下图在profile下default条目中添加 font 属性,直接保存即可,不用重启

调色方案

包括Campbell Campbell Powershell Vintage One Half Dark One Half Light Solarized Dark Solarized Light Tango Dark Tango Light 这几种预设方案
如果要在一个命令行配置文件中设置配色方案,需要在profiles下list条目对应Shell中添加 colorScheme 属性,并将配色方案的 name 作为值
"colorScheme": "COLOR SCHEME NAME"

背景图案

将下方配置信息加入到profiles 条目

将imgpath改成图片的路径,注意分隔符使用 \\/

"backgroundImage": "imgpath",
"backgroundImageAlignment": "center",
"backgroundImageOpacity": 0.3,
"backgroundImageStretchMode": "uniformToFill"

最终呈现的界面如下


我々は背負った罪によって道を選ぶのではなく、選んだ道で罪を背負うべきだからだ