SHELL和插件
选取一个合适的shell
可选的shell很多,这里列出常选的:
- zsh
- fish
- bash
- …
bash
这是一个老牌的shell,大部分的linux系统自带可以说具有最广泛的兼容
同样与其他的shell对比样式和功能相对较弱的
zsh
zsh我用的比较久,这也是大部分的人比较喜爱的shell了,有活跃的社区和教程
有很多好用的插件
必备
- zsh-autosuggestons: 自动补全插件
- zsh-syntax-highlighting: 命令高亮
zinit
zsh目前比较火的插件管理器,Turbo mode延时加载使得你的zsh可以达到最快的启动速度,对比安装了许多插件的zsh可以做到10倍的提升
Install zinit
自动安装
1 | sh -c "$(curl -fsSL https://raw.githubusercontent.com/zdharma/zinit/master/doc/install.sh)" |
手动安装
- 先把源代码克隆下来
createDir:~/.config/zinit/bin 1
git clone https://github.com/zdharma/zinit.git ~/.config/.zinit/bin
- 在
~/.zshrc
顶端添加zinit
的路径source ~/.config/zinit/bin
- 重新启动终端,用 zinit self-update 进行自编译
zinit 加载插件
加载插件有几种不同的模式
zinit snippet
: 片段式,可以加载一个插件中的某一个脚本或者代码段zinit load
: 加载整个repo 或者单个脚本zinit light
: load 的轻量化加载版本
zinit 常见的插件安装
CLI 命令补全高亮
1 | zinit wait lucid for \ |
zinit + oh my zsh
zinit + powerlevel10k
zinit ice depth=1; zinit light romkatv/powerlevel10k
powerlevel10k install
powerlevel10k 是一个zsh主题,快速,美观,强大
这里是AUR中官方的包
1 | yay -S --noconfirm zsh-theme-powerlevel10k-git |
Unintall powerlevel10k
将一下配置从 .zshrc
配置文件中移除
1 | if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then |
about instant prompt
即使提示:
p10k 可以加速你的zsh启动,当你的zsh装了很多插件的时候,p10k 将会自动解决这些加载缓慢的情况
如果你开启了即使提示,将会在每一次zsh configure initialization 的时候得到一些控制台输出的信息
- 建议开启这个优化功能,但是如果想关闭每次初始化的提示可以在配置文件下修改如下选项
~/.p10k.zsh
Typeset -g POWERLEVEL9K_INSTANT_PROMPT=quiet 这将会关闭提示,但是p10k仍将在后台优化你的zsh启动时间
oh my zsh install
fish
fish我用过一段时间,开箱即用,比较热门的功能全部自带了
fisher
oh my fish
Plugins
Starship
repo: starship/starship
- 快: 很快 —— 真的真的非常快! rocket
- 定制化: 可定制各种各样的提示符。
- 通用: 适用于任何 Shell、任何操作系统。
- 智能: 一目了然地显示相关信息。
- 功能丰富: 支持所有你喜欢的工具。
- 易用: 安装快速 —— 几分钟就可上手。
starship config
创建配置文件
1 | mkdir -p ~/.config && touch ~/.config/starship.toml |
zsh-vi-mode (ZVM)
repo: jeffreytse/zsh-vi-mode
安装
- 使用zinit 安装 ZVM
用这个插件唯一蛋疼的地方就是光标显示了,在shell中,特别是开了多个shell的情况下你很难分出切换到了哪个窗口,所以我建议调整两个选项
1 | ZVM_CURSOR_STYLE_ENABLED=false # 关闭默认光标样式,你也可以修改为其他样式 |