IMEの各種設定のうちキーバインドやローマ字仮名変換ルールなどは基本的な機能として用意されていることがほとんどですが、例えば、標準以外の辞書を使いたいとか候補を整形したいなどの要望に答えるため、いくつかのIMEでは簡易的なスクリプトを組むことでそれらを実現できる機能を持っています。
実現可能な機能については各IMEによって異なりますが、主に以下のような機能を有しているようです。
- 外部からデータを取得する
- 外部にデータを出力する
- 動的に候補や注釈を生成する
- これらをスクリプト言語で組める
ATOK
ATOKダイレクトAPI
http://atok.com/useful/developer/api/
使用言語 : Perl, Ruby, Python
SKK日本語入力FEP
SKKGate
http://coexe.web.fc2.com/skkgate.html
SKKプラス
http://coexe.web.fc2.com/skkextend.html
使用言語 : JavaScript など
CorvusSKK
Lua拡張
https://github.com/nathancorvussolis/corvusskk/wiki#Lua
https://github.com/nathancorvussolis/corvusskk/blob/master/installer/config-lua/init.lua
使用言語 : Lua
SKK日本語入力FEPとCorvusSKKに関しては、操作体系の元ネタであるSKKがEmacsLispで記述された候補を実行して動的に候補を生成する機能を元々持っているので、これを拡張可能にしているのも自然な流れかなと思います。
Windows用IMEでユーザー数が多いMS-IMEとGoogle日本語入力には拡張機能はないようですが、Android用のGoogle日本語入力やATOKには他のアプリのと連携を行うマッシュルーム機能があるそうです。
以前某IMEでも話題になりましたが、気を付けなければならないのがIMEのセキュリティについてです。
拡張機能を不用意に使うと穴ができる可能性があるので、製作者側にも使用者側にも慎重さが求められます。
IME as a Possible Keylogger (symantec)
https://www.symantec.com/avcenter/reference/ime.as.a.possible.keylogger.pdf
それでは、良い連休を。
0 件のコメント:
コメントを投稿