XIM (X Input Method)
Механизм X11 для набора текста на языках, где знаков больше, чем клавиш на клавиатуре.
Японский, китайский и корейский набирают, вводя звуки или компоненты и выбирая из кандидатов. Для этого нужна отдельная программа — метод ввода, — стоящая между клавиатурой и приложением. Интерфейс XIM появился в X11R5 в 1991 году, а в X11R6 добавили сетевой протокол, чтобы сервер метода ввода работал отдельным процессом. Клиент выбирает стиль preedit: on-the-spot прямо в поле ввода, over-the-spot в маленьком окошке у курсора, off-the-spot в строке состояния.
Сервер выбирается переменной окружения XMODIFIERS=@im=…. Современные фреймворки вроде IBus и fcitx предпочитают общаться с GTK и Qt напрямую, но для старых программ XIM всё ещё предлагают. Оно работает — примерно в том смысле, в каком работает старый мост.