2005年12月8日の日記の2番目の記事へのコメント
■uim.el
Bugzillaにキタ━━━(゜∀゜)━( ゜∀)━( ゜)━( )━( )━(` )━(A` )━('A`)━━━….って,その機能はデフォルトで有効になっていたのかッ.知らなかったお・・・.Meta-Spaceは普通にAnthyのトグルに使ってるんで,F5に当てて使ってみた所,確かにちゃんと動かんな・・・.あんま(というか全然)余裕無いんですが,マージされてしまった以上,放っとくと回りに御迷惑をお掛けしまくりそうなので簡単に対応できそうか検討.
何で動かないのかっていうと,uim側でIMを切替えたことにuim-el-agentが気付いてないからで,そのせいでIMだけ切り替わってもEmacsとuim-el-agentの間のエンコーディングが元のままだったりするからという感じです.あー.どうやって気付くようにすりゃいいんだこりゃと思ってソース眺めてみたらuim_set_configuration_changed_cbというのを使えばよさそうな感じ.すぐできそうだから書いてみよう.
んで,書き始めて気付いたんですが,uim側でIM切替えるときの出力エンコーディングって・・・UTF-8? LANGに合わせたもの? 何にせよ,Emacsで受け取れる形にしないとダメなんで,uim_set_configuration_changed_cbが呼ばれたら再度コンテキスト捨てて新しいIMに合ったエンコーディングでコンテキスト作り直さないとだめな気が・・・. というわけで,一応そんな感じにしてパッチを書いて見ました.なんかすごい勿体ないことしている気がしてしまいますが・・・.うむ,ひとまず動いているように見えます.途中うっかりもえだんとかやってしまいましたが(^^;,Bugzillaにパッチ置いてみましたよ.
[コメントを書く]
2005年12月8日の日記の2番目の記事へのコメント
切り替える前のエンコーディングじゃないですか?
> 再度コンテキスト捨てて新しいIMに合ったエンコーディングで
> コンテキスト作り直さないとだめな気が
そうみたいですね。
いつも碧い眼鏡の人が御世話になっておりますm(_ _)m
>> uim側でIM切替えるときの出力エンコーディング
> 切り替える前のエンコーディングじゃないですか?
ぐだぐだな文章にコメントいただきありがとうございます.
#自分で読み返してみて何書いてあるのか最初わかりませんでした orz
create-contextとかrelease-contextとか呼んでるんで
コンテキスト中でリセットしてるのかと思ったんですが
なるほど,uc->encoding はそのままでしたか.
ありがとうございます.