zsh+Oh My Zsh+Powerlevel10k:打造简洁高效的终端环境
使用 zsh + oh-my-zsh + Powerlevel10k 打造美观高效的终端
1. 安装 zsh 和 oh-my-zsh
- 安装 zsh(Ubuntu/Debian 系)
sudo apt install zsh
- 安装 oh-my-zsh
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
- 可选:设置 zsh 为默认 Shell
或者重启终端并在提示中选择 zsh。注:Linux系统需要注销重新登录才会默认zsh。chsh -s /usr/bin/zsh
2. zsh 终端美化
2.1 参考学习资料
-
视频教程(Bilibili):
Zsh 终端美化视频 -
Powerlevel10k GitHub 仓库:
romkatv/powerlevel10k
2.2 安装 Powerlevel10k 主题
- 克隆项目到本地
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ~/powerlevel10k
- 加载主题
在~/.zshrc
文件末尾加入:echo 'source ~/powerlevel10k/powerlevel10k.zsh-theme' >>~/.zshrc
- 重启 zsh 并配置
exec zsh
- 终端会进入 Powerlevel10k 配置向导,选择喜好的配色、图标样式等。
- 随时重新配置
- 如果想回到最初向导、重新对 Powerlevel10k 进行配置,可以执行:
p10k configure
- 按需修改主题样式与功能。
- 如果想回到最初向导、重新对 Powerlevel10k 进行配置,可以执行:
3. 安装并启用 Nerd 字体(Linux 下)
3.1 下载字体
- 前往 Powerlevel10k 字体链接 下载 MesloLGS NF 或其他所需的 Nerd 字体。
3.2 安装字体
- 复制字体文件
将下载好的.ttf
文件放到个人字体目录:
或者将字体复制到系统字体目录(需要管理员权限):mkdir -p ~/.local/share/fonts cp ~/Downloads/*.ttf ~/.local/share/fonts/
sudo cp ~/Downloads/*.ttf /usr/share/fonts/
- 刷新字体缓存
fc-cache -fv
- 验证安装
通过以下命令查看安装的字体是否能被系统识别:
若能输出字体路径,说明安装成功。fc-list | grep "MesloLGS"
3.3 选择并启用字体
- 如果你使用 GNOME、KDE 等桌面环境,可在 “设置” → “字体” 中为终端应用指定刚安装的 Nerd 字体。
- 如果你使用 其他终端模拟器(如 Terminator、Tilix、Alacritty、Konsole 等),通常可以在其「Preferences」→「Profile」→「Font」中选择 “MesloLGS NF”。
- 在纯命令行环境中,则需要使用类似
setfont
或更新终端配置文件的方式(不同终端模拟器略有不同)。
4. 在 VSCode 中使用 zsh 和 Nerd 字体
-
设置 zsh 为默认终端
- 打开 VSCode,进入 设置(Settings)。
- 搜索:
terminal.integrated.defaultProfile.linux
- 找到 Terminal > Integrated > Default Profile: Linux,将其更改为 zsh。
- 新建终端时即可默认使用 zsh。
-
设置 VSCode 终端字体
- 在设置搜索栏输入:
terminal.integrated.fontFamily
- 将其设置为刚安装好的 Nerd 字体名称。例如:
"terminal.integrated.fontFamily": "MesloLGS NF"
- 重启 VSCode,使新字体生效。
- 在设置搜索栏输入:
5. 常用插件:zsh-autosuggestions 与 zsh-syntax-highlighting
5.1 安装 zsh-autosuggestions
该插件会根据历史命令实时联想并提示后续可能的输入,极大提高敲命令效率。
- 克隆仓库
其中git clone https://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions
$ZSH_CUSTOM
一般为~/.oh-my-zsh/custom
,可根据实际情况调整路径。 - 启用插件
- 打开并编辑
~/.zshrc
,在plugins=(...)
中加入zsh-autosuggestions
,例如:plugins=(git zsh-autosuggestions)
- 保存后执行:
source ~/.zshrc
- 之后,你敲命令时就能看到灰色提示,按 → 或 End 等键接收补全。
- 打开并编辑
5.2 安装 zsh-syntax-highlighting
该插件为当前正在输入的命令提供语法高亮,便于及时发现拼写或路径错误。
- 克隆仓库
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting
- 启用插件
- 同样在
~/.zshrc
的plugins=(...)
中加入zsh-syntax-highlighting
:plugins=(git zsh-autosuggestions zsh-syntax-highlighting)
- 必须在
source ~/.oh-my-zsh.sh
之后 额外加一行:
这样才可正常工作。source $ZSH_CUSTOM/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
- 保存并
source ~/.zshrc
使之生效。
- 同样在
6. 处理 Docker 补全报错
如果在执行 source ~/.zshrc
时,出现如下错误:
compinit:503: no such file or directory: /usr/share/zsh/vendor-completions/_docker
这通常是 系统级 zsh 配置或残留文件 在尝试加载 Docker 的补全脚本 _docker
,但文件并不存在。
解决方法:
- 查找并删除无效引用
- 检查
/usr/share/zsh/vendor-completions/
目录下是否有_docker
(或其符号链接),但对应文件为空或已经不存在。 - 若不需要 Docker 补全,可直接删除(或重命名)该文件/链接:
sudo rm /usr/share/zsh/vendor-completions/*docker
- 然后重新加载 zsh:
source ~/.zshrc
- 检查
- 若需要 Docker 补全
- 请先安装 Docker,确保对应的补全脚本随包安装正确;或者从官方仓库下载
_docker
补全文件放置到/usr/share/zsh/vendor-completions/
。 - 确保该文件路径与配置匹配。
- 请先安装 Docker,确保对应的补全脚本随包安装正确;或者从官方仓库下载
通过以上方式,可排除重复或失效的 _docker
补全引用,避免无关的报错。
7. 小结
- zsh + oh-my-zsh:带来强大的自动补全、插件支持和灵活的配置。
- Powerlevel10k:提供炫酷美观的主题,可通过
p10k configure
反复定制。 - Nerd 字体:解决图标缺失或乱码问题,正确安装后,在终端/VSCode 中启用使图标完整显示。
- zsh-autosuggestions & zsh-syntax-highlighting:常用插件,提供自动联想与语法高亮,极大提升输入效率与准确度。
- Docker 补全报错:通常是系统残留或全局设置导致,删除无效引用或正确安装 Docker 补全即可解决。
- VSCode 终端:通过设置默认 Shell 和字体,可在开发环境中始终享受统一的美观与功能。
至此,你的 Linux 终端已完成从 zsh 到 Powerlevel10k 的华丽升级,并拥有更多插件加持,祝你愉快享受全新的视觉体验与操作效率!