ttt

getttyent

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

2008-12-03 22:53:13 | デジタル・インターネット

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

特定のコントロールシーケンスを出力することで、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

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