Subscribed unsubscribe Subscribe Subscribe

hostごとにstatus lineの色を変える・改

tmux

hostごとにstatus lineの色を変える - すぎゃーんメモを書いたところ、@さんから

と教えていただいたので、真似してみることにした。ありがとうございます!

if [ "$TMUX" != "" ]; then
    tmux set-option status-bg colour$(($(echo -n $(whoami)@$(hostname) | sum | cut -f1 -d' ') % 8 + 8)) | cat > /dev/null
fi

sumコマンドで16ビットチェックサムが得られる! 便利! hostname(+ユーザ名)を標準入力で渡すようにしてsumを計算すれば、一意に決まる値が得られる。これをcutで切り抜いて$(())を使って剰余計算した値を使ってカラーコード指定。こうすればawkperlも使わずに環境によって一意に色を決められる!


ちなみにtmuxの設定ファイルをOSごとに切り分ける方法はあまり良いのが思い浮かばなくて、デフォルトシェルの.rcファイルで

alias tmux='tmux -f $HOME/.tmux.$(uname).conf'

としておいて、.tmux.Darwin.conf, .tmux.Linux.confでそれぞれ

source-file $HOME/.tmux.common.conf

を呼ぶようにしておき、そこで共通の設定を書くようにしてみている。
GitHub - sugyan/dotfiles at 02384b27c92be8af10b69fb7d0f8267aa153e68d