GNU/Linux >> Linux の 問題 >  >> Linux

Setxkbmapを使用して左シフトと左コントロールを入れ替えますか?

左のShiftを交換することは可能ですか? 左のCTRL setxkbmapを使用したキー xmodmapの代わりに ?

編集

私はFcitxに切り替えました。これは、あらゆる点でIBusよりもキーボードレイアウトとカスタマイズされたキーマップではるかにうまく機能します。強くお勧めします。

承認された回答:

xmodmap 廃止されました。したがって、実際にはxkbを使用して実行する必要があります ツール。

必要なスワップは、デフォルトではX11ファイルに含まれていないようです。自分で書く必要があります。

ページhttps://web.archive.org/web/20170825051821/http://madduck.net/docs/extending-xkb/は、それを行う方法を理解し、見つけるのに役立ちました。

ファイルを作成する~/.xkb/keymap/mykbd setxkbmapの出力をここに配置します 、それはあなたの基本的なキーボード定義になります。例:

setxkbmap -print > ~/.xkb/keymap/mykbd

次に、シンボルファイルを作成してキースワッピングを定義します。たとえば、~/.xkb/symbols/myswapに配置します。

そこに、次の行を入力します:

partial modifier_keys
xkb_symbols "swap_l_shift_ctrl" {
    replace key <LCTL>  { [ Shift_L ] };
    replace key <LFSH> { [ Control_L ] };
};

次に、~/.xkb/keymap/mykbdを編集します ファイルを作成し、xkb_symbolsを変更します 追加する行

+myswap(swap_l_shift_ctrl)

最後に、xkbcomp -I$HOME/.xkb ~/.xkb/keymap/mykbd $DISPLAYを使用してロードできます。 (-Iに「〜」を使用することはできません パラメータ)。

いくつかのまれなキーの未定義のシンボルについて多くの警告を発する可能性がありますが、無視することができます(たとえば、エラーをdaveにリダイレクトします:2> /dev/null

通常のCtrlキーとShiftキーを逆にしたものと簡単に入れ替えられるようにしたい場合。 ~/.xkb/keymap/の下に作成するだけです 追加の「myswap」オプションを含まない別のファイルをxkbcompでロードします 。 2つの小さなスクリプトを作成してそれらをロードできます。


Linux
  1. LinuxでTarコマンドを使用する方法

  2. Ubuntuでスワップファイルを作成および削除する

  3. Linux:スワップ ファイルを配置する場所

  1. inotify を使用する適切な方法は何ですか?

  2. ファイルの行をコマンドの引数として使用するにはどうすればよいですか?

  3. テキストファイルを Shift JIS から UTF-8 に変換し、端末から戻す方法

  1. .exrcと.vimrcの違いは?

  2. イオリダイレクションとヘッドコマンド?

  3. Linux:ファイルを入力と出力として同時に使用する方法は?