随感録 (1999年6月)

 駄文。

1999.06.30(水)

 近頃,Linux機の電源が突然切れることがある。あるいは家に帰って使おうとしたら電源が切れてるとか。

 別にファンが故障してるわけでもなさそうだしケースも熱くない。電圧が低くなってるのかとも思ったが,それならWindows機も同じコンセントから取ってるんだから,一緒に落ちるはず。単に電源の故障?

 いくらOSが安定してても,電源が切れるのは回避できない。24時間365日連続運用は止めて,毎晩電源を切るようにするかな。

1999.06.29(火)

 雨の日に出歩くのってやーねぇ。

 なんでみんな甲子園町8と甲子園八番町を間違えるかなぁ。郵便屋さん,宅急便屋さん,ピザ屋さん,と一通り間違えられてるが,市役所でもキッチリ間違えられた。何かお約束があるとか,あるいはわざと?

--
 縦書きコントロール(widget)が作れないか検討してみる。

 IMサーバーに現在の文脈が縦書きか横書きか知らせる方法がない。ということは日本語入力でover-the-spot (XIMPreeditPosition) スタイルは使えないな。on-the-spot (XIMPreeditCallbacks) が必須になる。これはQ's Nicolatterでも実装しないと。

 縦中横はちょっと難しいか。簡単に済ませようと思ったら,2桁までの数字,単位記号としての英単語(「kg」とか)だけでいいかな?

 禁則処理は単純なのだったら大したことない。行頭禁止,行末禁止をワードラップと同様に考えて,不可分文字列として単に追い出せばいい。

 アキを詰めて追い込むようにするのは大変そう。括弧や句読点は半角で組んで2分アキとか入れるのが普通で,追い込むときにここを詰めるが,JIS X 0208フォントって括弧とかも全角で作ってるでしょ。どうするんだろう。

1999.06.26(土)

 glade 0.5.0でQ's Nicolatter設定プログラムを書く。1999.01.24でも試してるが,一本書き上げたのは初めて。

 やっぱりダイアログボックスとかは手で書くもんじゃないわ。さくっとできてしまった。コンパイル,実行するのにglade本体がいらないのも嬉しい。

 ちょっと気になったのは,一覧性の悪さと,gtk+のプロパティを全てサポートしてるわけじゃないこと,かな。

http://glade.pn.org/

1999.06.25(金)

 Q's Nicolatter for Linux v0.893を公開。gtk+版は一通り機能の実装が終わったかな?

1999.06.18(金)

 Cannaのワイド文字対応化パッチを書いた。1999.06.11で大変そう,とか書いてるが,実際にやってみると大したことなかった。

 で,これを広く採用してもらうにはどうしたらいいんだろ?

1999.06.17(木)

 Q's Nicolatter for Linux 0.8882を公開。Xlibとの通信に何かしら重大な問題があるらしく,ちっとも前に進まない。協力者を必要としているなり。

1999.06.16(水)

 土曜日,ライブを観てきた。40過ぎてもバンドできるっていいよね。

 日曜日,『PAYBACK』を観た。メル,かっこいいー。こういう,タフな映画がいい。

 月曜日,免許の種類を足しに明石の試験場まで行ってきた。初心者だから3年かな,とか思ったが,最初から金色にしてくれた。ちょっと意外。

 えーっと,次は職探しか。

1999.06.11(金)

 Q's Nicolatter for Linuxでcannaが使えないかと思って,簡単なテスト用プログラムを書いてみたり,直接ソースを読んだりしてみる。

 ふーむ,ワイド文字の扱いが雑,というか = 1バイトを仮定してる箇所が結構あるな。これは大変そう。

1999.06.07(月)

 ちょっと国税局まで行ってきた。3日にも行ってるが,そのとき書類不備でそのまま返ってきたのは秘密だ。

 『X』9巻〜11巻を入手。

--
 親指シフトキーボードをドライバの辺りで実装する方法,か。

 アプリケーション,IMサーバーには手を加えなくても大丈夫かな? (モードの一致は考慮しない)

 親指シフトキーボードは「が」など濁音もあるので,XK_kana_KAなどだけでなくXK_kana_GAなどを追加する。左シフト,右シフトを区別するので,ShiftMaskを拡張するか,多分空いてるMod5Mask辺りを使うかして,XLookupString()やXKeysymToString()で仮名を取れるようにする。

 ドライバは同時打鍵ロジックを処理し,キーとシフト状態をXサーバーに通知する。ここも左右シフトを区別できるように拡張しないといけない?

 確かにこれがX的に正しいといえば正しいんだろうけど,大変そう,っていうか私なら絶対採用しない。

1999.07.09追記:
 X的に正しくても,そもそもXの方式がおかしい。KeySymはグループ(モード),レベル(シフト)別になっている。しかもKeySymには文字の名前が付けられているから,ロケールが違う場合にも異なるKeySymになる。

 さて,この方式だと,KeySymって一体いくつ必要でしょう?

 キー文字変換後の文字ごとにKeySymを定義しているのが設計の誤り。

1999.06.06(日)

 親指シフトキーボードの物理デザインで,[Shift]キーを中央に持ってきて,英字モードは同時押下,仮名モードは同時打鍵とすればいい,と考えていたが,仮名モードでも[Shift]キーを範囲選択に使ってますな。うーん,親指キーはシフトキーでない?

--
 linux-tech MLでどの層で同時打鍵ロジック,あるいはキー仮名変換を実装するか,という話。

 ウィンドウごとに英字モード,仮名モードが異なることに注意すると,ロジック自体はどこに組み込んでもいいけど,モードはIMサーバーが主導して設定しないといけないだろう。あるウィンドウが現在どのモードにあるか知っているのはIMサーバーだけだから。

 例えばドライバにモードを持たせて,IMサーバーがドライバからの通知によってモードを変更する構造だと,マウスクリックによるフォーカス・ウィンドウの移動が酷い。ウィンドウによっては(非国際化アプリで)IMサーバーが仲介しない場合がある。

1999.06.03(木)

 TRONWARE #57を入手。

 Linux関連の雑誌が随分でてたので,ちらほらと立ち読みしてみる。Red Hat Linux 6.0が収録されてるのにちょっと食指が動いたが,一から再インストールも面倒なので,パス。

1999.06.02(水)

 天気が良かったので,コンビニでパンを買って,ベンチに座って昼食。鳥のフンがクリティカル・ヒット。あぅ。

--
 ホームページでフォントが見る人によって異なる,何とかならない? という話。

 まぁ,フォントの大きさが変わっても表示が崩れないようにデザインするのが望ましいけど,フォントを固定してしまうのが楽。

 default.cssとかファイルを作って,次のようにする。

body {
    font-size: 10pt;
}

 HTMLファイルの方では,HEADの中にLINKタグを入れる。

<head>
    <link rel="stylesheet" href="./default.css" type="text/css" charset="Shift_JIS">
</head>


1999.06.01(火)

通信傍受法案,衆院可決おめでとうー!

 あらゆる犯罪が起こる前に阻止されるクリーンな世の中への第一歩。素晴らしい!!

 何もしていない人間を逮捕して,それを責められても逮捕によって犯罪を未然に防げた,と反論できる世界か。まさにバラ色よね?