还在用默认的主题?通过 Oh my push 美化你的 Powershell

安装 Windows Terminal

这是一个微软出品的终端,如果你的操作系统是Windows 11,那么它已经被集成在了系统中。

您也可以使用其它终端,请按照对应的使用方法修改字体和启动的 Shell。

前往 Windows Terminal 页面下载安装,或者可以直接在 Microsoft Store 搜索 Windows Terminal 进行安装。

安装完成后可在任意页面右键打开终端。

安装 Power Shell 7

Windows 10 / 11 系统自带的是 PowerShell 5。如果你还没有 PowerShell 7,点我下载

在终端设置中,将 Power Shell 7 设为默认,并且将管理员权限打开。

如果不想将 Power Shell 7 设置默认,也可以在新建窗口时按住Ctrl键,就会以管理员权限新建窗口。

安装 Oh My Posh

Oh My Posh 是一个命令行提示工具,通常用于美化和自定义终端提示符。它允许用户创建自定义的终端提示符,包括颜色、图标、文本样式等,以提高终端的可视化吸引力和功能性。

安装 Oh My Posh。

复制代码
winget install JanDeDobbeleer.OhMyPosh

将 Oh My Posh 添加到环境变量中。

ruby 复制代码
$env:Path += ";C:\Users\user\AppData\Local\Programs\oh-my-posh\bin"

配置 Oh My Posh

打开 Power Shell 7 终端,执行下面的命令创建配置文件。

arduino 复制代码
New-Item -Path $PROFILE -Type File -Force

然后执行下面的命令打开文本编辑。

bash 复制代码
notepad $Profile

将以下内容输入到文件中。

kotlin 复制代码
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH/uew.omp.json" | Invoke-Expression

新建一个 Power Shell 7 终端查看效果。

Nerd 字体

配置好主题后,可以看到 Oh My Posh 的配置已经生效了,但是会有乱码的情况出现。乱码是因为当前 Windows Terminal 使用的字体不是 Nerd Fonts 字体(见官方文档),因此我们需要下载一份 Nerd Fonts 字体并配置为 Windows Terminal 使用的字体。

这里下载名为 CaskaydiaCove Nerd Font 的字体并进行安装。

安装完成后,重启 Windows Terminal,进入设置界面,选择 Power Shell 7 的外观选项修改字体。

重新启动 Windows Terminal 发现已经正常。

修改主题

如果想要修改主题,可以运行如下命令查看可用主题效果。

sql 复制代码
Get-PoshThemes

效果如下:

然后运行 notepad $Profile 命令打开配置文件,将 uew 修改为你选择的主题名称,如选择了 velvet,则完整内容如下:

kotlin 复制代码
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH/velvet.omp.json" | Invoke-Expression

也可以通过官方文档中的主题示例进行选择。

其他关于 Windows Terminal 的外观修改可以直接从设置中进行修改,如毛玻璃等效果。

为 VS Code 配置默认终端

如果想要将 VS Code 的默认终端设置为 Power Shell 7,打开设置,进入 settings.json,将如下配置复制到您的配置文件中。重启 VS Code 后生效。

json 复制代码
{
  "terminal.integrated.profiles.windows": {
    "PowerShell 7": {
      "path": "C:\Program Files\PowerShell\7\pwsh.exe"
    }
  },
  "terminal.integrated.defaultProfile.windows": "PowerShell 7"
}

如果你的 Power Shell 7 安装路径不是上面的路径,则需要手动修改为您的路径。

相关推荐
hello930712 小时前
homebrew常用操作
命令行
柒号华仔2 天前
「速通Shell」Shell 脚本测试详解
shell
柒号华仔3 天前
「速通Shell」Shell 脚本模块化
shell
柒号华仔4 天前
「速通Shell」Shell编程的错误处理与日志
shell
Ratman4 天前
影刀RPA卸载残留篡改环境变量的排查
命令行
柒号华仔5 天前
「速通Shell」Shell 数组、关联数组与 mapfile
shell
苏灿烤鱼6 天前
一套进程代替八件套,桌面更稳还是单点更大
linux·github·shell
茶本无香7 天前
通用报表自动化框架:Java调用Shell传参执行PostgreSQL SQL模板
java·sql·postgresql·shell
深海鱼在掘金7 天前
深入浅出RAG——第7章:基础篇实战:文档问答机器人
人工智能·typescript·命令行
柒号华仔8 天前
「速通Shell」Shell 循环与遍历
shell·编程语言