日英混在で書きたいならモードレスな日本語入力メソッドはいかが

午前中ミーティング。今日までに調べておかないといけないことが間に合わなかったので申し訳ない。金曜日の仕事かな……。

昨日 Kinect における日本語入力はどうすればいいのか、という話を日記に書いたが、来年の言語処理学会のテーマセッション3は「日本語入力における言語処理」だそうで、自分も話す予定 (実験結果を発表するというよりは問題提起になるけど) なので他の方々もネタがあればどうぞ〜。

最近の日本語入力というとおもしろいのは @kiyoka さんが開発されているSekka。モードレスなので、ローマ字で入力していって変換したいところで C-j を押して変換、という形式。

モードレスな入力メソッド、前 @tettsyun くんに話したら知らなかったようなので、まとめておくと、普通の日本語入力はローマ字をタイプするごとにひらがなに変換し、適当なところで漢字に変換するが、これは「日本語モード」というモードがあるからで、日英を混在させて打ったりするときには使いにくい。そういうとき、モードレスな入力は便利。上記の Sekka のように、べたべたキーボードで入力し、変換したいところだけ変換すればよい、というわけ。(視覚的フィードバックがないのが弱点だが)

似たものは

などがある。mlh なんかは変換もおもしろくて、スラッシュを入力したところから前を変換するのだが、スラッシュの前の文字で挙動を変える。たとえばドキュメントから例を取ってくると

/usr/local/bin/q/nif/bainarik/gaarimasu.f/
/usr/local/bin/ にバイナリがあります.
Emacsq/haookii./
Emacs は大きい.
emacsc/lispc/ha/maclispc/keino/lisps/desu./
Emacs Lisp は Maclisp 系の lisp です.
gnup/toha/gnuc/'ss/notc/unixc/noryakudesu./
GNU とは Gnu's Not Unix の略です.

こんな感じ。(q/ は無変換、f/ はひらがな変換、k/ はカタカナ変換、などなど)
このあたり、昔は Debian なんかでもパッケージになっていたのですぐ試せたのだが、CannaWnn 使っている人がほとんどいなくなってしまい、いまではどうなっているのかなぁ。調べてみるとゅであんしぃ(boiling-anthy) というのが公開されていて、Anthy でも使えるらしい (YC などと同じく、入力して Ctrl-J で一気に変換するタイプ)。モードレスな入力メソッド試したことなかったらぜひどうぞ。

あと@nokuno さんが Mozc の辞書をベースに統計的自然言語処理エンジン StaKK というのを開発したそうだ。Sekka もそうだが、みなさん SKK に敬意を払ってらっしゃるのだろうか (笑)

自分も奈良先端大に来たきっかけは、SKK と PRIME を合成したような日本語入力エンジンを作ろうかと思っていたことなのだが、あっという間に5年経ってしまった (汗) 入学してから取り組んだメインの研究は(奈良に来たきっかけの)日本語入力でも(入学前やりたいと思っていた)機械翻訳でもないのだが、結局両方最終的には取り組むことができたし、「これがメインにできないと嫌!」と意固地になるよりは、もっと柔軟になんでも取り組んでみたら芸風も広がるのではないかなと思う。

habib-a さんと話すといつも「パキスタンの国語のウルドゥー語は話者が6,000万人もいるのに、Windowsウルドゥー語のソフトウェアキーボードは足りないキーがあるし、MaciPhone に至ってはそもそもウルドゥー語がサポートされていない」という話になるのだが、確かに話者が1億3,000万人もいて、自分たちで入力メソッドを作れるだけのグループがあちこちにあり、OS にもちゃんと搭載されている、という日本語ってのは、恵まれているのかもな。