flashsign --- 電光掲示板クライアント ---
起動時オプション
-s 流れるスピード。msec 毎に文字が流れる。
「スピード」と言うものの、数が大きいほど遅く
なる。
default: INTERVAL(250)
-f
-F 表示するテキストを読み込む named
pipe(FIFO)の名前。
default: なし。
-f で指定すると、終了時に unlink(2)するが、
-F で指定すると unlink(2)しない。
-u UDP ポートの番号。
default: なし。
-w 掲示板の幅(Byte)。
default: WIDTH(65)
-r 新着テキストを表示する際にウィンドウが raise
する。
-p pid ファイルのファイル名。
-fn フォント名。
default: -*--24-*
使用法
-F または -f で指定した FIFO、あるいは -u で指定した
ポート番号の UDP ソケットに文字列を書き込むと「電光
掲示板」に表示される。
問題点
- 起動後、ウィンドウのサイズを変更しても「電光掲示板」
のサイズが追従しない。
- -w を指定しなくても、-geometry オプションやリソー
スで渡されたウィンドウのサイズから「電光掲示板」の
サイズを決定したい。
-> ウィンドウまたは labelWidget のサイズとフォント
の幅を得られれば計算できる?
- UDP ソケットを使う場合のセキュリティについて、検討
を要する。
-> 起動時オプションで ACL を生成し、getpeername()
から得たクライアントのアドレスをチェック?
- wakeup() の中で EUC 漢字が 2byte で1文字を表現して
おり、8bit 目が立っていることに依存している。
-> I18N としては問題あり。
アイディア
- -F で指定されたファイルを stat() して FIFO だったら
cleanup() の中で現在表示中のテキストをファイル
(FIFO)に書き出して終了すると便利かも。
- v6!
改変履歴
- ver.1.2
- lshift()関数に問題があり、右端1文字だけが表示され、
左方向へテキストが流れて行かない問題を修正した。
- この問題は FreeBSD 4.x(gcc 2.95 あたり?)では発生
していなかったが、FreeBSD 6.2(gcc version 3.4.6
[FreeBSD] 20060305)で発生した。
$Id: 00README.html 137 2018-10-21 07:09:48Z kohi $