Urxvtに背景画像をセットする方法

こんにちは。Opera使いの門脇です。

今日、いよいよfirefox3のリリースですね。Opera使いとはいえ、試しに使ってみました。
2xのもっさり感はかなり改善しているようで、サクサクと快適な操作感。
細かい部分も修正されているようで、例えば画像の縮小もかなり綺麗になっている気がするとか、メニューが地味に綺麗になっているとか、
いくつか改善点があったりしますが、今回はあえてfirefoxネタではありません。

今回は、urxvtにpixmapで背景画像をセットする話です。

さて、一日で一番多く見つめているものは人それぞれだと思います。
たとえば、ブラウザ、エディタ、携帯電話、外の景色、未来(?)など。
私の場合は仕事とOS柄、コンソールを見つめている時間が長い。ほぼ一日中見ています。

windozeな場合は、puttyやwinscp、秀丸などを複数使用しますが、
Linuxと言うか、現在の環境は screen + その上で色々 と言うことで、開くウィンドウは一つで大抵の作業は出来ます。
つまり、作業中はずっと同じウィンドウを見続けるので、見続けるなら何か楽しいものを背景に設定できないものかと思ってググってみると・・・

urxvtで普通に透過出きるらしい。

ということでやってみました。


urxvt -tr -sh 20

わずかこれだけ。透過率20で透過します。

.Xdefaultsに、


urxvt*shading:            20
URxvt*inheritPixmap:        True

こんな感じで書いておけば、すべてのurxvtに適用できます。

ただし、Xのrootに何か画像をセットしていないと(rootのデフォルトの模様が見えるだけで)意味ないので、

.xsessionあたりに、


xsetbg ~/.wallpaper

こんな感じで壁紙をセットしておけば完璧です。

スクリーンショットはこんな感じ。

ちなみに、blackboxやfluxboxを使っている人は、テーマに壁紙や模様が含まれていて上書きされる可能性があるので、テーマによっては、
スタイルファイルのrootCommand行を


#rootCommand:                    fbsetroot -mod 4 4 -fg rgb:54/6/6 -bg grey20

のようにコメントアウトしておきます。(KDEやGNOMEはわかりませんのでググってください。多分、壁紙の設定あたりで消せそう)

これで無機質な画面が少しは楽しくなります。ですが、別に仕事の効率が上がるとか、疲れにくいとかそういった効果はないので、無駄と言えば無駄ですが、
無駄なことだけ書くわけにもいかないので、これに関連した少し実用的なことを紹介します。

各コンソールで別々の壁紙を使用する方法

urxvtの起動時に -pixmap を指定すれば背景画像を使用でき、 -tint で色を変更することが出来ます。


urxvtc -pixmap '/path/to/wallpaper/term_wallpaper.jpg;1280:1024:tile' #背景画像を指定 並べて表示
urxvtc -tr -tint red -sh 30 #色を指定 赤 透過率30

ただ、前者の画像は何やっても半透明にする方法が分からなかったので、


convert -modulate 30 -resize 1280x1024 "/path/to/source.jpg" "/path/to/term_wallpaper";

convertで画像を暗くして対処します。
それと、背景画像に色をつけて透過も出来ないようです。

これを使って、本番サーバーを操作するときには背景を真っ赤にするとか、危険そうな画像をセットする、
サーバーごとに画像を変えるなどすれば、多少はミスを減らせるかもしれません。

以上、urxvtの背景画像の件でした。

おまけ
意外と実写でも綺麗に見えること判明。
普段使っている画像はイラストですが、
(著作権の関係上無闇出せないので)今回は私に著作権がある写真で試してみました。
画像は尻手駅にて南武線209系。
京浜東北線は全車廃車予定のようですが、こちらはいつまで使用されるのでしょうか・・・。