2008年2月18日の日記を表示中

2008年 2月18日 (月)

XEmcas の Multi_key

XEmacsはデフォルトで Multi_Key に対応しているようで,Multi_key → 「~」 → 「a」 とか入力すると,ちゃんと 「ã」 がバッファに挿入されます.が,uim.el が ON になっていると,エラーに落ちてしまうことが判明.で,これに,対処してみたという話.

まず,「Multi_key」は,デフォルトだと function-key-map で 「compose-map」というキーマップにマップされてます.が,これ,autoload を使って,Multi_key が押された時点で読み込まれるようになってまして,どうもこれがうまく読み込めていない模様です.Emacs だと何もしないでも勝手に読んでくれる気がするんですが (何かした記憶がないし),この辺,XEmacsならではなんですかねー.というわけで,まず,function-key-map を引いた際に,中身が keymap か マクロの autoload だったら先に load しちゃうようにして対処してみました.

これで,function-key-map を引いた時点でキーマップが取れて,先に進めるようになったんですが,なぜか Multi_key を起点に何か叩いても文字が挿入されません. Multi_key → 「A」 → 「A」 とやっても,何も起こらず(本来「@」が入るはず),さらに何か押すとエラー発生 (´・ω・`). デバッグメッセージを見ると,ちゃんとキーマップ引いて文字列に変換されてるのに・・・.あ,その後何もしていじゃん (;´Д`).これは普通に Emacs でも問題になるバグですな・・・.というわけで,function-key-map での変換結果が文字列だったらそのままバッファに挿入するように修正.

これで終わりかと思いきや,まだ続きが.「@」は入るけど,Multi_key → 「~」 → 「a」 で 「ã」 が入ってくれず「a」が挿入されます.よくわからんのですが,こういう特殊な文字は「[atilde]」みたいなベクトルになって,self-insert-command で挿入されるっぽい感じ? って,ここだけ XEmacs っぽくないなぁw.このテのベクトルだけ特殊扱いすれば良さそうだったので,場当たり的にコマンドを実行する部分でベクトルの中身を eventp して nil だったら違うことをする,みたいにして対処しました.これでようやく特殊なアルファベットも Multi_key で一通り入力出きるようになりましたとさ.ふー.大した差分もないのに,何かやたらと疲れたなー.

ちなみに,Multi_key は XEmacsの中では 「multi-key」って名前なんですが,どこでこの名前に変換されているのか全然見つかりません.何か他にもこういうのがあればついでに足しておきたいところなんですが・・・.

[コメントを書く]

いわた 2008/02/19(火) 21:07:18
対応ありがとうございます。
ところで、Multi_key+A+Aは"å"なのでは?
いわた 2008/02/19(火) 21:08:00
うぎゃー化けたorz
nosuke 2008/02/19(火) 22:26:11
ソースの lisp/x-compose.el によると,+A+Aのときは「@」でいいみたいです.
GTKだと確かに+A+Aでaの上にまるが出ますね.
ちなみに,XEmacsでこれを入力するには Multi_key + a + * らしいです.

同じcomposeでも,出所が違うんですかねー. x-compose.el には,以下のように書いてありますなー.
;; This file implements DEC-, OpenWindows-, and HP-compatible "Compose"
;; processing for XEmacs.
いわた 2008/02/20(水) 00:00:27
どれも違うのですか。
勉強になりました( ´・ω・)つ゛ ヘー

虫歯

歯医者行ってきました.とりあえず診てもらったところ,神経抜くか抜かないか微妙なラインみたいな感じだったんですが,削ってみた結果,やっぱ抜くかみたいな流れに (´・ω・`).削られた後,ゴリゴリされたりひっぱられたりされてるような感じがして,いつ激痛がくるんだろうと ガクブル してたら「はい,終わりです」って感じで終わっちゃいました.そういうもんか.続きはまた明後日.

ぐわんげ/エスプレイド サントラとか

あたふたしながら注文しましたw.時間になってリロードしたら,突然サイトのトップからリンクが消えて,何度リロードしても出てこなくて焦ってたっところ,「左のメニューから行け」というシューター部員の超ありがたい助言が.ていうか慌てすぎだ自分 orz.で,後で知ったわけですが,全然余裕だったみたいですね.これ書いてる時点 (日付も変わろうかという頃) でもまだあるし.

しかし,ケイブゲームグッズオンラインショップって,普段全然モノがない所とか,何かのゲームの中に出てくるお店みたいだよなぁw.何のゲームだろう.ランドストーカー? ゼルダ? 思い出せん・・・.

ケツイの会3

たいしてゲーセンで遊んでない上に,DVDも1回しか見ていないという,どう見ても底辺レベルの人間ですが, ケツイの会3 に行ってみようかと思ってたりしています.が,なかなか周りの人がつれません (´・ω・`).「晩御飯を食べに来たらケツイの会をやっていた」だけに,単身はちょっとなぁ・・・.まあ,行けば名前を見たり聞いたりしたことのある人,いっぱいいそうですが.

うーん,他に多少なりとも興味がありそうなのって,誰がいるかなー.あ○ろ,て○じん (アフロとかテムジンとかじゃないよ) あたりはどうかなぁ・・・あ,もっこすがいるじゃん. 秋葉原に飯食いに行こうぜーと言えば来てくれるに違いないw

[コメントを書く]

あおれんじゃ 2008/02/20(水) 08:22:50
ついったーではお世話になってます。aorenjarです。
ご縁があってなんとなくケツイの会3行きますよ。シューター部界隈でも他に参加される方いらっしゃるようなので、ぜひ会場でお会いしましょうよ!
nosuke 2008/02/21(木) 09:29:50
どうもです.底辺ながら参加することにしました.
当日はよろしくお願いしまーす.
#まさかこんな僻地にコメント頂けるとは・・・w
hyousuke 2008/02/21(木) 23:05:39
もし偶然秋葉原にいるなどの事象が発生すれば参加します(※高確率)
nosuke 2008/02/22(金) 02:53:18
おマジか.ていうか君秋葉原にいすぎだから(笑)

2008年2月18日の日記を表示中

中の人情報

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

カレンダー

2008年2月
          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  

<<先月分

翌月分>>

最新の10件のエントリ

最近の10件のコメント

過去ログ