Ubuntu 安装 zsh + oh my zsh 美化终端
本文最后更新于:2023年2月24日星期五凌晨1点10分
关于 zsh 的一些简单介绍,查看权威介绍:
install zsh
Ubuntu 安装 zsh 十分简单,只是执行命令即可:
sudo apt install zsh
又看到别人教程说还需要切换 zsh 为默认 shell,目前来看是没有必要的。
因为安装完 oh my zsh 后,其会自动设置 zsh 为默认终端。
如果手动设置默认 shell:
chsh -s `which zsh`
再输入密码,并重启就行。
install oh-my-zsh
Oh My Zsh 是一个令人愉快的、开源的、社区驱动的框架,用于管理咱们的 Zsh 配置。
它捆绑了数千个有用的功能、助手、插件、主题,以及一些让咱们兴奋的东西……
安装:
install oh-my-zsh via curl
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
install oh-my-zsh via wget
sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
上述命令会将 oh my zsh 安装在用户目录中,即
/home/username/.oh-my-zsh
。是个隐藏文件。
powerlevel10k
接下来主要是配置 oh my zsh 的主题,其自带的主题还是比较多的,比如:
在我看来,也就 agnoster
最好看了。所以我将其放在第一位。
后面的只是我粗看一看,还过得去的。
罗卜白菜,各有所爱啦。
agnoster
half-life
jtriley
mortalscumbag
steeef
terminalparty
tjkirch
ys
更多主题情况请详见:
除了上述主题外,还有一种非常 freedom 的一种主题 —— powerlevel10k
。
它强调速度、灵活性和开箱即用的体验。
It emphasizes speed, flexibility and out-of-the-box experience.
该主题可以自行选择你所喜欢的样式来美化你的 prompt,也就是主题所改变的部分。
先看看咱的:
就只是简单的选择了自己喜欢的样式。
该主题还可以添加更多有意思的部分,这个详见:powerlevel10k | github
install powerlevel10k
下载仓库:
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
中国大陆用户可以使用 gitee.com 上的官方镜像加速下载.
git clone --depth=1 https://gitee.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/theme
然后修改 .zshrc
文件:
nano ~/.zshrc
注释 ZSH_THEME
字段,并在下方添加 ZSH_THEME="powerlevel10k/powerlevel10k"
。
最后执行命令进行设置,仔细阅读选项进行选择即可:
p10k configure
安装 zsh 插件
看到别人推荐,自己试了确实不错。
zsh 插件确实挺多,可以去 wiki 看看:zsh Plugins | github wiki
这里咱就只说俩,自动补全 + 代码高亮。
安装自动补全 —— zsh-autosuggestions
先下载到 oh my zsh 插件中
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
然后在配置文件 .zshrc
相关位置如下添加:
plugins=(
# other plugins...
zsh-autosuggestions
)
安装代码高亮 —— zsh-syntax-highlighting
还是先下载到 oh my zsh 的插件中
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
然后还是在配置文件 .zshrc
对应位置:
plugins=( [plugins...] zsh-syntax-highlighting)
允许在命令历史记录中搜索子串 —— history-substring-search
git clone https://github.com/zsh-users/zsh-history-substring-search.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/history-substring-search
然后还是在配置文件 .zshrc
对应位置:
plugins=( [plugins...] history-substring-search)
目录导航 —— zsh-navigation-tools
安装 zsh-navigation-tools
可以提供一些在命令行中浏览和编辑不同内容的工具,包括浏览别名、目录、函数、历史记录、进程、环境变量等。
安装:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/z-shell/zsh-navigation-tools/main/doc/install.sh)"
更新该插件就再运行该指令。
The tools are:
n-aliases
- 浏览别名,并将编辑委托给vared
n-cd
- 浏览dirstack
和已标记的目录,并允许进入所选目录n-functions
- 浏览函数,并将编辑委托给zed
或vared
n-history
- 浏览历史记录,并允许编辑和运行其中的命令n-kill
- 浏览进程列表,并允许向所选进程发送信号n-env
- 浏览环境,并将编辑委托给vared
n-options
- 浏览选项,并允许切换其状态n-panelize
- 将给定命令的输出加载到浏览列表中
所有工具都支持使用<
,>
,{
,}
,h
,l
或左右光标进行水平滚动。其他键包括:H
,?
(来自n-history
) - 运行n-help
Ctrl-R
- 启动n-history
,增量、多关键字历史搜索器(Zsh
绑定)Ctrl-A
- 旋转输入的单词(1+2+3 -> 3+1+2)Ctrl-F
- 修正模式(近似匹配)Ctrl-L
- 重新绘制整个显示Ctrl-T
- 浏览主题(下一个主题)Ctrl-G
- 浏览主题(上一个主题)Ctrl-U
- 上半页Ctrl-D
- 下半页Ctrl-P
- 上一个元素(也可以使用vim的k)Ctrl-N
- 下一个元素(也可以使用vim的j)[
,]
- 在n-cd
中跳转目录书签,在n-kill
中跳转典型信号g
,G
- 列表的开始和结尾/
- 显示增量搜索F3
- 显示/隐藏增量搜索Esc
- 退出增量搜索,并清除过滤器Ctrl-W
(在增量搜索中) - 删除整个单词Ctrl-K
(在增量搜索中) - 删除整行Ctrl-O
,o
- 进入唯一模式(无重复行)Ctrl-E
,e
- 编辑私有历史记录(当在私有历史记录视图中时)F1
- (在n-history
中) - 切换视图F2
,Ctrl-X
,Ctrl-/
- 搜索预定义关键字(在配置文件中定义)
结束。