TTYでCtrlをCaps Lockに再マップするには?

TTYでCtrlをCaps Lockに再マップするには?

Xグラフィックサーバーでキーを再マップする方法を見つけました。しかし、時にはTTYを介して作業したいが、機能的CtrlCaps Lock

.keymap次の内容でファイルを作成してみました。

keycode 37 = Control_L

その後、ソーシングを使用しますが、loadkeys役に立ちません。

しかし、Xの37キーコードはCtrl(によってxmodmap -pke | grep 'Control')TTYのキーコードが異なる可能性がありますか?それでは、正しいキーコードをどのように決定し、その後再マッピングを設定しますか?

ベストアンサー1

上記のPorkfreezerの答えは素晴らしいです!これを永続的なソリューションにするには、ディレクトリを作成するか、ディレクトリを使用して.settingsTTY.localにログインするときに使用できる独自のキーマップファイルを作成できます。これを行うには、現在使用しているキーボードキーマップ(私の場合us.map.gz)を上記で選択したホームディレクトリにコピーすることをお勧めします。私には次のようになります。

cp /usr/share/kbd/keymaps/i386/qwerty/us.map.gz ~/.settings/

その後、必要なキーマッピングを含むようにファイルを解凍して編集できます。私はVimで動作するようにEscキーとCaps_Lockを切り替えました。次に、次のように、Linuxが見つけることができるディレクトリのファイルを指すシンボリックリンクを作成します。

sudo ln -s ~/.settings/custom.map /usr/share/kbd/keymaps/i386/qwerty/custom.map

これで、TTYにいる間に実行してsudo loadkeys customキーマップをロードできます。これをデフォルトにするには

/etc/vconsole.conf

この行を含むファイル

KEYMAP=custom

/etc/mkinitcpio.conf次に、リストの最後に追加してファイルを編集します(スーパーユーザー権限が必要です)。これは次のようになります。keymaphooks

...
HOOKS=(base udev autodetect modconf block filesystems keyboard fsck keymap)
...

その後実行

sudo mkinitcpio -p linux

それだけです!再起動後、TTYにログインするたびにカスタムキーマップが使用されます。

役に立ったことを願っています!

おすすめ記事