🫢
Zsh でコマンドの終了コードが0以外の場合に目立たせる
とある本を写経していて、コマンド失敗を見逃して数分を無駄にしました。
2つのコマンドを連続して実行していて、1つ目を見逃しました。
以下のような表示です。(この下に2つ目のコマンドの結果がもっと続く)
終了コード(Exit Code) がもっと目立てば気づけたかもしれない、と思ったので、目立たせてみました。
PROMPT
を編集する
シェル変数 # .zshrc
PROMPT='%(?..
%B%F{black}%K{red}Exit Code: %?%k%f%b )
%% '
異常終了時に以下のように表示されます。
実際の設定では、カレントディレクトリやgitブランチも表示させているので以下のようにコード量も多いです。
# Git関連
autoload -Uz vcs_info
setopt prompt_subst
zstyle ':vcs_info:git:*' check-for-changes true
zstyle ':vcs_info:git:*' stagedstr "%F{magenta}!"
zstyle ':vcs_info:git:*' unstagedstr "%F{yellow}+"
zstyle ':vcs_info:*' formats "%F{cyan}%c%u[%b]%f"
zstyle ':vcs_info:*' actionformats '[%b|%a]'
precmd () { vcs_info }
# プロンプトカスタマイズ
PROMPT='%(?..
%B%F{black}%K{red}Exit Code: %?%k%f%b )
[%B%F{red}%n@mbp2021%f%b:%F{green}%~%f]%F{cyan}$vcs_info_msg_0_%f
%F{yellow}%%%f '
参考資料
Discussion
この記事を書いてすぐにStarshipというツールを見つけ、なんだか良さそうなので
このTipsはすぐ使わなくなるかもしれません…