发布于 2026-01-06 4 阅读
0

向终端(ZSH)添加表情符号状态

向终端(ZSH)添加表情符号状态

这篇文章的灵感很大程度上来源于@yechielk ,并由衷感谢他。他昨晚发布了这条推文,而我和其他人一样,也想添加一些表情符号来表达我对我的指令成功的喜悦!

本指南可能适用于其他设置,但就我而言zsh,我运行的是特定版本,oh-my-zsh因此说明是基于此版本的。

1 - 导航至主题文件夹

oh-my-zsh使用主题来定义终端窗口的视觉显示。因此,我们首先要导航到主题所在的文件夹。



cd ~/oh-my-zsh/themes


Enter fullscreen mode Exit fullscreen mode

2 - 确定你要运行的主题

那个文件夹里有很多主题,但我们只想编辑我们正在运行的那个主题。所以让我们来看看是哪个主题。



echo $ZSH_THEME


Enter fullscreen mode Exit fullscreen mode

3 - 进入该主题文件

我正在运行的alanpeabody是我多年来不断定制的程序。那么,我们打开这个文件吧。

是的,我用过nano!对我来说很有效。你可以用vim其他任何你觉得好用的方法。



nano alanpeabody.zsh-theme


Enter fullscreen mode Exit fullscreen mode

4 - 创建一个变量来设置表情符号

这就是我们工作的核心,但它并非我原创。我从@yechielk 的 dotfiles 文件中提取并做了一些修改。各位,要事半功倍,而不是事倍功半!

请注意,您可以将这些表情符号替换为任何您想要的表情符号,甚至是文字。



local emoji="${debian_chroot:+($debian_chroot)}\$(if [ \$? == 0 ]; then echo 😊$; else echo 😓; fi) “


Enter fullscreen mode Exit fullscreen mode

5 - 向提示中添加变量

最后一步是找到主题中声明提示的位置。我的提示位于文件底部,并且名称也恰好是 `<command>` PROMPT。使用正确的语法在定义前添加表情符号变量,一切就大功告成了。



PROMPT="${emoji}${user} ${pwd}$  "


Enter fullscreen mode Exit fullscreen mode

请注意,此字符串中的空格已被考虑在内。我在末尾保留了一个空格,以便我输入的命令与提示符之间保持间距,但我删除了表情符号和用户名之间的空格,因为它占用了表情符号视觉缓冲区之外的不必要空间。

完全的!

就这样。记得重启终端以使更改生效。祝您使用愉快!

文章来源:https://dev.to/laurieontech/adding-an-emoji-status-to-terminal-zsh-4cnd