Xkbはどこで設定を取得していますか?


12

xkb構成の取得元を照会する方法はありますか?私が持っているArchLinuxの下/etc/X11/xorg.conf.d/00-keyboard.confで:

Section "InputClass"
    Identifier "system-keyboard"
    MatchIsKeyboard "on"
    Option "XkbLayout" "us,us"
    Option "XkbVariant" "altgr-intl,colemak"
    Option "XKbOptions" "ctrl:nocaps,grp:alt_shift_toggle"
EndSection           

しかし、私が起動すると、もしそうならsetxkbmap -query、私は

rules:      evdev
model:      evdev
layout:     us,us
variant:    altgr-intl,

したがって、代替のバリアントもオプションも認識されません(言うまでもなく、レイアウトを変更できません)。私が実行した場合

setxkbmap -layout "us,us" -variant "altgr-intl,colemak" -option "ctrl:nocaps,grp:alt_shift_toggle"

私は正しい

rules:      evdev
model:      evdev
layout:     us,us
variant:    altgr-intl,colemak
options:    ctrl:nocaps,grp:alt_shift_toggle

それで、何かが私の設定を上書きしている可能性はありますか?GNOME / Cinnamonを実行しています

回答:


10

はい、Gnomeはxkb X設定を上書きします。
あなたは、設定することができxkbCLIツールを使用してのいずれかGnomeのレイアウト/オプションgsettings/ dconfまたはGUIツールを経由してdconf-editor
したがって、を使用しgsettingsてターミナルを開き、次を実行します。

gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us'), ('xkb', 'us+altgr-intl'), ('xkb', 'us+colemak')]"

そして

gsettings set org.gnome.desktop.input-sources xkb-options "['ctrl:nocaps','grp:alt_shift_toggle']"  

またはdconf-editor、次のように起動して編集します(各値は引用符で囲む必要があり、複数の値はで区切られていることに注意してくださいcomma+space)。

ここに画像の説明を入力してください

そして

ここに画像の説明を入力してください

どちらの方法でも同じ結果が得られます。


こんにちは、対応ありがとうございます。dconf-editorでは、現在の設定は[( 'xkb'、 'us + altgr-intl')、( 'xkb'、 'us + colemak')]のように見えるので、動作するはずです。または、最初の( 'xkb'、 'us')が必要ですか?まだ何かを台無しにしている可能性もあります。GNOMEがxkb設定を上書きしないようにできますか?
ラビペレ

それは最初のものなしで動作するはずです('xkb, 'us')、少なくともそれは私のインストールで動作します(それを追加してそれが何らかの違いをもたらすかどうかを確認するのに害はありません)。それでも動作しない場合は、Archlinuxを使用していて、レイアウトとオプションを適切に設定できるので、何か問題があります。また、私はあなたがオーバーライドからGnomeのを止めることができるとは思わないxkb、それはにハードだとして設定し、GNOME設定デーモン
don_crissti

Mmmmはどちらの方法でも動作しませんでしたが、まだ壊れた結果が得られます。ただし、順序を[( 'xkb'、 'us + colemak')、( 'xkb'、 'us + altgr-intl')]に変更すると、colemak構成(altgr構成ではなく)が取得されますが、 setxkbmap -queryはのみを提供しvariant: colemak, ます。バグ?誰に報告できるかわかりません。
ラビペレ

わかりました、colemakの代わりにdvorakでもう一度試してみましたが、うまくいきました。私は再びコールマックを入れましたが、今回はうまくいきました。どうもありがとう。
ラビペレ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.