打造精致的 Windows 终端
打造精致的 Windows 终端
前言
本文致力于 Windows Terminal + Oh my posh 打造精致的 Windows 终端。😐
Windows Terminal
Windows Terminal is a new, modern, feature-rich, productive terminal application for command-line users. It includes many of the features most frequently requested by the Windows command-line community including support for tabs, rich text, globalization, configurability, theming & styling, and more.
Windows Terminal 是一个新的,现代的,功能丰富的,高效的终端应用程序,适用于命令行用户。 它包含 Windows 命令行社区最常请求的许多功能,包括对选项卡,富文本,全球化,可配置性,主题和样式等的支持。
其实最开始我想用的是 Fluent Terminal ,当我完成一切却发现了 bug,当我在设置页面点击终端时就会卡死,没有找到相应解决方法。因此我也就从 Fluent Terminal 转到了 Windows Terminal
安装 Windows Terminal
- 你可以在 Microsoft Store 上搜索 Windows Terminal 进行安装。
- 或者在 GitHub 上下载最新版本
安装完成之后,鼠标右键出现 open in Windows Terminal
即安装成功。
配置 Windows Terminal
点击向下箭头进入设置页面,你可以按照如下方式增加配置文件,以 Git Bash 为例
优化配色
打开 Windows Terminal 的 设置
页面 -> 打开 JSON 文件
,在代码编辑器中打开并编辑(比如 VS Code),这个文件记录了 Windows Terminal 的配置,你可以按照你的喜好对其进行修改。
下面简单介绍一下,你可以在 Windows Terminal Themes 找到不同的 Windows Terminal 主题配置,选择你喜欢的主题样式,点击 Get Theme
进行复制。
在 JSON 文件中找到 schemes
将复制的代码粘贴进去即可,以 OneDark
为例(记得加逗号)。
1 | "schemes": |
保存并配置完成之后,你就可以在主题文件中找到它
修改字体
在安装完 Oh my posh 之后,换用某些主题会出现文字乱码的情况,因此需要修改字体。
你可以在 nerdfonts 中下载喜欢的字体文件。
如果你不想麻烦寻找字体,这里简单提供一个 字体文件,下载之后,为所有用户安装
即可。
安装完字体文件之后,再次打开上面的 JSON 文件,你可以在 profiles
-> list
中找到你之前添加的主题,添加字体信息即可。
1 | "colorScheme": "OneDark", |
Oh my posh
类似于 oh-my-zsh,oh-my-posh 为 PowerShell 提供了很多自定义主题和配色,你可以按照以下步骤安装 oh my posh。
管理员权限 powershell 运行
右键 win 徽标 Windows Powershell(管理员),并输入以下命令
1 | Set-ExecutionPolicy Bypass |
安装 oh my posh
打开 Windows Terminal
,依次运行
1 | Install-Module DirColors -Scope CurrentUser |
配置文件
安装完成之后输入$profile
,你可以看见配置文件的路径
1 | $profile |
在上述路径下修改配置文件 Microsoft.PowerShell_profile.ps1
,如果没有这个文件就新建一个。
比如我的 C:\Users\用户名\Documents\WindowsPowerShell\
,在这个文件夹下新建Microsoft.PowerShell_profile.ps1
,并写入如下代码:
1 | Import-Module posh-git |
你可以在 官方仓库 查看所有主题。
<主题名>
替换为你喜欢的主题名,你也可以在 Windows Terminal
输入 Set-PoshPrompt
来查看主题样式。
解决字体乱码
在配置某些主题之后,会出现文字乱码的情况,因此需要修改字体,详情见修改字体
最后提一句,如果你使用 VSCode,会发现终端变成了这个样子
主要还是字体的问题,在设置字体的地方加上我们刚才自定义的字体即可正常显示。
Pokemon
谁不想拥有一个 Pokemon 终端呢?
你可以在这里找到项目 Pokemon-Terminal: https://github.com/LazoCoder/Pokemon-Terminal
食用方法非常简单:
1 | pip install git+https://github.com/LazoCoder/Pokemon-Terminal.git |
效果如图: