用Mac的时候,oh-my-zsh是个好东西,他可以让你的终端变得很漂亮,同时又有一些提高生产力的功能,比如历史命令的提示补全,那么,Powershell有没有呢?有的,本文将会一步一步将Powershell配置成一个好看又好用的生产力工具。

本文使用Powershell 7和Windows Terminal进行演示,windows自带的powershell同理。哦对了,以下配置的前提是你已经安装了Git。

废话不多说,先上图看看效果:

怎么说,是不是有Mac上oh-my-zsh内味了

安装相应模块

在Powershell中依次输入以下命令:

Install-Module PowerShellGet -Scope CurrentUser -Force -AllowClobber
PowerShellGet\Install-Module posh-git -Scope CurrentUser -AllowPrerelease -Force
Install-Module oh-my-posh -Scope CurrentUser
Install-Module -Name PSReadLine -AllowPrerelease -Scope CurrentUser -Force -SkipPublisherCheck

期间如果遇到这样的提示,输入A,回车

修改配置文件

输入以下命令,使用记事本将内容保存到配置文件中

notepad $profile

如果没有配置文件,会提示时候创建,选择是即可

配置如下:

chcp 65001

Import-Module posh-git
Import-Module oh-my-posh
Import-Module PSReadLine


# theming configuration
Set-PoshPrompt agnoster

# Enable Prediction History
Set-PSReadLineOption -PredictionSource History
# Advanced Autocompletion for arrow keys
Set-PSReadlineKeyHandler -Key UpArrow -Function HistorySearchBackward
Set-PSReadlineKeyHandler -Key DownArrow -Function HistorySearchForward

保存后,重新打开Powershell,初次启动,他会进行初始化,耐心等待片刻即可

完成后,如不出意外,你将会看到如下情况,没错,乱码了:

这是因为你没有安装支持powerline的字体,微软的Cascadia Code PL字体是支持powerline的,但是支持不够全面,部分图标还是显示不全,因此需要安装支持powerline的字体

安装字体

https://github.com/ryanoasis/nerd-fonts选择并下载你喜欢的字体

这里我使用的是Caskaydia Cove Nerd Font,也就是Cascadia Code添加相关图标之后的字体,你可以根据自己的喜好选择相应的字体

下载地址:https://github.com/ryanoasis/nerd-fonts/releases/download/v2.1.0/CascadiaCode.zip

安装字体的过程,我就默认你会了,下载之后自行安装字体

设置Windows Terminal字体

在Windows Terminal的设置中,选择配置文件 -> 默认值 -> 外观 -> 文本 -> 字体

选择你安装的字体,保存

回到Powershell窗口,发现原本乱码的命令行变成了正常的样子:

设置主题

设置主题首先是查看有哪些主题,在Powershell中输入如下命令:

Get-PoshThemes

你将会看到所有可用的主题及其预览效果:

选择一个你喜欢的主题,这里用 markbull为例(我不喜欢,举个例子),打开配置文件

notepad $profile

修改 Set-PoshPrompt agnoster为你需要的主题,比如 Set-PoshPrompt markbull

保存

重新打开一个Powershell窗口,搞定

其他一些关于Windows Terminal的设置可以自己自行摸索,本文不多赘述

大功告成

最后修改:2022 年 04 月 17 日
如果觉得我的文章对你有用,请随意赞赏