サーバの作業中に「このターミナルは履歴を使って…」「あっっっっ、間違えてファイル削除しちゃった!」とかしてえらいことになりました。
説明
ホスト名はユニークなものを付けるようにしているので、ホスト毎に別の色を付けるようにしました。
上のホスト(Macのローカルのターミナル)とリモート(Ubuntuサーバ)では緑系と青系の色という風に感じでホスト毎に色が違っています。
きっとこれで間違えなくなるはず!
やったこと
function hashed_color () {
hash=`echo $1 | cksum | cut -d' ' -f1`
COLOR=$(( $hash % 256 ))
echo $COLOR
}
HOSTNAME=`hostname`
host_color=`hashed_color $HOSTNAME`
PROMPT=$'
%F{$host_color}%n${PR_RST} @ %F{$host_color}%M${PR_RST} in %{$limegreen%}%~${PR_RST} $vcs_info_msg_0_$(virtualenv_info)
$ '
oh-my-zshのsteeefというテーマのプロンプトを元に色づけしました。
hostnameで取れる文字列を0〜256の間でハッシュ化し、プロンプトの色に紐付けています。
その他
色の上限
0〜256で決めうちしています。もしかしたら黒色とかになって見にくいとかあるかもです。その場合にはバックグラウンドを指定する必要がありそうです。
CRC
参考
zshプロンプトのカスタマイズ
http://qiita.com/yamagen0915/items/77fb78d9c73369c784da
13 Prompt Expansion
http://zsh.sourceforge.net/Doc/Release/Prompt-Expansion.html
zshでプロンプトをカラー表示する
http://qiita.com/mollifier/items/40d57e1da1b325903659