段階的なソリューション

段階的なソリューション

Linux仮想コンソールでスワップを実行する方法を探していますEscCaps Lock

X11ではを使用してこれを実行できますが、setxkbmap -option caps:swapescapeテキストモードではそれに対応する機能がわかりません。だから私は何ができますか?

答え1

まず、「console-data」をインストールする必要があります。

sudo apt-get install console-data

「sudo showkey」を使ってESCキーとCapsLockキーのキーコードを見つけましょう。

sudo showkey

私のESCキーコードは「1」、Caps Lockキーコードは「58」です。

これで、ホームディレクトリに.keystringsファイルを作成する必要があります。

vim ~/.keystrings

このファイルは、Caps LockとESCのキーコードを交換します。 Caps Lockキーが58なので、1に設定しました。

keycode 1 = Caps_Lock
keycode 58 = Escape

.keystrings ファイルを保存して閉じ、TTY で次のコマンドを実行します。

sudo loadkeys .keystrings 

これでCaps LockとEscキーを置き換える必要があります。

答え2

Debian ベースのシステムでは、プロセスは非常に簡単です。その行を見つけて、XKBOPTIONS=次に/etc/default/keyboard変更します。

XKBOPTIONS="caps:swapescape"

もちろんルートアクセスが必要です。しかし、心配しないでください。コンソールには「X」マークが必要で、Esc再起動Caps Lock後は元の状態に戻ります。

man keyboard読んでX /コンソールに拘束されないようにコンソール(tty)とXのキーボードレイアウト/マッピングを変更しますか?より多くの情報を知りたいです。

答え3

段階的なソリューション

X11

次のコマンドセットX11キーボードが正しいです(私のキーボードレイアウトは次のとおりです)。

localectl --no-convert set-x11-keymap de "" "" caps:swapescape

端末

これ端末キーボードは次のように設定できます。

  1. 正しいキーボードレイアウトファイルをカスタムディレクトリにコピーします。

cp /usr/share/kbd/keymaps/i386/qwertz/de-latin1.map.gz /usr/local/share/kbd/keymaps

(使用しているキーボードレイアウトに応じてこのコマンドを変更する必要があります)

  1. コピーされたファイルで、Escapetoのすべての発生Caps_Lockとtoのすべての発生を変更し、名前を次のように変更します。Caps_LockEscapede-latin1-custom.map.gz

  2. /etc/vconsole.conf次のようにファイルを編集します。

KEYMAP="/usr/local/share/kbd/keymaps/de-latin1-custom.map.gz"

システムを再起動した後、キーボードを正しく設定する必要があります。X11そして端末

関連情報