Zsh + Prezto の設定ファイルを整理する
概要
Zsh + Prezto の設定ファイル( .zshrc
、 .zlogin
など)を1つのディレクトリにまとめて整理する方法です。 Prezto を使っているとこれらのファイルはシンボリックリンクになっているため、ただ移動するだけでは読み込めなくなってしまいます。そこで、シンボリックリンクの貼り直しなどの必要な手順をまとめました。
目標
すべてのファイルがホームディレクトリにあるデフォルトの状態から、このようなディレクトリ構造にしたい。
/Users/ttsutchi
├── .zshenv # .zsh.d以下を読み込む
└── .zsh.d # .zshenv以外の設定ファイルを格納するディレクトリ
├── .zprezto # 以下のファイルの実体やプラグインなどが格納されているディレクトリ
├── .zshenv # これらのファイルは.zprezto/runcoms/にある実体のシンボリックリンク
├── .zshrc
├── .zlogin
︙
その他.zファイル
実行環境
MacOS High Sierra 10.13.6
Zsh 5.6.2
Prezto
手順
ホームディレクトリで作業していきます。
.zsh.d
ディレクトリの作成
設定ファイルを格納するディレクトリを作成します。ここでは .zsh.d
とします。
$ touch .zsh.d
.zprezto
を .zsh.d
ディレクトリに移動
Prezto の本体である .zprezto
を .zsh.d
に移動させます。
$ mv .zprezto .zsh.d
それ以外のファイルを削除(もしくは移動)
.zcompdump
を削除します。 .zhistory
も削除したいのですが、すぐに再生成されてしまうため、すべての移行が完了してから最後に削除することにします。(どちらも再生成されるので削除しても問題ないですが、 .zsh.d
に移動させることもできます)
$ rm .zcompdump .history
シンボリックリンクも削除
zshenv
、 .zshrc
などのファイルはシンボリックリンクなので、 unlink
コマンドで削除します。
$ unlink .zlogin .zlogout .zpreztorc .zprofile .zshenv .zshrc
.zshenv
を新たに作成
Zsh 起動時に最初に読み込まれる .zshenv
を新たに作成します。
$ touch .zshenv
環境変数 ZDOTDIR
の設定
以下の2行を先ほど作成した .zshenv
に記述して、 .zsh.d
を ZDOTDIR
として指定します。
export ZDOTDIR=$HOME/.zsh.d
source $ZDOTDIR/.zshenv
以下のコマンドを実行すれば記述できます。
echo -e "export ZDOTDIR=$HOME/.zsh.d\nsource $ZDOTDIR/.zshenv" >> .zshenv
シェルを再起動
.zshenv
を読み込むために、以下のコマンドを実行するかターミナルを再起動することで Zsh を再起動します。
$ zsh
シンボリックリンクを貼り直す
以下のコマンドを実行して、 .zprezto
の中にある .zshrc
などのファイルのシンボリックリンクを .zsh.d
に貼ります。4行を一度に実行することに注意。
$ setopt EXTENDED_GLOB
for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do
ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}"
done
シェルを再起動
今貼ったシンボリックリンクを読み込むために、最後にもう一度以下のコマンドを実行するかターミナルを再起動することで Zsh を再起動します。
$ zsh
ホームディレクトリの .zhistory
を削除
.zhistory
は .zsh.d
に生成されるようになったので、最後に残ったホームディレクトリの .zhistory
を削除します。
$ rm .zhistory
確認
設定ファイルが読み込まれ、テーマやプラグインなどが反映されていればOKです。
トラブルシューティング
・以下のようなメッセージが出たときは、 q
で進みます。
This is the Z Shell configuration function for new users,
zsh-newuser-install.
You are seeing this message because you have no zsh startup files
(the files .zshenv, .zprofile, .zshrc, .zlogin in the directory
~/.zsh.d). This function can help you with a few settings that should
make your use of the shell easier.
You can:
(q) Quit and do nothing. The function will be run again next time.
(0) Exit, creating the file ~/.zsh.d/.zshrc containing just a comment.
That will prevent this function being run again.
(1) Continue to the main menu.
参考
Author And Source
この問題について(Zsh + Prezto の設定ファイルを整理する), 我々は、より多くの情報をここで見つけました https://qiita.com/taznica/items/2232b18b31350607a879著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .