screenで開いているウィンドウの数が増えてくると, どれがどれだったか分からなくなってくる. かと言って, いちいちウィンドウに名前をつけるのも面倒. いまいるディレクトリや, 起動しているプログラムに応じて自動的に名前がついて欲しい. zshを使っている限り, precmdとpreexecでなんとかなりそうだったのでやってみた. フォアグラウンドにプログラムを実行中はそのコマンド名 ふつうは引数部分を含まない名前 連想配列SCREEN_TITLE_CMD_ARGに値があれば, コマンド配列にその値をインデックスとしてアクセスした結果を使う 例: SCREEN_TITLE_CMD_ARG=(ssh -1 man -1) (sshやmanのときは最後の引数を名前にする) 連想配列SCREEN_TITLE_CMD_IGNOREに含まれているコマンドは無視 プロンプトが出ているときはカレント