[トップ][ノート][編集履歴][一覧][最近の更新][->English]

uim/2008/01/08/Telex

Category of uim

隣の席に座っているヴェトナム人留学生とimのセッティングをしよう、 という段になって、 「uimでもTiếng Việtが入力できるぜ〜」と自慢したところ、 Wikipedia:VIQRは知らないというので、 調べてみたら、 他にWikipedia:Telex_(IME)Wikipedia:VNIがあるそうな。 で、uimにTelexを載っけようっていうわけ。

scm/viqr.scmのテーブルを参考に、Telexの変換表をヘコヘコ手打ちしながら、 Wikipedia:Telex_(IME)をさらに読んでみると、 Tone markings(声調?)なんて項目があって、 これは、文字変換する側からすると、直前の子音を飛び越して母音にアクセントがついたり、 逆に外したりしてしまうように見えるのね†1。

で、これを実装するには、普通のテーブル変換じゃどうやっても無理。 なんでuimにVIQRしかないか納得(VNIも恐らくTelexと同様)。 generic.scmを使わないでimを作るのは面倒だもの。

これはきちんとstate machineを作ってimに組み込んでやらないといけないなあ。 ということで次のcommitはtelex.scmになりそう。

ちなみにテーブル変換版: files:uim-telex-table.diff。 これだけでもまあ使えるといえば使える。 ざっと手近な実装を見ると、 quailやgtk-im-viはこれと同じテーブル変換、 m17n-dbはstate machineみたい。


†1: もちろん、母音の直後に入れてやってもよい。 例えば、"sawcs"も"sawsc"もどちらも"sắc"に変換されて、 後者はテーブル変換のアルゴリズムが適用可能。 でも対症療法っぽくてやだなあ。

blog comments powered by Disqus