原来的 Windows 10,可以通过下载更纱黑体,然后在『powershell --> 属性 --> 字体』,里面修改为新安装的字体(参考:告别 Windows 终端的难看难用,从改造 PowerShell 的外观开始)从而改变终端的外观。但是最近的新版 Windows 10 似乎把终端里面设置字体的功能阉割了,即便安装了新字体也找不到,无法更换字体。😅😥😓
使用 Windows Terminal
基本的配置
官方教程:https://github.com/microsoft/terminal/tree/master/doc/user-docs
参考 Windows Terminal 的默认配置文件和文章:新生代 Windows 终端:Windows Terminal 的全面自定义,对 settings.json
修改
"backgroundImage": "ms-appdata:///roaming/goose.png" // 设置背景图片/GIF,需要将资源放在C:\Users\<用户名>AppData\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\RoamingState下
"backgroundImageStretchMode": "uniformToFill" // 图片填充模式
"backgroundImageOpacity": 1 // 图片透明度
"acrylicOpacity": 0 // 背景透明度,需要开启设置使用亚克力 "useAcrylic": true
安装 oh-my-posh
官方教程:https://github.com/JanDeDobbeleer/oh-my-posh
参考:5 个 PowerShell 主题,让你的 Windows 终端更好看
整理如下:
# 为当前用户安装posh-git和oh-my-posh
Install-Module posh-git -Scope CurrentUser
Install-Module oh-my-posh -Scope CurrentUser
# 生成PowerShell的配置文件,一般来说,PowerShell的用户配置文件在 C:\Users\<用户名>\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
if (!(Test-Path -Path $PROFILE )) { New-Item -Type File -Path $PROFILE -Force }
notepad $PROFILE
配置文件内容:
Import-Module posh-git
Import-Module oh-my-posh
Set-Theme Paradox
安装并修改字体
由于 oh-my-posh 中的主题用到了 powerline 的功能,如果没有安装正确的字体,就会导致 powerline bar 的显示存在乱码现象。
安装
使用 Nerd Fonts https://github.com/ryanoasis/nerd-fonts 字体库里面的字体(Powerline Fonts https://github.com/powerline/fonts 字体库里面的字体估计也行,还没试过)。Windows Terminal 默认的字体为 Cascadia Code,在 Nerd Fonts 仓库找到了 Cascadia Code 的打补丁字体 Caskaydia Cove Nerd Font*,下载并安装 Caskaydia Cove Regular Nerd Font Complete Windows Compatible.ttf
Windows 字体相关知识
- 用户安装的字体都存放在
C:\Users\<用户名>\AppData\Local\Microsoft\Windows\Fonts
目录下,为所有用户安装的字体存放在C:\Windows\fonts
目录下 - 字体管理,在『设置 --> 个性化 --> 字体』中可以搜索并卸载字体,等同于在
C:\Windows\fonts
目录下搜索并删除字体 - 注意:在
C:\Users\<用户名>\AppData\Local\Microsoft\Windows\Fonts
目录下删除安装的字体会报错,因为C:\Windows\fonts
目录下存有C:\Users\<用户名>\AppData\Local\Microsoft\Windows\Fonts
中的字体引用,所以删除/卸载字体,应去C:\Windows\fonts
目录下执行
配置终端字体
在 Windows Terminal 的 settings.json
中增加刚刚安装的字体
"fontFace": "CaskaydiaCove NF"
注意:字体名字务必写正确,获取方法为安装字体时显示的『字体名称:XXX...』,或者在『设置 --> 个性化 --> 字体 』中蓝色显示的 XXX... 字体名
终端配色
可以使用 colortool https://github.com/microsoft/terminal/tree/master/src/tools/ColorTool 这个工具显示和应用不同的配色方案,并且支持 iTerm themes。
colortool -s # 显示所有的配色主题
colortool campbell.ini # 显示campbell的主题样式,需要在『powershell --> 属性 --> 颜色 --> 确认』后才会保存该主题
campbell.ini 的文件内容正好对应了如下『powershell --> 属性 --> 颜色』中的这些颜色的 RGB 值
批注 2020-04-26 175813.png针对 Windows Terminal,可以使用 iTerm2 Color Scheme 项目中的 Windows Terminal 主题,地址:https://github.com/mbadolato/iTerm2-Color-Schemes/tree/master/windowsterminal。均为独立的 JSON 文件,挑选好想要添加的主题之后,点击打开对应的主题文件,复制整个 JSON 文件的内容,并粘贴到 Windows Terminal 的配置文件的
schemes
主题文件列表之中,即可使用这一色彩主题
配色效果检查
参考:Windows Terminal 的安装/配置修改|ω•`
在 PowerShell 中,使用
Write-Host
输出时可以通过ForegroundColor
和BackgroundColor
两个属性指定输出的前景色/背景色,这两个属性的数据类型就是System.ConsoleColor
查看当前配色
for ($i = 0; $i -le 15; $i++) {Write-Host ([System.ConsoleColor]$i) -BackgroundColor $i -NoNewLine}
网友评论