岡野です。
前回の移行編の続きです。
zshへの移行が完了しました。
ここから楽しくなるところではないでしょうか!
修正対象の設定ファイルと設定の反映
これから記載する各種設定を記述する設定ファイルと、記述した設定の反映方法です。
修正対象のファイルの開き方です。
設定の反映方法です。
zshの各種設定
zsh-completionsで補完機能をより強力にする
以下のコマンドを実行して sh-completions をインストールします。
$ brew install zsh-completions
インストールが完了すると以下のメッセージが表示されます。
To activate these completions, add the following to your .zshrc:
if type brew &>/dev/null; then
FPATH=$(brew --prefix)/share/zsh-completions:$FPATH
autoload -Uz compinit
compinit
fi
You may also need to force rebuild `zcompdump`:
rm -f ~/.zcompdump; compinit
Additionally, if you receive "zsh compinit: insecure directories" warnings when attempting
to load these completions, you may need to run this:
chmod go-w '/usr/local/share'
言われるがままに zshrc に上記設定を追加します。
そして私の環境の場合、上記メッセージの通り、
Last login: Tue Oct 27 13:51:32 on ttys001
zsh compinit: insecure directories, run compaudit for list.
Ignore insecure directories and continue [y] or abort compinit [n]? y%
というメッセージが表示されたので、
記載の chmod go-w '/usr/local/share' を実行することで表示されないようになりました。
文字コードを指定
.zshrcに以下を追記
日本語ファイル名を表示可能にする
.zshrcに以下を追記
gitのbranchをプロンプトに表示する。
$ mkdir ~/.zsh
$ cd ~/.zsh
$ curl -o git-prompt.sh https://raw.githubusercontent.com/git/git/master/contrib/completion/git-prompt.sh
$ mv git-prompt.sh .git-prompt.sh
詳細な設定手順は git-prompt.sh 内のコメントにて記載があります。
.zshrcに以下を追記
setopt PROMPT_SUBST
source ~/.zsh/.git-prompt.sh
プロンプトをカスタマイズ
.zshrcに以下を追記
PROMPT='%F{cyan}%W%f %F{cyan}%*%f:%F{yellow}%m%f:%F{magenta}%n%f: %F{green}%~%f %F{red}$(__git_ps1 "%s" )%f '
この設定だと結構うるさい感じになります。
最初だからこれくらい、はりきらいないと!ということで良しとします。
%F{red}$(__git_ps1 "%s" )%f の部分はgitのブランチ名の表示部分です。
cd無しでもディレクトリ移動
.zshrcに以下を追記
cd -<tab>で以前移動したディレクトリを表示
.zshrcに以下を追記
コマンドのスペルをミスして実行した場合に候補を表示
.zshrcに以下を追記
履歴の保存先ファイル指定
.zshrcに以下を追記
メモリに保存される履歴の件数
.zshrcに以下を追記
履歴ファイルに保存される履歴の件数
.zshrcに以下を追記
同時に起動しているzshの間でhistoryを共有する
.zshrcに以下を追記
historyに保存するときに余分なスペースを削除する
.zshrcに以下を追記
setopt hist_reduce_blanks
同じコマンドをhistoryに残さない
.zshrcに以下を追記
setopt hist_ignore_all_dups
最後に
zshの設定完了です。
しかし、ここまでで初歩的な設定なのではないでしょうか?
まだまだ最強への道は遠い。。。
最強!
株式会社Grandreamでは、フルリモートであなたのスキルを活かし、活躍できるエンジニアを募集しております。
詳しくは採用ページをご確認いただき、お気軽にお問い合わせください。