定制一款漂亮的终端
2017-06-18 本文已影响1877人
绿岸公式
Powerlevel9k 是一款为 ZSH 打造的漂亮终端主题。功能相当强大,第一次安装的时候我被他深深吸引,难怪 Github 上两千多颗星。接下来我们以安装的形式来探索一下这款强大的主题。
先放张配置好的图
powerlevel9k.png安装
该主题可以被 Oh-My-Zsh, Prezto, Antigen, and many others 使用。
使用 Oh-My-Zsh 安装
从 Github 上克隆项目到 Oh-My-Zsh 的主题目录下,一般都在 ~/.oh-my-zsh/theme/
目录。
git clone https://github.com/bhilburn/powerlevel9k.git ~/.oh-my-zsh/custom/themes/powerlevel9k
修改 ~/.zshrc
中的 ZSH_THEME
:
ZSH_THEME="powerlevel9k/powerlevel9k"
然后重新打开终端就变成了 PowerLine 的形式了。但是由于没有安装相应的字体,导致符号显示不完全。
接下来就要安装 Awesome-Powerline Fonts
了。
安装 awesome-terminal-fonts
这是一款可以在终端界面显示 awesome 图标的工具。
- 获取该项目
git clone https://github.com/gabrielelana/awesome-terminal-fonts
- 进入该项目,将
build/
目录里的所有文件拷贝到~/.fonts/
目录(没有就创建一个)下
cp -R build/* ~/.fonts/
- 执行以下命令让 freetype2 知道这些字体
fc-cache -fv ~/.fonts
-
自定义
config/10-symbols.conf
配置文件里的字体,改成自己喜欢的。当然不改就是默认的。 -
拷贝
config/10-symbols.conf
配置文件到~/.config/fontconfig/conf.d
目录(没有就创建一个)下
cp config/10-symbols.conf ~/.config/fontconfig/conf.d
- source 所有
.fonts
目录下的字体到你的 shell 启动脚本
source ~/.fonts/*.sh
至此安装完成,再重启一下终端,效果是不是跟上面一样了。
配置
powerlevel9k 提供了丰富的个性化配置功能。
两行提示符
powerlevel9k 默认只有一行提示符。
如果你想另起一行,在 ~/.zshrc
中加入以下定义即可
POWERLEVEL9K_PROMPT_ON_NEWLINE=true
如图
prompt_newline.png如果你想让右边的提示符也显示到下一行,只需在以上基础上再加以下定义即可
POWERLEVEL9K_RPROMPT_ON_NEWLINE=true
如图
rprompt_newline.png如果你想自定义多行连接的符号,定义以下方式即可
POWERLEVEL9K_MULTILINE_FIRST_PROMPT_PREFIX="↱"
POWERLEVEL9K_MULTILINE_SECOND_PROMPT_PREFIX="↳ "
如图
custom_line_symbol.png命令执行完新加一行
POWERLEVEL9K_PROMPT_ADD_NEWLINE=true
如图
prompt_end_newline.png禁用右边的提示符
POWERLEVEL9K_DISABLE_RPROMPT=true
浅色主题
POWERLEVEL9K_COLOR_SCHEME='light'
自定义左边提示符的元素
默认的元素只有提供了 context 、 root_indicator,可添加以下元素
元素 | 介绍 |
---|---|
os_icon | 系统标识 |
battery | 电量 |
context | 用户 |
dir | 路径 |
dir_writable | 目录读写状态 |
load | 加载 |
rspec_stats | 统计 |
status | 状态 |
symfony2_tests | 测试 |
user | 当前用户 |
vcs | 版本控制 |
vi_mode | vi 模式 |
通过以下定义方式添加,例如:
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(os_icon root_indicator dir vcs)
更多
它的配置还有更多,点击进入 wiki 查看。
使用第三方热门主题
如果你觉得配置麻烦,那就是用热门主题,反正一大堆。
在 powerlevel9k 的 wiki 页面,点击即可进入。