zsh-autosuggestions
zsh-autosuggestions 可用于提示补全建议,当输入字符,默认情况下,它基于我们的历史命令自动提供输入建议。
1
| git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
|
- 编辑
.zshrc
文件:
- 找到
plugins
这一行将命令加入括号中,如果启用的插件很多可以写成下面的形式方便管理:
1 2 3 4
| plugins=( git zsh-autosuggestions )
|
- 使配置生效:
- 另外,如果希望 zsh-autosuggestions 不仅支持 history,也支持自动补全的建议提示,即原来那些要输入 tab 才能出现的内容,如子命令、命令选项、目录文件等提示,也能在提示建议的范围中。我们只需增加 completeion 这个配置项。
1 2
| echo 'ZSH_AUTOSUGGEST_STRATEGY=(history completion)' >> ~/.zshrc source ~/.zshrc
|
zsh-syntax-highlighting
zsh-syntax-highlighting 是 zsh 的语法高亮插件,如果输入的命令不存在,或者输入 shell 语法不正确,将会自动以红色表示。它的优点就是,当我们在终端输入时可以实时反馈。
1
| git clone https://github.com/zsh-users/zsh-syntax-highlighting ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
|
配置与上面一样,不多赘述。
1 2 3 4 5
| plugins=( git zsh-autosuggestions zsh-syntax-highlighting )
|
eza
eza 是一款可用于替换系统默认 ls 的命令,在平时工作中 ls 几乎使用最多的命令,而 eza 在支持 ls 的基本能力基础上,提供了更丰富的特性。
可通过别名将默认 ls 和 tree 命令替换为 eza,如下是一些常见的别名设置:
1 2 3 4 5 6 7 8 9 10 11
| # 默认显示 icons: alias ls="eza --icons" # 显示文件目录详情 alias ll="eza --icons --long --header" # 显示全部文件目录,包括隐藏文件 alias la="eza --icons --long --header --all" # 显示详情的同时,附带 git 状态信息 alias lg="eza --icons --long --header --all --git"
# 替换 tree 命令 alias tree="eza --tree --icons"
|
zoxide
zoxide 是一款受到 z 和 autojump 启发而来的命令,它会记录访问过的目录,通过搜索找到最匹配你目标的目标。从而实现以最少按键就能实现目录跳转。
1 2 3
| apt install zoxide echo 'eval "$(zoxide init zsh --cmd cd)"' >> ~/.zshrc source ~/.zshrc
|
bat
bat 是一款支持语法高亮、git 集成的用于替换类 Unix 系统下快速查看文件内容的命令,功能与 cat 相似的命令。
⚠️在 Ubuntu/Debian 上,软件包里 bat 这个名字和 Basic Assembly Template (bat) 冲突了,所以官方把命令名字改成了 batcat。需要给所有用户加一个软链接,让 batcat 变回 bat:
1
| sudo ln -s /usr/bin/batcat /usr/local/bin/bat
|
这样以后所有用户直接敲 bat 就能用了。