1. HOME»
  2. プログラミング・Web»
  3. ターミナル»
  4. .zshrcを分割して管理してみよう!

.zshrcを分割して管理してみよう!

zshの設定ファイル、.zshrcですが、いろんなカスタマイズをしていると、だんだんとどこになにが書いてあったのか、分からなくなってしまいます。

そこで今回は、.zshrcファイルを分割して、管理しやすくする方法を紹介します。

山田

.zshrcはzshの設定ファイルで、カスタマイズするときなどによく使うべ
今回は、この.zshrcファイルを分割して管理する方法を紹介するべ

目次
  1. フォルダ構成について
  2. .zshrcから、.zshフォルダにあるファイルを全部読み込もう!
  3. まとめ

フォルダ構成について

まずはフォルダ構成についてです。
今回は、dotfilesの中で、.zshrcなどのファイルを管理しています。

dotfilesは、いろんなツールの設定(.からはじまるファイル)をひとつにまとめて管理するためのものです。
くわしい作り方は、以下を参考にしてください。

そして今回、dotfilesのzsh関係のファイルはこのようになっています。

dotfies/
|-- .zsh/
|   |-- init.zsh
|   |-- xxx.zsh
|   |-- xxxxx.zsh
|   `-- xxxx/
|     |-- xxx.zsh
|     `-- xxxxx.zsh
|-- link.sh
`-- .zshrc
りこ

dotfilesフォルダに.zshrcファイルやzshフォルダがあって、.zshフォルダにはいろんなファイルやフォルダが入っているのね!

山田

うむ
.zshrcから、.zshフォルダより下にあるファイルを、すべて読み込むんだべ

グッバイキティ

こうして分割するんどすなぁ

アル

どうやって読み込むの?

.zshrcから、.zshフォルダにあるファイルを全部読み込もう!

では、.zshrcにコードを追加して、.zshフォルダファイルをすべて読み込むようにしてみましょう。

山田

では、.zshフォルダにあるファイルを、ぜんぶ読み込むためのコードを、zshrcに追加するべ!

.zshrcに、以下を追加します。

.zshrc

ZSH_DIR="${HOME}/.zsh"

# .zshがディレクトリで、読み取り、実行、が可能なとき
if [ -d $ZSH_DIR ] && [ -r $ZSH_DIR ] && [ -x $ZSH_DIR ]; then
    # zshディレクトリより下にある、.zshファイルの分、繰り返す
    for file in ${ZSH_DIR}/**/*.zsh; do
        # 読み取り可能ならば実行する
        [ -r $file ] && source $file
    done
fi
アル

これで.zshにあるファイルがぜんぶ読み込めるんだぁ

りこ

そっかぁ
じゃあ、新しい機能を作りたくなったら、.zshフォルダにそれ専用のファイルを作っちゃえば、自動的に読み込まれるのね! 便利!

まとめ

今回は、zshの設定ファイル、.zshrcを分割して管理する方法を紹介しました。

りこ

.zshrcを分割すると、どこになにを書いたかすぐに分かって、管理しやすくなるね!

山田

そうなんだべ
こういう設定は、いつの間にかどんどん増えていってしまうべから、早めに整理しておいた方がいいべ

それではわたすは、校長先生に呼ばれているから、そろそろ行くべ

アル

またなんかやらかしたの?

山田

いやいや、たいしたことないべ
理科の授業のとき、ガスバーナーでイカを焼いてたんだべ

グッバイキティ

先生らしいどすなぁ
でも、猫がイカなんて食べて大丈夫なんどすかぁ

山田

わたすは猫じゃないから大丈夫だべ!

りこ

猫でしょ!

アル

猫じゃん!

グッバイキティ

ご立派な猫はんどすなぁ

オリジナルゲーム.com