ZSH安装超酷的powerlevel9k主题

网上看到别人的命令行右面竟然有个漂亮的时间戳,非常好奇。搜了下发现竟然是zsh的主题,叫powerlevel9k

image

参考Github官方文档:https://github.com/bhilburn/powerlevel9k

安装

有了Oh my zsh的话就安装非常简单,
如下两步:

  • 下载主题
$ git clone https://github.com/bhilburn/powerlevel9k.git ~/.oh-my-zsh/custom/themes/powerlevel9k
  • ~/.zshrc的首行处引入主题(真的需要写在首行才能保证不出问题,所有主题都一样):
ZSH_THEME="powerlevel9k/powerlevel9k"

色彩问题

安装后有可能会提示你的终端色彩不够256色问题,


image

可以找它建议的,直接在~/.zshrc中强制指定终端色彩来解决:

export TERM="xterm-256color"
image

常用配置

默认配置参考官方说明:https://github.com/bhilburn/powerlevel9k/wiki/Stylizing-Your-Prompt
官方推荐的各种用户配置(带各种截图):https://github.com/bhilburn/powerlevel9k/wiki/Show-Off-Your-Config

# ==== Theme Settings ====
# PowerLevel9k
# 左侧栏目显示的要素(指定的关键字参考官网)
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(os_icon context dir vcs)
# 右侧栏目显示的要素
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status root_indicator background_jobs time virtualenv)
#新起一行显示命令 (推荐!极其方便)
POWERLEVEL9K_PROMPT_ON_NEWLINE=true
#右侧状态栏与命令在同一行
POWERLEVEL9K_RPROMPT_ON_NEWLINE=true
#缩短目录层级
POWERLEVEL9K_SHORTEN_DIR_LENGTH=1
#缩短目录策略:隐藏上层目录中间的字
#POWERLEVEL9K_SHORTEN_STRATEGY="truncate_middle"
#添加连接上下连接箭头更方便查看
POWERLEVEL9K_MULTILINE_FIRST_PROMPT_PREFIX="↱"
POWERLEVEL9K_MULTILINE_LAST_PROMPT_PREFIX="↳ "
# 新的命令与上面的命令隔开一行
#POWERLEVEL9K_PROMPT_ADD_NEWLINE=true
# Git仓库状态的色彩指定
POWERLEVEL9K_VCS_CLEAN_FOREGROUND='blue'
POWERLEVEL9K_VCS_CLEAN_BACKGROUND='black'
POWERLEVEL9K_VCS_UNTRACKED_FOREGROUND='yellow'
POWERLEVEL9K_VCS_UNTRACKED_BACKGROUND='black'
POWERLEVEL9K_VCS_MODIFIED_FOREGROUND='red'
POWERLEVEL9K_VCS_MODIFIED_BACKGROUND='black'

Python的Virtualenv和Pipenv虚拟环境显示问题

一般命令行里,进入虚拟环境的shell时会显示如(venv) ~$这样的。
但是安装这个主题后,默认是没有的。
你必须手动设置添加才行。

方法是:
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS或者POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS中添加virtualenv要素,就能够显示了。
如:

POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(os_icon context dir vcs virtualenv)
image

但是也有不能正常显示的时候,而且还会报错:

$ pipenv shell
Shell for UNKNOWN_VIRTUAL_ENVIRONMENT already activated.
No action taken to avoid nested environments.

这个不是主题的问题,测试后发现换了主题还是这样显示,所以这是ZSH的问题。
找了半天都没有结果怎么解决。
结果发现,不需任何修改,

只要关闭当前的终端窗口,重新打开就好了。

扫描二维码关注公众号,回复: 5236137 查看本文章

显示主机型号图标问题

像这种显示当前主机(如Mac)图标和Git图标的问题,是需要字体支持的。

image

默认是不开启的,必须要在~/.zshrc中指定使用这种方式显示:

#字体设定 (注意,字体设定必须放在主题之前)
POWERLEVEL9K_MODE='nerdfont-complete'
#主题设定
ZSH_THEME="powerlevel9k/powerlevel9k"

上面的字体模式可选的有:

  • nerdfont-complete
  • awesome-fontconfig
  • awesome-patched

根据你的情况来尝试,因为不是每个都能完美无乱码显示出来。

猜你喜欢

转载自blog.csdn.net/weixin_34129145/article/details/87518943