Cedilla с 'и c (мертвый ключ) для приложений QT

498
ivarec

Как бразилец, я хочу, чтобы моя американская клавиатура использовала мертвые клавиши и отображала cedilla (ç) в '+ c . Отображение по умолчанию дает мне ć . Для приложений на основе GTK эту настройку легко выполнить, установив следующую переменную среды:

GTK_IM_MODULES=cedilla 

Однако для приложений на основе Qt (например, KWrite) тот же метод не работает:

QT_IM_MODULES=cedilla #doesn't work! 

Приложения Qt продолжат печатать ć. Как мне отладить и исправить это?

Примечание: пожалуйста, не предлагайте подход, приведенный здесь . Набрав AltGr + c, вы чувствуете себя очень чуждо бразильцу, и решение GTK работает просто отлично.

5
Умирает решение, описанное в [этом посте] (https://unix.stackexchange.com/questions/60884/how-to-make-compose-work-in-gtk-and-qt-apps/77473) работать для вас, установить `XMODIFIERS =" @ im = none "`, чтобы позволить X11 обрабатывать мертвые ключи. Смотрите также этот [отчет об ошибке Qt] (https://bugreports.qt.io/browse/QTCREATORBUG-9311). harrymc 6 лет назад 0
К сожалению нет ivarec 6 лет назад 0

1 ответ на вопрос

5
mpy

Создание файла ~/.XComposeсо следующим содержимым должно помочь:

include "%S/en_US.UTF-8/Compose" <dead_acute> <C> : "Ç" <dead_acute> <c> : "ç" 

Однако это работает, только если приложение читает файлы XCompose ( /usr/share/X11/locale/...). Это не настройка X-сервера, но в действительности зависит от приложения, см. Ответ Жиля на UNIX.SE, чтобы узнать, как узнать, читает ли приложение эти файлы.

Удивительно! Поскольку я не использую Wayland, для меня этого достаточно. ivarec 6 лет назад 0

Похожие вопросы