每次重装系统,最烦的就是恢复终端环境。上个月我干脆把 dotfiles 从头写了一遍,原则只有一条:每个插件都要能说清楚它解决了什么问题。
Zsh 部分
不用 oh-my-zsh,直接手写 .zshrc:
autoload -Uz compinit && compinit -C
setopt autocd extendedglob nomatch notify
HISTFILE=~/.zsh_history
HISTSIZE=100000
SAVEHIST=100000
setopt hist_ignore_dups share_history
bindkey -e
bindkey '^R' history-incremental-search-backward
插件只留三个:
zsh-autosuggestions—— 补全提示,用得最多;zsh-syntax-highlighting—— 命令写错时立刻能看出来;zsh-completions—— 补全定义,不占运行时开销。
曾经装过二十多个插件,启动要 400ms。现在 30ms,感觉像是换了个终端。
Zellij 代替 tmux
tmux 用了六年,配置越写越长。换 Zellij 主要是因为它的布局文件是 KDL,可读性好太多:
layout {
pane split_direction="vertical" {
pane size="60%"
pane split_direction="horizontal" {
pane
pane
}
}
}
常用操作记一下:
| 操作 | 快捷键 |
|---|---|
| 新建标签页 | Ctrl+p 然后 n |
| 纵向分屏 | Ctrl+p 然后 r |
| 切换面板 | Alt+方向键 |
| 浮动面板 | Ctrl+p 然后 w |
用到的工具
最后终端里的常驻工具只有这些:
# 更快的 ls / cat / grep
eza --icons --group-directories-first
bat --style=plain
ripgrep
# 模糊查找
fzf
zoxide
zoxide 大概是我这两年装过最值的小工具 —— z deep 就能跳到上次去过的项目目录,再也不用 cd ../../..。
一点感慨
配置这件事很容易变成收集癖。写到最后你会发现,真正每天都用的功能不超过十个。把剩下的删掉,终端反而更快、更可靠。