Grandream
Z Shellを使いこなして最強になる 〜設定編〜
岡野です。
前回の移行編の続きです。
zshへの移行が完了しました。
ここから楽しくなるところではないでしょうか!
修正対象の設定ファイルと設定の反映
これから記載する各種設定を記述する設定ファイルと、記述した設定の反映方法です。
修正対象のファイルの開き方です。
$ vim ~/.zshrc設定の反映方法です。
$ source ~/.zshrczshの各種設定
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に以下を追記
export LANG=ja_JP.UTF-8日本語ファイル名を表示可能にする
.zshrcに以下を追記
setopt print_eight_bitgitの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に以下を追記
setopt auto_cdcd -<tab>で以前移動したディレクトリを表示
.zshrcに以下を追記
setopt auto_pushdコマンドのスペルをミスして実行した場合に候補を表示
.zshrcに以下を追記
HISTFILE=~/.zsh_history履歴の保存先ファイル指定
.zshrcに以下を追記
export HISTSIZE=1000メモリに保存される履歴の件数
.zshrcに以下を追記
export HISTSIZE=1000履歴ファイルに保存される履歴の件数
.zshrcに以下を追記
export SAVEHIST=10000同時に起動しているzshの間でhistoryを共有する
.zshrcに以下を追記
setopt share_historyhistoryに保存するときに余分なスペースを削除する
.zshrcに以下を追記
setopt hist_reduce_blanks同じコマンドをhistoryに残さない
.zshrcに以下を追記
setopt hist_ignore_all_dups最後に
zshの設定完了です。
しかし、ここまでで初歩的な設定なのではないでしょうか?
まだまだ最強への道は遠い。。。
最強!
Grandream
株式会社グランドリーム
AI・システム開発のプロフェッショナルチームです。AIエージェント・業務自動化・Webシステム開発などを手がけています。