Windows Terminal 美化
Windows下有cmd
和powershell
两种命令行工具,但是系统自带的工具实在是太丑了。微软后来推出了Windows Terminal,直接让命令行工具颜值上了几个档次,再配上一些其他工具可以让你的Windows命令行也不输Linux的体验。
效果图
添加到右键菜单
右键菜单打开当前目录是必须要有的,不然每次打开终端再cd
实在太蠢。可以参考Windows管理右键菜单
在注册表HKEY_CLASSES_ROOT\Directory\Background\shell
下新建项wt
(名字随意)。
默认值改为"Open with Windows Terminal"(按自己喜好来)
添加字符串值Icon
,值为图标的路径。(图标下载,wt_32.ico 为Windows Terminal图标)
在wt
下添加子项command
,默认值为 ** "Windows Terminal 路径" **
Windows Terminal程序一般在C:\Users\用户名\AppData\Local\Microsoft\WindowsApps
下的wt.exe
或wtd.exe
最后打开Windows Terminal的设置,找到powershell
的profiles
,将其startingDirectory
改为"."
找个地方右键打开尝试下吧
主动打开初始目录到用户目录下
当我们把startingDirectory
改为"."后,不使用右键打开而直接启动Windows Terminal的话会定位在C:\WINDOWS\system32
下,这其实很不舒服,但是也有办法让其在主动打开时定位在用户目录下。
打开C:\Users\用户名\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
,没有该文件则手动创建。该文件是用户的powershell
配置文件,在每次启动powershell
的时候都会执行里面的命令。
在文件中写入下面命令,命令的意思是如果启动时的目录在C:\WINDOWS\system32
,那就切换到用户目录下。
$l = Get-Location
if ($l.Path -eq "C:\WINDOWS\system32") {
Set-Location "~"
}
安装oh-my-posh
安装所需工具
Install-Module posh-git -Scope CurrentUser
Install-Module oh-my-posh -Scope CurrentUser
如果遇到安装不被允许,用管理员身份打开powershell
或Windows Terminal,执行Set-ExecutionPolicy Bypass
再次打开C:\Users\用户名\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
,在文件中加入
# posh-git 我使用的离线安装,正常Install-Module安装的话 Import-Module posh-git 即可
Import-Module 'C:\Users\SakuraDon\Documents\WindowsPowerShell\Modules\posh-git\src\posh-git.psd1'
Import-Module oh-my-posh
# 设置主题
Set-Theme Paradox
这里我是直接从git上clone的源码包后导入,因为我直接Install-Module安装的posh-git打开powershell时会有延迟,而离线安装的没有,原因不明
自定义主题
自带有几个主题,git官网也有预览。
主题文件在C:\Users\用户名\Documents\WindowsPowerShell\Modules\oh-my-posh\2.0.332\Themes
下。
要自定义主题的话,先创建文件夹C:\Users\用户名\Documents\WindowsPowerShell\PoshThemes
,然后在里面创建自己的主题文件。
简单的DIY的话,就是从官方主题里挑一个喜欢的布局的主题,然后复制到自定义主题目录,在主题文件最后修改颜色或是一些字符即可。
例如我的主题就是官方的Paradox
主题改了下颜色而已。
如果箭头出现如下乱码,则是当前字体不支持,还是在powershell
的profiles
中修改字体即可。使用powerline fonts的话基本没问题,我用的是Delugia Nerd Font。
Or you can contact me by Email