2008年12月4日木曜日

xtermやktermのウインドウタイトルを変更する

昔どこかで覚えた、たまに便利なテクニック。正直、わりとどうでもいい小ネタですが…



特定のコントロールシーケンスを出力することで、xtermやktermのウインドウタイトルに表示する文字列を変更できます。



200812031



もちろん、xtermを起動するときのコマンドラインオプション「-title」で指定することもできますが、ここで紹介するのは、すでに起動済みのxtermのタイトルを、その場で変更する方法です。



特定のコントロールシーケンスというのは、こんなのです。

^[]2;${TITLE}^G^[]1;${TITLE}^G

"^["はエスケープ、"^G"はControl+G、${TITLE}は、タイトルに設定したい文字列です。
前半はウインドウのタイトルを設定するもの、後半はアイコンのタイトルを設定するものです。



わかりにくいのでシェルスクリプトにしました。

「title.sh.txt」をダウンロード



「title.sh.gz」をダウンロード



(おせっかいなことに、ブラウザがコントロールコードを勝手に削除してしまうことがあるみたいなので、gzip圧縮したものも置いておきました。ん?ブラウザじゃなくてWindows上で使ってるテキストエディタが消してるみたいだ)

title.shとかいう名前で保存しておいて、「./title.sh aho」のように実行します。



くだらない応用例としては、時刻を表示したりもできます。



200812032

「title-clock.sh.txt」をダウンロード



「title-clock.sh.gz」をダウンロード



xtermのマニュアルを見ると、「Xterm Control Sequences」というドキュメントを参照しろ、と出ているのですが、これのことです。



http://invisible-island.net/xterm/ctlseqs/ctlseqs.html



このドキュメント、暗号のようにわかりづらいです。正確に記述はされていますが、ぱっとみてすぐには理解できないというか…。






0 件のコメント:

コメントを投稿