Input method (Русский)
Метод ввода
Из Википедии:
- IME, также Реда́ктор ме́тода вво́да, — компьютерная программа (утилита) или компонент операционной системы, предоставляющий возможность пользователям генерировать символы, отсутствующие на клавиатуре, при помощи сочетаний клавиш, электронных словарей и пользовательских настроек. Использование метода ввода обычно необходимо для языков общения, в которых количество графем больше, чем количество клавиш на клавиатуре, например, для ввода китайских или японских иероглифов.
Проще говоря, IME — это программа, которая позволяет вводить нелатинские символы с помощью латинских символов.
Некоторые IME делают это с помощью процесса, называемого романизацией или латинизацией, который представляет собой транслитерацию звуков нелатинского языка в наиболее близкие латинские эквиваленты. Например, японское слово саке — 酒
, также пишется как さけ
, а латинизируется как «sake». Редактор метода ввода выступает в качестве посредника между клавиатурой и полями ввода: когда пользователь вводит «sake», IME перехватывает ввод клавиатуры, заменяет «sake» на 酒
или さけ
(по выбору пользователя) и вводит в поле ввода японские символы вместо нажатых пользователем клавиш.
Существуют также IME, которые не используют романизацию. Одна из самых известных, Цанцзе (Cangjie), делает это путём разложения китайских иероглифов на ключи (радикалы), сопоставления этих ключей со вторым набором своих собственных внутренних ключей и, наконец, сопоставления этих внутренних ключей с латинскими символами. В качестве примера рассмотрим китайское слово «вино» 酒
, которое состоит из ключей 氵
, 一
, ⼉
, 口
и 一
. Цанцзе сопоставляет их с внутренними ключами 水
, 一
, 金
, 田
и 一
, а затем сопоставляет их с латинскими символами emcw
; таким образом, когда пользователь вводит «emcw», Цанцзе перехватывает ввод с клавиатуры, заменяет «emcw» на 酒
и передаёт его в поле ввода.
Система ввода
Большинство редакторов метода ввода являются частью системы ввода (input method framework, IMF) — приложения, которое позволяет пользователю легко переключаться между разными методами ввода. Фактически, это то самое приложение, которое многие из нас неосознанно используют каждый день для переключения между обычными раскладками клавиатуры (например, английской и русской).
Наиболее распространённой системой ввода является IBus (часто используется в средах на базе GTK, таких как GNOME), за ним следуют Fcitx5 (в основном используется в средах на базе Qt, таких как KDE), Scim, Fcitx и Uim. К очень редким относятся Gcin, Nimf и Hime. [1] Кроме того, Emacs — очень популярный текстовый редактор, который имеет свою внутреннюю систему ввода.
Смотрите также Wikipedia:List of input methods for Unix platforms.
Список доступных редакторов метода ввода
В следующей таблице показаны IME для различных языков, доступные в настоящее время в репозиториях Arch и AUR.
Настройка
Чтобы среда рабочего стола правильно зарегистрировала установленную систему ввода как доступную и назначила её для обработки пользовательского ввода, необходимо соответствующим образом настроить некоторые переменные окружения.
GTK_IM_MODULE=gtk-im-context-simple
и QT_IM_MODULE=simple
.Fcitx5
Смотрите Fcitx5#Integration.
Fcitx
Смотрите статью Fcitx для более подробной информации.
GTK_IM_MODULE=fcitx QT_IM_MODULE=fcitx XMODIFIERS=@im=fcitx
IBus
Смотрите статью IBus для более подробной информации.
GTK_IM_MODULE=ibus QT_IM_MODULE=ibus XMODIFIERS=@im=ibus
Uim
Смотрите статью Uim для более подробной информации.
GTK_IM_MODULE=uim QT_IM_MODULE=uim XMODIFIERS=@im=uim
Emacs
Как сказано в Fcitx wiki: «В Emacs есть историческая ошибка, которая заключается в том, что при использовании локали en_US.UTF-8 или аналогичной он никогда не будет использовать XIM (хотя emacs является gtk-приложением, он использует XIM). Единственный способ обойти это — использовать LC_CTYPE, чтобы исправить ситуацию.».
Scim
Смотрите статью Scim для более подробной информации.
GTK_IM_MODULE=scim QT_IM_MODULE=scim XMODIFIERS=@im=scim
Xim
GTK_IM_MODULE=xim QT_IM_MODULE=xim