oh-my-posh 配置记录
oh-my-posh for Windows
配置流程
参考 [1]。Installation → Windows → manual,复制指令进终端:
1 | Set-ExecutionPolicy Bypass -Scope Process -Force; Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://ohmyposh.dev/install.ps1')) |
安装 oh-my-posh 并下载主题。
装好后会自动配置环境变量 POSH_THEMES_PATH
,是各种主题的 JSON 文件所在路径,以后可以通过 $env:POSH_THEMES_PATH
调用。
然后开始配置主题,首先查看 PowerShell 配置文件路径:
1 | # powershell profile script |
得到一个后缀为 .ps1 的文件路径。我们希望每次启动 PowerShell时,都可以加载 oh-my-posh 对页面进行美化。编辑该文件:
1 | # 如果提示路径不存在,手动创建一下即可 |
输入如下指令:
1 | # 第一条不加应该也可以。笔者删文件时不小心把 PSReadLine 也删了,后来还原的 |
保存后重启 PowerShell,已经初步看到美化效果,但 Icon 部分还是乱码。如果之前没有配置 Set-ExecutionPolicy
,会提示配置无法加载。
字体
从 Nerd Fonts 任选字体下载,解压后全选安装在系统字体库,路径为 C:\Windows\Fonts。然后修改 Windows Terminal 配置 (不是 PowerShell 的配置),在终端窗口设置里选中 PowerShell → 外观 → 字体,或直接修改外观配置文件,路径为
1 | %LOCALAPPDATA%\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json |
参考 [2],这个文件中我们主要关注如下结构:
1 | { |
找到 "defaults": {}
,手动添加 font 字段,配置后保存。这时终端能正常加载主题和字体了。
至此,oh-my-posh for PowerShell 配置完成。
背景
设置终端背景,同样在 defaults 下加入以下字段:
1 | "backgroundImage": "<imgpath>", |
oh my posh for Linux
参考 [3] 安装。因为我在一台 ARM 设备上安装,而 Homebrew 暂不支持 ARM64,故采用手动安装。
1 | # 注意把 posh-linux-arm64 换成当前设备的架构 |
下面是重新在 Linux 下安装了一遍主题库,这一步可以省略
1 | mkdir ~/.poshthemes |
配置 .bashrc 文件。在 .profile 里配置也是可行的。[4]
1 | eval "$(oh-my-posh init bash --config ~/.poshthemes/powerline.omp.json)" |
如果没有重装主题库,则路径改为
1 | /mnt/<Windows 下的主题路径>/powerline.omp.json |
字体设置同 Windows PowerShell。重启 Bash,成功看到美化效果。
黑夜来了,我驶进银河的港湾。