Powershell比起zsh并不是太好用,但经过恰当的配置,能够达到挨近nix体系 上终端的作用。
请保证你的操作体系至少是Windows 10,我并没有在更老的操作体系上测试过
终究作用
- 好看的UI,并且每一条指令前能提示git, node相关信息
- Tab 主动补全Git指令 和 途径
- 方向键 上下主动补全输入历史
Windows Terminal
这是一个微软出品的终端,假如你的操作体系是Windows 11,那么它现已被集成在了体系中。
您也能够运用其它终端,请依照对应的运用方法修正字体和启动的Shell。
前往 Windows Terminal – Microsoft Store 应用程序。 点击获取,会弹出
依照提示装置即可。 然后咱们翻开Windows terminal,它应该是这样的
装置字体
oh-my-posh有一些主题运用了Nerd font,咱们需求装置他们避免呈现乱码 进入Nerd Fonts – Iconic font aggregator, glyphs/icons collection, & fonts patcher。下载喜欢的字体。我这儿挑选了Caskaydia Cove Nerd Font。
装置的时候请挑选带Windows Compatible
后缀的字体。
接下来翻开咱们的Windows Terminal设置项 挑选左边配置文件下的默许值 进入外观选项,将字体改为你刚刚装置的Nerd Font字体
装置Powershell 7,并将它改为Windows terminal 默许Shell
Installing PowerShell on Windows – PowerShell | Microsoft Docs 依照这个页面的提示,装置Powershell 7。
winget install --id Microsoft.Powershell --source winget
接着翻开Windows Terminal的设置项
将启动tab下的默许配置文件改为PowerShell
(请注意,不是Windows Powershell
)
装置oh-my-posh,posh-git和Readline
请运转下列的指令
Install-Module -Name PowerShellGet -Force
winget install JanDeDobbeleer.OhMyPosh -s winget
PowerShellGet\Install-Module posh-git -Scope CurrentUser -Force
Install-Module PSReadLine
修正配置文件
接下来,咱们需求修正咱们Powershell的配置文件。
code $PROFILE
# 假如你没有装vscode,请运用下面的这条指令,将翻开记事本
notepad.exe $PROFILE
咱们在这个文件中加入下列内容
Set-PSReadLineKeyHandler -Key Tab -Function MenuComplete #Tab键会呈现主动补全菜单
Set-PSReadlineKeyHandler -Key UpArrow -Function HistorySearchBackward
Set-PSReadlineKeyHandler -Key DownArrow -Function HistorySearchForward
# 上下方向键箭头,查找历史中进行主动补全
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH/jandedobbeleer.omp.json" | Invoke-Expression
Import-Module posh-git # git的主动补全
接着咱们翻开一个新的Windows terminal窗口,成品应该是这样的
Q & A
为什么在VSCode/Webstorm编辑器的集成终端中呈现了乱码
请修正对应编辑器终端的字体为上面装置字体章节的字体
为什么我没有winget
指令
您的体系比较老旧,请参照运用 winget 工具装置和管理应用程序 | Microsoft Docs装置winget。
如何更换oh-my-posh的主题
请履行Get-PoshThemes
,它会展示所有的theme,之后修正$PROFILE
文件中的--config
参数,比如替换掉jandedobbeleer.omp.json
中的jandedobbeleer
为恣意主题