インプットメソッド
キーボードのストロークやマウスの動きなど、あらゆるデータを入力として受け取ることができるオペレーティングシステムのコンポーネントまたはプログラム。
概要
編集
PCでは、一般に欧文の入力はキーボードでタイプライターと同様に直接入力すればよいが、日本語︵仮名、漢字︶や中国語︵簡体字または繁体字︶、朝鮮語︵ハングル︶など、使用文字数が数千を超える言語の文章を入力する際にはすべての文字に1つのキーを割り当てることは非現実的である。したがって、複数ストロークのキー操作で1文字を入力するなどの仕組みが必要となり、これがインプットメソッドである。携帯電話などでは英文入力にもキー数が不足するため、何らかの方法が必要となる。また、US/UKキーボードでASCII範囲外のヨーロッパ言語の文字︵フランス語やドイツ語など︶を入力したい場合にも、類似の仕組みでソフトウェアによって言語を切り替えて入力することができる。
実装形態
編集
OSもしくはウィンドウシステム側で、文章入力を必要とするアプリケーションソフトウェアのためのフレームワークを提供し、それにのっとってインプットメソッドの機能が構築されている場合も多い。また、サードパーティが独自のインプットメソッドサービスを構築するためのフレームワークが提供されていることも多い。ただし、入力システムはユーザーによって入力された一連の文字列を記憶することができ、入力情報を無断で外部のサーバーに送信して個人情報を収集されてしまうこともあるため、使用にあたって提供元や利用規約などに十分留意して判断する必要がある[1]。
Windowsでは、インプットメソッドをインプット メソッド エディタ (Input Method Editor: IME) と呼んでいる。COMベースのフレームワークとしてText Services Framework (TSF) がある。マイクロソフトはWindowsに標準搭載する形で﹁Microsoft IME﹂(MS-IME) と呼ばれる入力サービスコンポーネントを公式に提供している。また、MS-IMEとは別に、かつてはMicrosoft Officeにバンドルされる形で﹁Office IME﹂と呼ばれるカスタム版も提供されていた。
Androidでもソフトウェアキーボード全般の意味でインプット メソッド エディタ (IME) という用語が使われる[2][3]。また、入力サービスを意味するInput Method Engineの略でIMEが使われることもある[4]。Androidではサードパーティ製のソフトウェアキーボードをアプリケーションソフトウェア︵アプリ︶の一種として自由にインストールすることができ、Google Playストアなどから入手できるほか、端末ベンダーが独自のソフトウェアキーボードを標準搭載︵プリインストール︶していることもある。入力サービスと通信するアプリケーション側のコンポーネントをエディタ︵editor︶と呼ぶが、通常はテキストボックスとして標準ウィジェットの
android.widget.EditTex
t
を使えば事足りるため、自前でエディタを実装する必要はない。
MacintoshのmacOS英語環境ではInput Method、日本語環境では入力プログラム[注釈1]、UNIXのX Window SystemではX Input Method (XIM) というように、OSごとに異なる名称で呼ばれている。
日本語環境におけるインプットメソッド
編集「日本語入力システム」も参照
日本語の文章は、漢字・ひらがな・カタカナ・半角英数・全角英数・各種記号など、複数の文字種が混在した複雑な文章となり、また同音異義語が多いため、特に入力システムにおける変換機能のアルゴリズムや学習データの良し悪しが入力のしやすさを左右する。
MS-DOSでは多くの場合、フロントエンドプロセッサ︵FEP, 日本語入力フロントエンドプロセッサ︶として、キー入力に割り込むかたちで実装されていた。