Xfce キーボードレイアウトの変更 Ctrl+Space

Xfce キーボードレイアウトの変更 Ctrl+Space

1 週間近く Google で検索していますが、何も見つかりません。キーボード設定パネルを開くと、オプション (「スペース」が含まれているもの) はAlt+SpaceSuper+のみに制限されており、 +Spaceはありません。CtrlSpace

いくつかの答えを見つけましたが、どれもうまくいかないようです。

最初の方法は、xfce4-xkb-plugin (既にインストール済み) をインストールし、キーボード設定ペインで「システムのデフォルトを使用する」フラグを設定し、その後、プラグインのプロパティを使用して言語とショートカットを設定することです。これは機能しません。プロパティ ペインには、ペイン項目の外観に関するオプションしかありません...それだけです。

2番目は次の行です:

-option grp:ctrl_space_toggle,grp_led:scroll en,ru

これも機能しません。これをファイルに入れると.Xmodmap、エラーが発生し、ファイルは解析されなくなります。

検索は諦めましたが、長年の反射神経なので、これは本当に必要です。 レイアウトを変更するショートカットとしてCtrl+を設定するのを手伝ってください。(私は Arch Linux を使用しています。)Space

答え1

これは非常に詳しい回答それは私を助けてくれました。

Ctrl + Spaceキーボードレイアウトのセレクターを有効にするために私がしたこと→

  1. 新しいセレクターgrp:lctrl_space_toggle行を追加します/usr/share/X11/xkb/rules/evdev.lst:
! option
  grp                  Switching to another layout
  grp:switch           Right Alt (while pressed)
  grp:lswitch          Left Alt (while pressed)
  ...
  grp:lctrl_space_toggle Ctrl+Space (Custom layout selector)
  ...
  1. 新しいセレクターgrp:lctrl_space_toggle行を追加します/usr/share/X11/xkb/rules/evdev:
! option        =       symbols
  grp:shift_toggle      =       +group(shifts_toggle)
  altwin:menu           =       +altwin(menu)
  altwin:menu_win       =       +altwin(menu_win)
  ...
  grp:lctrl_space_toggle =      +group(lctrl_space_toggle)
  ...
  1. グループブロックを以下に追加します/usr/share/X11/xkb/symbols/group:
partial modifier_keys
xkb_symbols "lctrl_space_toggle" {
    key <SPCE> {
        type[Group1]="PC_CONTROL_LEVEL2",
        symbols[Group1] = [ space, ISO_Next_Group ]
    };
};

*他のgrp:グループの間にこのブロックを追加しました

  1. 現在のキーボード オプションを取得します。
setxkbmap -print -verbose 10 | grep options:

出力(私の場合):

options:    ctrl:nocaps,grp:win_space_toggle
  1. ここではデフォルトでgrp:win_space_toggleパラメータが上書きされるため、最初にすべてのオプションをクリアする必要があります。
setxkbmap -option
  1. 新しいレイアウト セレクター オプションと、以前に設定されたその他のオプション ( grp:...1 つを除く) を追加します。
setxkbmap -option grp:lctrl_space_toggle,ctrl:nocaps
  1. 利益

PS: 一部の GUI ツールは、再起動時にこの動作を上書きする可能性があります (私の場合、KDE ​​のSystemKeyboardAdvanced機能がこれを実行しました)。そのため、これを回避するには、ショートカットの調整をオフにする必要があります。また、カスタム パラメータを次のように追加すると便利な場合があります/etc/default/keyboard

...
XKBOPTIONS="grp:lctrl_space_toggle,ctrl:nocaps"
...

関連情報