sshなどで幾つかのサーバーにログインして設定ファイルを弄ったり、
ローカルでログの監視をしてたり、
データベースのデータを見てたりすると、
モニター上がターミナルのウィンドウですぐ埋まってしまいます。
そうすると、どのウィンドウで、どんな作業をやっていたのか、
判りづらくなったりするわけですね。
画面がウィンドウで埋まる埋まる。
そこで、ターミナルのウィンドウごとに
ターミナルの背景色、文字色、その他設定を変更して、
区別しやすくするスクリプトを組んでみた。
使ってみた様子はこんな感じ。
色が派手になってしまったので、実際に使うなら、色は個人で調節した方が良い。
使い方は、
このスクリプトをダウンロードして、解凍して、適当なディレクトリにコピー。
シェルの設定ファイルで読み込むようにしてください。
. /path/to/ch_term_color.sh
↑こういう行をシェルの設定ファイルを追加する。
"/path/to/"の部分は、実際にファイルのあるディレクトリまでのPATHと置き換えること。
そうすると、ターミナルのウィンドウを開くたびに、
開いたターミナルの背景色と、文字色、その他が変わるようになります。
なお、AppleScriptを使っているので、Mac OSXでしか動きません。
さらに、Pantherのbash、zsh、Tigerのzshでしかテストしていません。
本日は以上。
では。
以下はスクリプトの中身。
作りは雑だが、一応動く。
ウィンドウを4つ開くごとに設定が一周するようにした。
色は、"red", "green", "blue", "cyan", "magenta", "yellow", "purple", "black"あたりが使える(他にもあるけど)。
#!/bin/sh
########################
# get last char
lc=$(tty | sed -e 's#.*\(.\)$#\1#')
# switch case
case ${lc} in
1|5|9|d)
background="black"
cursor="green"
normal_text="yellow"
bold_text="red"
;;
2|6|a|e)
background="red"
cursor="black"
normal_text="green"
bold_text="yellow"
;;
3|7|b|f)
background="yellow"
cursor="red"
normal_text="black"
bold_text="green"
;;
4|8|c|0)
background="green"
cursor="yellow"
normal_text="red"
bold_text="black"
;;
*)
echo "unknown tty last char"
exit 1
;;
esac
# run applescript
osascript << EOF
tell application "Terminal"
tell window 1
set background color to "${background}"
set cursor color to "${cursor}"
set normal text color to "${normal_text}"
set bold text color to "${bold_text}"
end tell
end tell
EOF