一、 oh my posh 安装

安装方式1:

打开 PowerShell 提示符并运行以下命令:

1
Set-ExecutionPolicy Bypass -Scope Process -Force; Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://ohmyposh.dev/install.ps1'))

可能会失败,请看安装方式2

如果下载慢,使用代理:

1
2
set http_proxy=socks5://127.0.0.1:7890 
set https_proxy=socks5://127.0.0.1:7890

手动加入环境变量(可不加):

注意我的用户名是:Administrator

1
$env:Path += ";C:\Users\Administrator\AppData\Local\Programs\oh-my-posh\bin"

安装方式2:

打开 PowerShell 提示符并运行以下命令:

1
winget install JanDeDobbeleer.OhMyPosh -s winget

但是首先为 winget 更换国内源,为了提高响应速度,以下是操作步骤:

1以管理员身份打开「命令提示符」。

2执行以下命令,删除由 Microsoft 维护的官方源:

winget source remove winget

3执行以下命令添加 winget 国内源:

winget source add [源名称] [源地址]

例如,若要添加中科大开源软件镜像源,可执行以下命令:

winget source add winget https://mirrors.ustc.edu.cn/winget-source

建议就使用winget作为名称,以便在需要时轻松重置回官方源。

4换源完成后,可以通过以下命令进行验证和查看:

winget source list

5如果要恢复使用 Microsoft 官方源,可以使用以下命令进行重置:

winget source reset winget

源删除:

winget source remove msstore

6安装oh my posh:

1
winget install JanDeDobbeleer.OhMyPosh -s winget

二、创建配置文件

配置文件路径: C:\Users\Administrator\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

1
notepad $PROFILE

若提示错误:请继续以下代码

1
New-Item -Path $PROFILE -Type File -Force

然后添加以下代码到Microsoft.PowerShell_profile.ps1

1
oh-my-posh init pwsh --config $env:POSH_THEMES_PATH\montys.omp.json | Invoke-Expression

重新加载以使更改生效:

1
. $PROFILE

解决“无法加载文件

解决“无法加载文件 ***\WindowsPowerShell\profile.ps1,因为在此系统上禁止运行脚本”

1
set-executionpolicy remotesigned

自定义主题

主题目录:C:\Users\Administrator\AppData\Local\Programs\oh-my-posh\themes

1
notepad $PROFILE

改成:

1
2
oh-my-posh init pwsh --config $env:POSH_THEMES_PATH\montys.omp.json | Invoke-Expression
cls

只需要修改montys.omp.json,是主题配置文件

主题预览:

1
get-Poshthemes

https://ohmyposh.dev/docs/themes

三、美化

1:字体下载

https://github.com/ryanoasis/nerd-fonts/releases

https://www.123pan.com/s/cjqrVv-J159d.html

下载:JetBrainsMono.tar.xz 字体 (这款字体能解决乱码

解压JetBrainsMono.tar.xz,全选-右键安装即可

打开powershell, 按 CTRL + SHIFT + , 打开settings.json文件,

defaults字段改成如下:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
           "defaults":

        {
            "useAcrylic": true,
            "acrylicOpacity": 0.7,
            "backgroundImage": "D:/bg/789.jpg",
            "backgroundImageOpacity": 0.4,
            "fontFace": "JetBrainsMono Nerd Font Mono",
            "fontSize": 12
        },

或者:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
        "defaults":

        {
            "backgroundImage": "D:/bg/789.jpg",
            "backgroundImageOpacity": 0.4,
            "font":
            
            {
                "face": "JetBrainsMono Nerd Font Mono",
                "size": 12.0
            },
            
            "opacity": 100,
            "useAcrylic": true

        },

acrylicOpacity: 表示亚克力效果的不透明度 值范围在 0(完全透明)到 1(完全不透明)之间

backgroundImageOpacity: 表示背景图片的不透明度。值范围在 0(完全透明)到 1(完全不透明)之间

backgroundImage: 表示背景图片的路径

JetBrainsMono Nerd Font Mono 字体

乱码问题

打开 控制面板—>时钟和区域—>区域->管理—>更改系统区域设置

勾选:使用 Unicode UTF-8 提供全球语音支持

点击确定,这个时候电脑提示需要重启,重启后再打开 powershell 就可以正常显示中文啦。