LoginSignup
4
5

More than 5 years have passed since last update.

.zsh*を~/.zsh.dみたいな名前のディレクトリに放り込んですっきりさせる小技

Last updated at Posted at 2017-02-11

動機

ホームディレクトリがドットファイルの山であふれると何となく嫌だから、1ソフト1ディレクトリくらいになって欲しい。VCSで管理もしやすくなる。Emacsは最近 .emacs.d に全部放り込めるようになったので偉い。次はzsh、お前だ!

方法

というわけでman zshして最後のほうをみると、ZDOTDIRという変数を設定すると良いらしい。といっても、これをどうやって設定するのかという問題があって、~/.zshenvあたりに書くのだとすると目的が達成されない。どうしても、システムグローバルのrcファイルに書く必要がある。まあ、他にも方法はあるだろうけど、たぶんあまりすっきりとした方法にはならないと思う。

manpageによれば、rcファイルのうちで一番最初に読まれるのは /etc/zshenv (パスはビルド時のオプションによって異なる; Ubuntuだと /etc/zsh/zshenv) らしいので、 ここに次のような記述を追加しておく:

if [[ -d "$HOME"/.zsh.d ]]
then
    ZDOTDIR="$HOME"/.zsh.d
fi

あとは ~/.zsh.d を作ってそこにzsh関連のrcファイルを放り込めばよいというわけ。ひとつ注意しないといけないのは、ここに放り込むファイルも ~/.zsh.d/.zshrc みたいにドットが必要。ちょっとダサい。

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5