mclock はコンパクト

筆者は普段のウィンドウマネージャは afterstep を使っております。 これは、fvwm ライクな操作性が気に入っているからだけです。 でもって、fvwm との(筆者にとって)唯一の違いは、アイコン化した ウィンドウを resize するのが afterstep は楽
(~/.steprc のとある一行)
        Key Down	A	M	WindowList
な点だけなのですが。。

逆に、afterstep の欠点というか狂おしくも困るところが、 Wharf のサイズがでかいことで、今どき15インチのモニタで 800x600 なデスクトップ空間だと邪魔だったりするのです。 ノート遣いのモバイラーだと今でもそういう人がいるでしょう。

デスクトップの右だろうが下だろうが、xbiff のために Wharf、*clock のために Wharf、xload のために Wharf、と次々と タイルを並べて行くのはなんとなく嫌だ。

そこで、mclock です。これは Markus Koelblin さんの作品。
スクリーンショット(普通の状態)
スクリーンショット(メール到着)
見て判るように、一枚の Wharf に *biff と xload と デジタル時計を 詰め込んであります。

何が良いって、時計と biff が Wharf 一枚に収まることと、たとえば asclock と xbiff を足したのより実行メモリが小さいことです(600Kくらい)。

biffの機能ですが、非常にシンプルでメールスプールのサイズの変化を 監視しているだけです。 /usr/spool/mail/username がデフォルトです。これは、ソース中の mclock.h で define されているので、 筆者のようにメールサーバのスプールを nfs でマウントしている場合 (これはbiffのためだけ)、たとえば
#define MAILBOX_DIRECTORY "/var/spool/mail1"
こんなふうに書き変えます。

それから、メールが到着したときに beep するのが嫌なので XBell 関数を呼んでいる mcloc.c の626行めをコメントアウトしました。

makeとinstallは至って簡単で
% xmkmf
% make
% make install
% make install.man
でいきます。

でもって、~/.steprc に以下のように書き足しておくと
(~/.steprc のとある部分)
         Module Wharf 
         *WharfGeometry -0-64
         *WharfColumns 1
         *Wharf mclock   nil MaxSwallow "mclock" mclock -bg "#8e8a9e" -fg "#7F0000"  -geometry 45x45-1-1 -update 30 -exec xcalendar &
右下にこいつがコンパクトに出て来ます。ついでに、これをクリックすると xcalendar が現れたりします。

追記:

でも, こんな感じに .emacs を書いたら,
(setq display-time-string-forms  '(24-hours ":" minutes
    (if mail "♪")))
(setq display-time-mail-file "/var/spool/mail1/username")
(setq display-time-interval 60)
(display-time)
display-time だけで biff と時計が使えるので,

メールが来てないとき.


メールが来てるとき.


ということで, ♪がついたらメーラーを呼べばいいんですね. あー, これが最もシンプルだ.