本文基于Windows 11 Professional 22H2,低于这个版本的Windows可能需要对Terminal进行额外的更新操作
前言
在用Helix的时候,突然感觉Windows的终端看起来有点emm..所以就想改变一下外观
On My Posh是一款全平台终端提示符个性化工具,简要地讲,它可以让你的终端(那个黑框框,或者蓝框框)变得稍微好看一点
配置
下载与安装
(建议使用网络工具进行以下操作)
方法一:使用winget
进行安装
Windows一直缺乏一个完善的官方包管理系统,微软商店也因为一些众所周知的原因不是很好用,不过2020年微软推出了winget
,也算是填补了这一点
使用Power Shell 运行以下命令安装Oh My Posh
1
2winget install JanDeDobbeleer.OhMyPosh -s winget
方法二:进入微软商店搜索On My Posh进行下载
然后下载作者推荐的MesloLGM NF字体,下载后解压,全选右键点击安装即可自动安装
进行配置
在Terminal中按ctrl + ,
打开配置文件,点击左下角打开JSON文件,找到profiles-defaults
,修改为如下代码:
1
2"defaults": {
3
4 "colorScheme": "Campbell", //颜色方案
5
6 "font": {
7
8 "face": "MesloLGM NF" //字体
9
10 },
11
12 "opacity": 100 //不透明度
13
14 },
新建Terminal,输入notepad $profile
使用笔记本打开配置文件,输入以下配置信息,并保存
1
2 [System.Console]::OutputEncoding=[System.Text.Encoding]::GetEncoding(65001) # 配置默认编码
3
4 oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\material.omp.json" | Invoke-Expression # 配置oh-my-posh的theme
完成后新建Terminal即可看到焕然一新的终端
修改主题
在On My Posh官网查看主题介绍,找到自己喜欢的主题yyy
输入notepad $profile
使用笔记本打开配置文件,将xxx.omp.json
替换为yyy.omp.json
,打开一个新终端即可看到新主题
可能遇到的问题
配置VSCode中的终端
进入VSCode,按下ctrl + ,
打开设置
找到Features > Terminal › Integrated › Default Profile: Windows
设置,设置为Power Shell
重启VSCode后新建终端查看效果
无法显示conda环境
这个问题是因为主题文件中segments
中type
为python
部分没有配置或默认配置为false
手动修改为自己喜欢的样式即可,可参考这个帖子,评论区也给出了相关的官方文档
可参考:
1
2{
3
4 "type": "python",
5
6 "style": "plain",
7
8 "foreground": "#98C379",
9
10 "properties": {
11
12 "display_virtual_env": true,
13
14 "dispplay_default": true,
15
16 "display_version": false,
17
18 "prefix": "\uE235 ",
19
20 "postfix": " ",
21
22 "display_mode": "always"
23
24 }
25
26}
或:
1
2{
3
4 "foreground": "yellow",
5
6 "properties": {
7
8 "fetch_version": true,
9
10 "fetch_virtual_env": true,
11
12 "display_mode": "files",
13
14 "home_enabled": true,
15
16 "display_default": true
17
18 },
19
20 "style": "plain",
21
22 "template": "[\ue235 {{ if .Error }}{{ .Error }}{{ else }}{{ if .Venv }}{{ .Venv }}{{ end }}{{ .Full }}{{ end }}]",
23
24 "type": "python"
25
26 }
总结
On My Posh可自定义范围非常广,如果你有时间,完全可以将终端设置成自己想要的样子,但一般情况下主题也就够用了