SVX日記
2008-06-12(Thu) Fedora9、端末チューン
オイラは、Windows上では、日頃から比較的高機能なTERATERMを愛用、自作マクロまで組んでチューニングしていた。なので、正直、gnome端末には物足りなさを感じなくもないのだが、だからといって究極に機能が不足しているわけでもなし、それよりなにより「標準である」というのは結構な強みなので、こいつをそのままベースにしてチューニングを始めることにする。
まず、手始めは、端末画面の色。白地に黒というのはごく一般的ではあるものの、コントラストが高すぎて目に痛い。長時間に渡ってニラめっこ、しかも端末画面では頭を酷使する作業を行う場合が多いので、もう少しリラックスできる暗めの色が望ましいのだ。いうなれば、ホテルの間接照明のような。
というわけで、オイラのチョイスは往年のプラズマディスプレイを彷彿させるオレンジ〜茶系。カラーコードでいうと#FF6020と#481800だ。文字通り異色ではあるが、なかなかどうして、慣れると快適である。また、グリーンディスプレイ風味も悪くない。#40FF00と#204000という感じ。新しい人にはマトリックスっぽいなんて言われるかもしれないが。
意外と重要なのがアイコン。デフォルトのデスクトップテーマであるFedoraは、モノトーン〜青系で統一されている……のは、決して悪くないのだが、タスクバーのアイコンがどれもモノトーンであり、パッと識別できないのはマイナス。特に「端末」と「ファイルブラウザ」は、形状も色配置も似ているせいもあって識別性が最悪で、これが両方とも複数が開かれる性格を持っているから始末が悪い。
そこで、端末の実際の表示イメージに近い「プラズマ」と「グリーン」に色変換したアイコンに変更する。アイコンの編集の際には、ちゃんとGIMPを使うぞ。こういう場合、領域を区切って「着色」機能を使うといい。こんな感じ。
gnome端末は、ウィンドウ+タブと、Operaと同様のウィンドウ構成をとることができる。これは、アカウントごと、ホストごと、用途ごと、など、うまくルール付けをすることで、とても便利に使えるのだが、惜しいのがタブにクローズボタンが「付いている」こと。
単純に、誤ってボタンを押すと、問答無用でタブがクローズしてしまうのだ。動いていたプロセスは置き去りで、元に戻す方法がない。これは困る。TERATERMだったらクローズの際には確認を求められるし、Operaはゴミ箱から元に戻せる。これらは後から、必要にかられて実装された機能なのだと思う。
そもそも、タブはそれ自体がボタンなわけで、その上にボタンつけるのはナンセンスだ。Operaもこの状態がデフォルトになってはいるが、ボタンを取り外す設定も可能なので問題ない。そもそもジェスチャーでクローズできるならそっちを使うべきだ、頻繁に利用するタブ切り替えの都度、イラッとくる必要はない。gnome端末だって、通常はCtrl+Dで閉じることができる。
と、ここで、オープンソースであることを活用するのである。気にくわないなら改造してしまえばいいのだ。Windowsではこうはいかない(場合が多い、アプリがオープンソースでも開発環境が有償である場合が多いし)。
まず、Fedoraのサイトから最新のソースコードを入手する。Fedora上で扱う以上、形式はsrpmが望ましい。rpmbuild -bpでソースパッケージを展開し……ようとしたら、大量の開発関連パッケージが必要だと怒られた。そっか、GUI開発なんてするつもりなかったので、開発関連パッケージは入れてなかったっけ。yumで丸ごと導入す……
# yum grouplist
# yum groupinstall "X ソフトウェア開発" "GNOME ソフトウェア開発"
# rpm -ivh gnome-terminal-2.22.2-1.fc9.src.rpm
# cd /usr/src/redhat/
# rpmbuild -bp SPECS/gnome-terminal.spec
# vi BUILD/gnome-terminal-2.22.2/src/terminal-window.c
1430 // g_signal_connect (G_OBJECT (close_button), "clicked",
1431 // G_CALLBACK (close_button_clicked_cb),
1432 // screen);
# diff -U 3 BUILD/gnome-terminal-2.22.2/src/terminal-window.c.338913-revert-336325 BUILD/gnome-terminal-2.22.2/src/terminal-window.c > ../SOURCES/gnome-terminal-2.15.0-338913-revert-336325.patch
# rpmbuild -ba SPECS/gnome-terminal.spec
# rpm -Uvh RPMS/i386/gnome-terminal-2.22.2-1.fc9.i386.rpm
gnome端末が動いている状態でもインストールはできそうだが、全インスタンスを終了して立ち上げ直すまで、新しいプロセスでは動かないはず。縁起物なので、いったんログアウトして、黒い端末画面からインストールすることをお勧めする。