screen に関する tips

ここしばらく GNU Screen を使っている. その恩恵に十分浴しているとは言えない使い方しかしてないと思うけど. 今のところ, 以下の 2 つは欠かせねーなぁ と思う.

最終行にウィンドウ一覧を表示する
今はこんな感じ.

hardstatus alwayslastline "screen | %-Lw%{= dd}%n%f* %t%{-}%+Lw %=| %Y/%m/%d %c"
上のような設定が晒されている事こそあれ, どの部分がどういう意味なのかを説明しているのはあまり見たことがない. なので覚え書きも兼ねて簡単に説明しておく. 詳細及びより正確な説明は screen(1) を参照のこと.
%-Lw
現在のウィンドウより前の番号・フラグ・タイトル
%{= dd}%n%f* %t%{-}
現在のウィンドウの番号・フラグ・タイトル (前景・背景色はデフォルト色 = 反転)
%+Lw
現在のウィンドウより後の番号・フラグ・タイトル
%=
(| 以降を右に寄せるために) 空白で埋める
%Y/%m/%d %c
YYYY/MM/DD 表記の日付と 24 時間表記の時刻
色はデフォルトに任せておけば, Konsole のスキーマを変更しても適切な色で表示してくれる. 「Konsole 使ってんのかよ ププッ」 とか言われそうな気がしないでもない.
ssh 接続時に新規ウィンドウを作成し, そのタイトルを接続先ホスト名に変更する
ここを参考にして, ~/.bashrc に以下を記述. ただ bash 用に書き直しただけ.

# for ssh on screen
ssh_screen()
{
	eval hostname=\${$#}
	screen -t $hostname ssh "$@"
}
if [ x$TERM = xscreen ]
then
	alias ssh=ssh_screen
fi
接続先からログアウトしたらそのウィンドウも閉じてくれるし.