zsh の設定ファイルって多いですよね。まず .zshenv があって、 .zprofile や .zshrc 、 .zlogin があって、その他に独自に .zshrc.local やら .zshrc.ホスト名 を使っている方もいるでしょうし、人によっては .zlogout もあるかもしれません。
でも $HOME にファイルが ワサワサあると、ls -a した時に邪魔になりませんか。
そんな時にお勧めなのが、環境変数 ZDOTDIR です。
この環境変数に任意のディレクトリを設定しておくことで、zsh の設定ファイルを集めておくことができます。$HOME に置いておく必要があるのは .zshenv だけになります。
例えば以下のように $ZDOTDIR を設定すると、.zshrc や その他の zsh の設定ファイルを $HOME/.dot/zsh/ にまとめられる、というわけです。
export ZDOTDIR=$HOME/.dot/zsh/
zsh に関する設定ファイル群を一つのディレクトリにまとめられると、いろいろと便利に取り扱うことができるようになります。
- 何か探す時の grep 対象をそのディレクトリに限定できる
- そのディレクトリを cvs や git で管理することができる
- このディレクトリを tar して別ユーザの $HOME に展開するのもあり
- $HOME が NFS 上にある時も
.zshrc.ホスト名を一箇所にまとめられる
「zsh の設定ファイルが増えてきたなぁ」と思う方は、ぜひお試しください。