2008年4月16日の日記を表示中

2008年 4月16日 (水)

uim.el

何か複数フレーム開いて使ってたら突然バッファの中身が消失しました.しかもundo効かないし ((((;゜Д゜))) ガクガクブルブル.どうやら複数フレームで異なるバッファを開いて,それぞれでプリエディットを出した状態でフレームを切り替えると,プリエディットを消す際の範囲がおかしくなって大変なところまで消してしまう模様.

この前の commit でエンバグしたかなぁとちょっとバージョンを落としてみるも全然状況は改善せず.環境がおかしい? いや別の環境でも再現するなぁ.じゃあEmacs 22なのがまずいのかな? ぬ,Emacs21でも出るし,XEmacsでもおかしくなるぞ・・・(XEmacsはちょっと症状違うけど).・・・こ,これは・・・(ゴクリ)

ひょ,ひょっとして・・・と1.4.2 を入れてみたんですが,これが見事に再現 _|‾|○.一体いつからあるんだこのバグ.ひょっとして最初からずっとあるのかな・・・.C-x 5 2 とか昔から大好きで使いまくりなので,今までこれを踏んでなかったのが奇跡という感じなんですが・・・.本気で悪い夢でも見てるんじゃないかと疑いましたがどうやら現実のようですね (;´Д`)

原因を探ってみたところ,プリエディット表示前の位置を記憶するのに「uim-point」とかいう point 関数の代わりと思しき謎の関数 (といっても書いたのは多分自分なんですが) を使っているのが悪いっぽい.・・・ここで二つの疑問が.一つは,なぜこの関数がうまく機能していないのか.もう一つは,なぜ素直にpoint関数を利用していないのか・・・.

(defun uim-point ()
   (window-point (get-buffer-window (current-buffer))))

で,とりあえずpoint関数に置き換えてみたところGNU Emacsでは問題が出なくなりました.F9 を押すと変換候補がメニューっぽく出てくる超かっこいい Byeoru も大丈夫そう.こうなると,uim-point がますます謎.何がしたくてこうなったんだろうなぁ・・・.

ちなみに,XEmacsの方は,フォーカスするフレームを切り替えると,フォーカスが外れた方のプリエディットが消えちゃったりする問題があったんですが,既にフォーカスから外れたコンテキストに対して UNFOCUSED コマンドが送られていて,その際エラーを返してしまっていたのがまずかった模様.uim-el-agent側を「何度もフォーカスから外れてもいいじゃない」という風にしたら直りました.

しかし,これ,やっぱ最初からずっとあったのかなぁ.調べるのが怖い・・・(;´Д`)

RFA

昨日はスティック作るので精一杯だったわけですが,今日はそのスティックを使って遊んでみました.・・・(・∀・)イイ! いいね! ゲームももちろんいいんですが,このやわらかレバーVSHGがなかなかいい.前にPCでちょっと使ったときはイマイチかなーと思ったんですが,何か今日は手にしっくりきます.レバーの軸についているカバーを外したのがよかったかな? ま,どんなに道具がよかろうとも,結局のところ遊ぶのは自分なわけで,1時間くらいやって4面ボスまでという何かいつも通りの展開なわけで (´・ω・`)

2008年4月16日の日記を表示中

中の人情報

名前:
nosuke (のすけ)
メール:
sasugaanijaのgmail.com
「の」は「@」みたいな
関連リンク:

カレンダー

2008年4月
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30      

<<先月分

翌月分>>

最新の10件のエントリ

最近の10件のコメント

過去ログ