xterm (kterm) で、タイトル・バーに文字列を設定するには、エス
ケープシーケンスで次のようにすればいいですよね。
printf("\033]2;%s\007",title);
逆に、現在のタイトルを得るには、どうすればいいでしょうか。
あれ、でも自作のスクリプトには、\033]0;と書いてあるなあ。
世の中のドキュメントには、0;でなくて 2; と書いてあるけど。
何か違うのだろう。
resize コマンドは、右したのカーソルの位置を読んでますよね。
あれと似たような方法でタイトルが得られないでしょうか。
簡単な X のプログラムを書く必要があるでしょうか。
kterm で、次のようなスクリプトをよく使っています。
alias dup 'kterm -n $hostname -T $hostname \!*'
これだと、端末は増えますが、タイトルが hostname 以外の時にコ
ピーされません。
よろしくお願いします。
\\ 新城 靖 (しんじょう やすし) \\
\\ 筑波大学 電子・情報 \\
<YAS.07Ap...@kirk.is.tsukuba.ac.jp>の記事において
y...@is.tsukuba.ac.jpさんは書きました。
> xterm (kterm) で、タイトル・バーに文字列を設定するには、エス
> ケープシーケンスで次のようにすればいいですよね。
> printf("\033]2;%s\007",title);
> 逆に、現在のタイトルを得るには、どうすればいいでしょうか。
ソースを見てみましたが無さそうです。
xprop -id $WINDOWID
から切り出すとか、どうでしょう。
> あれ、でも自作のスクリプトには、\033]0;と書いてあるなあ。
> 世の中のドキュメントには、0;でなくて 2; と書いてあるけど。
> 何か違うのだろう。
switch(mode) {
case 0: /* new icon name and title*/
Changename(buf);
Changetitle(buf);
break;
case 1: /* new icon name only */
Changename(buf);
break;
case 2: /* new title only */
Changetitle(buf);
break;
...
}
だそうです。
--
伊藤 康史