前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在windows中使用Oh My Posh美化你的终端PowerShell或WSL

在windows中使用Oh My Posh美化你的终端PowerShell或WSL

作者头像
用户1418987
发布2024-01-20 10:52:08
5300
发布2024-01-20 10:52:08
举报
文章被收录于专栏:codercoder

在windows中使用Oh My Posh美化你的终端PowerShell或WSL

安装Windows terminal

Windows 终端是一个新式主机应用程序,它面向你喜爱的命令行 shell,如命令提示符、PowerShellbash(通过适用于 LinuxWindows子系统 (WSL))。 它的主要功能包括多个选项卡、窗格、UnicodeUTF-8 字符支持、GPU 加速文本呈现引擎,你还可用它来创建你自己的主题并自定义文本、颜色、背景和快捷方式。

安装 windows terminal 最简单的方法就是访问 Windows Terminal - Microsoft Apps 来安装!如下图:

在windows中使用Oh My Posh美化你的终端PowerShell或WSL_配置文件
在windows中使用Oh My Posh美化你的终端PowerShell或WSL_配置文件

安装完成,后我们就可以使用了。

可以在 Windows 终端中拉出选项卡并创建新窗口。

在windows中使用Oh My Posh美化你的终端PowerShell或WSL_Windows_02
在windows中使用Oh My Posh美化你的终端PowerShell或WSL_Windows_02

还可以将选项卡拖放到现有窗口中。

在windows中使用Oh My Posh美化你的终端PowerShell或WSL_Windows_03
在windows中使用Oh My Posh美化你的终端PowerShell或WSL_Windows_03

配置 Oh My Posh

我们同样可以在window中配置自己想要的终端样式,接着看下面的操作:

我们可以使用 Oh My Posh 自定义 PowerShell或适用于 LinuxWindows子系统 (WSL) 的命令提示符。 Oh My Posh 提供完全自定义的命令提示符体验的主题功能,提供 Git 状态颜色编码和提示符。如下图:

在windows中使用Oh My Posh美化你的终端PowerShell或WSL_Windows_04
在windows中使用Oh My Posh美化你的终端PowerShell或WSL_Windows_04

安装 Oh My Posh for PowerShell

如果要自定义 PowerShell 提示符,可使用 winget 安装 Oh My Posh。 在powershell终端中输入以下命令:

代码语言:javascript
复制
winget install JanDeDobbeleer.OhMyPosh

这将安装:

  • oh-my-posh.exe:Windows 可执行文件
  • themes:最新的主题

在安装的过程中我们会遇到同意条款的选项,并且可能会遇到多个包可用的情况。 在这种情况下,选择希望使用的包 ID 并重新输入命令:winget install <package ID> 如图所示:

在windows中使用Oh My Posh美化你的终端PowerShell或WSL_PowerShell_05
在windows中使用Oh My Posh美化你的终端PowerShell或WSL_PowerShell_05

输入 oh-my-posh version 以确认安装的 Oh My Posh版本号。 为确保拥有最新的更新,可以使用以下命令:winget upgrade oh-my-posh。如下图所示:

在windows中使用Oh My Posh美化你的终端PowerShell或WSL_配置文件_06
在windows中使用Oh My Posh美化你的终端PowerShell或WSL_配置文件_06

配置PowerShell 提示符主题

在 terminal 中使用下面的命令打开:code 命令是 vscode, 你也可以换成其他的命令: notepad $PROFILE

代码语言:javascript
复制
code $PROFILE
在windows中使用Oh My Posh美化你的终端PowerShell或WSL_配置文件_07
在windows中使用Oh My Posh美化你的终端PowerShell或WSL_配置文件_07

这样我们打开默认的个人配置,并在配置文件中写入下面的内容,保存并退出:

代码语言:javascript
复制
[System.Console]::OutputEncoding=[System.Text.Encoding]::GetEncoding(65001) # 配置默认编码
 oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\atomic.omp.json" | Invoke-Expression # 配置oh-my-posh的theme

你可以修改atomic.omp.jsonoh-my-posh的主题文件,你可以在 Themes | Oh My Posh 这里找到自己喜欢的主题名称。配置完成后关闭 terminal 重新开发就可以看到新的主题了。

关于配置文件我们也可以手动打开,配置文件的路径:C:\Users\ylyang\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

如果你用的是 PowerShell那么配置文件 C:\Users\ylyang\Documents\PowerShell\Microsoft.PowerShell_profile.ps1

如果看到路径错误,则你可能还没有 PowerShell的配置文件。 若要创建一个,请使用以下 PowerShell命令创建配置文件,然后尝试再次使用文本编辑器打开它。

代码语言:javascript
复制
new-item -type file -path $profile -force

如果在尝试打开新的 PowerShell实例时收到脚本错误,则表明 PowerShell执行策略可能受到限制。 若要将 PowerShell执行策略设置为不受限制,则需以管理员身份启动 PowerShell,然后使用以下命令:

代码语言:javascript
复制
Set-ExecutionPolicy -ExecutionPolicy Unrestricted

安装缺少的文件夹或文件图标

Terminal-Icons 是一个 PowerShell 模块,它会添加在 Windows 终端中显示文件或文件夹时可能缺少的文件和文件夹图标,并基于名称或扩展名查找相应的图标。 它尝试将图标用于已知文件/文件夹,但如果找不到内容,则会回滚到通用文件或文件夹图标。

若要使用 PowerShell安装 Terminal-Icons,请使用以下命令:

代码语言:javascript
复制
Install-Module -Name Terminal-Icons -Repository PSGallery

vscode 配置terminal

我们打开 vscode 的配置页面,并搜索 terminal

在windows中使用Oh My Posh美化你的终端PowerShell或WSL_PowerShell_08
在windows中使用Oh My Posh美化你的终端PowerShell或WSL_PowerShell_08

找到 windows exec 的配置项:

如果你安装了 pwsh.sh 也就是 powershell 7 以上的版本,那么可以跟我填的一样, 如果你并没有安装那么你可以填 powershell.exe, 可以相对路径,也可以绝对路径。

在windows中使用Oh My Posh美化你的终端PowerShell或WSL_PowerShell_09
在windows中使用Oh My Posh美化你的终端PowerShell或WSL_PowerShell_09

配置完成后,最好重启 vscode,就跟我一样了:

在windows中使用Oh My Posh美化你的终端PowerShell或WSL_PowerShell_10
在windows中使用Oh My Posh美化你的终端PowerShell或WSL_PowerShell_10

这里有个坑就是有可能报错:

代码语言:javascript
复制
oh-my-posh: C:\Users\username\OneDrive\Documents\PowerShell\Microsoft.PowerShell_profile.ps1:19
 Line |
   19 |  oh-my-posh init pwsh --config 'C:\Users\username\OneDrive\Documents\Powe …
      |  ~~~~~~~~~~
      | The term 'oh-my-posh' is not recognized as a name of a cmdlet, function, script file, or executable program. Check the spelling of the
      | name, or if a path was included, verify that the path is correct and try again

解决这个问题很简单:将 oh-my-posh.exe 添加到系统的环境变量中。

代码语言:javascript
复制
🚀 where.exe oh-my-posh
 C:\Users\ylyang\AppData\Local\Programs\oh-my-posh\bin\oh-my-posh.exe
  D:/Developer 
 🚀

可以看到 C:\Users\ylyang\AppData\Local\Programs\oh-my-posh\bin\oh-my-posh.exe 的路径。


如果你的折腾的过程中遇到了相关的问题,可以在文章下面讨论,留言。🤪

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-01-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 在windows中使用Oh My Posh美化你的终端PowerShell或WSL
  • 安装Windows terminal
  • 配置 Oh My Posh
    • 安装 Oh My Posh for PowerShell
      • 配置PowerShell 提示符主题
      • 安装缺少的文件夹或文件图标
      • vscode 配置terminal
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档