web-dev-qa-db-ja.com

QTアプリ用の 'とc(デッドキー)を持つセディーユ

ブラジル人として、私はアメリカのキーボードでデッドキーを使用し、セディラ(ç)を '+ cにマップすることを望んでいます。デフォルトのマッピングでは、ćが得られます。 GTKベースのアプリケーションの場合、このセットアップは、次の環境変数を設定することで簡単に実現できます。

GTK_IM_MODULES=cedilla

ただし、Qtベースのアプリケーション(KWriteなど)の場合、同じ方法は機能しません。

QT_IM_MODULES=cedilla #doesn't work!

Qtアプリケーションは引き続きćを出力します。これをデバッグして修正するにはどうすればよいですか?

注:与えられたアプローチを提案しないでください ここAltGr + cと入力すると、ブラジル人にとっては非常に異質な感じがし、GTKソリューションは問題なく機能します。

5
ivarec

ファイルの作成~/.XCompose次のコンテンツでトリックを実行する必要があります。

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

ただし、これは、アプリケーションがXComposeファイルを読み取っている場合にのみ機能します(/usr/share/X11/locale/...)。これはXサーバーの設定ではありませんが、実際にはアプリケーションによって異なります。アプリケーションがこれらのファイルを読み取っているかどうかを確認する方法については、 NIX.SEでのGillesの回答 を参照してください。

6
mpy