Так как UIM не хотел играть в бейсбол после установки Ubuntu 12.04 с нуля, я попробовал IBus, так как это - платформа IME, это идет с Ubuntu по умолчанию.
Однако ibus-table-compose является болью в торце для использования, потому что только для ввода одного символа я должен нажать сочетание клавиш для инициирования IBus сначала, введите соответствующую составную последовательность, затем нажмите сочетание клавиш IBus снова для отключения его. Вместо этого я хотел бы сохранить мой составлять ключевую функциональность в соответствии с XIM, так как это требует меньшего количества нажатий клавиш.
Проблема состоит, тем не менее, в том, что то, когда метод ввода по умолчанию установлен на IBus и IBus, деактивируется так, чтобы (AIUI, так как я запустил его с ibus-демона - xim) это было обойдено в пользу XIM, настройки в ~/.XCompose, кажется, переопределяются собственной версией IBUS, так например, Составляют c, который не дает ą (a-ogonek), когда я определил в.XCompose файле в моем корневом каталоге, но ǎ (a-hacek), как определено некоторыми другими настройками.
Я стал довольно приученным к своему собственному mnemnonics, так есть ли какой-либо способ заставить мою систему использовать мой собственный ~/.XCompose файл с методом ввода по умолчанию, все еще устанавливаемым на IBus так, чтобы IBus все еще работал, например, в OpenOffice и других приложениях, которые не позволяют Вам выбрать метод ввода с контекстным меню?
Примечание: Это не дубликат вопроса, Как может я добираться сочинить назад на ibus?
Как заявляет @von, вы НЕ МОЖЕТЕ использовать свой .XCompose
с IBUS.
Вы можете использовать uim
в качестве метода ввода, который поддерживает Unicode, как модули GTK +, так и Qt с устаревшей поддержкой XIM
.
Хороший способ обработать ваш .XCompose
и сохранить существующий глобальный Compose:
Установить uim:
sudo apt-get install uim
Сделайте его методом ввода по умолчанию:
im-config -n uim
Отредактируйте .XCompose
и добавьте текущую локаль клавиатуры (в моем случае, [ 117]) как первая строка :
include "/usr/share/X11/locale/en_US.UTF-8/Compose"
Готово! Перезапустите программы, которые вы хотите запустить, чтобы получить файл .XCompose
.
Известные проблемы
Ubuntu Unity Dash никогда не создаст Cedilla.
Другие дистрибутивы
Я немного поиграл с .XCompose
и методами ввода в современных дистрибутивах, пытаясь заставить Linux сохранить то же поведение клавиатуры, что и в Windows (TM) для латинского языки (вывод ç
вместо ć
, без ударных согласных и т. д.).
Я создал репо с этой инструкцией (для Ubuntu и других дистрибутивов тоже): https://github.com/raelgc/win_us_intl
Так как Деннис Уильямсон сказал, что это работает в 16.04 в комментарии выше, я протестировал в этой новой установке 18.04 с короткой .XCompose
, скопированной из моей предыдущей установки 16.04.
# Import default rules from the system Compose file
include "%L"
# Custom definitions
<Multi_key> <R> <R> <R> : "ʁ" U0281 # LATIN LETTER SMALL CAPITAL INVERTED R
Затем я запустил ibus restart
в терминале и могу набрать ʁ.
Проблема, однако, в том, что, когда метод ввода по умолчанию установлен на IBus, а IBus деактивирован, так что (AIUI, так как я начал его с ibus-daemon --xim), он обходит в пользу XIM настройки в ~ / .XCompose кажутся переопределенными собственной версией IBus, например, Compose c a не дает ą (a-ogonek), как я определил в файле .XCompose в моем домашнем каталоге, но ǎ (a-hacek), как определено некоторыми другими настройками.
blockquote>Похоже, что он не определяется некоторыми другими настройками, в смысле файла конфигурации, который вы можете редактировать. Похоже, что он скомпилирован в жестком коде в файле
gtkimcontextsimpleseqs.h
. Кроме того, кажется, что в этом файле нелегко настроить массивgtk_compose_seqs_compact
и добавить собственные последовательности клавиш Compose. Таблица оптимизирована по пространству, а не легко редактируема. Так что стратегия «просто поменяй источник и перекомпилируй» может оказаться сложнее, чем я думал.Я довольно привык к своей мнемонике, поэтому есть ли способ заставить мою систему использовать мой собственный файл ~ / .XCompose, при этом метод ввода по умолчанию все еще установлен на IBus, чтобы IBus продолжал работать например в OpenOffice и других приложениях, которые не позволяют выбирать метод ввода с помощью контекстного меню?
blockquote>Отчет об ошибке можно найти по адресу https://bugzilla.gnome.org/show_bug .cgi? id = 155010 , в котором есть патч, который, по их словам, позволит настроить таблицу составления. Он по-прежнему не будет использовать ваш файл ~ / .XCompose, и синтаксис будет другим, но это нечто. Но я отмечаю, что рассматриваемая ошибка все еще открыта, поэтому я думаю, что это еще не вошло в официальные релизы.
/etc/environment
) переменные QT_IM_MODULE
, GTK_IM_MODULE
(последние не нужны для гнома) - ibus
, и с XMODIFIERS
по @im=ibus
. & nbsp; & nbsp; 2.α Выполните setxkbmap
с помощью -option
, чтобы выбрать ключ составления. Например. использовать правую клавишу с логотипом: setxkbmap -option compose:rwin
. Это будет перезаписано при перезагрузке.
& nbsp; & nbsp; 2.β Чтобы сохранить настройку при перезагрузке, создайте /etc/X11/xorg.conf.d/00-keyboard.conf
со следующим содержанием:
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbOptions" "compose:rwin"
EndSection
Протестировано и работает как для X11, так и (как минимум setxkbmap
путь) Wayland.
Спасибо за подсказка Фудзиварату , обновленная согласно этой дискуссии .