書き込み用に Caps Lock を再マッピング

書き込み用に Caps Lock を再マッピング

時にはスカンジナビア文字を使用する必要があるため、US Dvorakをレイアウトとして使用したにもかかわらず、作成キーとしてCaps Lockを使用したかったのです。 (私はCaps Lockがまったく必要ありません。私はフォーラムトロールではありません。)

この目標を達成する方法は?

重要な場合は、xfceでLinux Mint 17を使用してください。

記録上、私はこのPCの唯一のユーザーであり、これをシステムデフォルトに設定したいと思います。主にxorgでは、しかしあまり面倒なことでなければttyでも同様です。

ベストアンサー1

X11(クラシック)

xevCapsLockキー押下によって送信されたキーコードを表示するには、ターミナルでプログラムを実行します。これは、キーに対応する行のkeycode3行目の後の数字です。KeyPress eventPCでは、キーコードは66です。

.Xmodmapホームディレクトリにファイルを作成し、次の行を追加します。

keycode 66 = Mode_switch
clear Lock

Mode_switchX11が建てた変な名前だComposeclear LockCaps Lockではない場合でも、キーがCaps Lockのように動作するのを防ぐ必要があります(LockCaps Lock修飾子であり、修飾子宣言とキー記号宣言が一致しない場合、一部のアプリケーションは少し奇妙に動作します)。または、次の行を使用できます。

keysym Lock = Mode_switch
clear Lock

これにより、現在のCaps Lockを送信しているすべてのキーがCompose転送に返されます。どちらもコマンドを予約する必要があります。

xmodmap ~/.Xmodmap

セッションの開始時に実行されます。これは一般的なルールですが、すべての展開/デスクトップ環境の組み合わせで自動的に実行されるわけではありません。ない場合は、セッションの開始時に実行されるコマンドのリストにこのコマンドを追加します(XFCE4構成エディタで、セッションと起動→アプリケーションの自動起動に移動してコマンドを追加します)。

X11(XKB)

XKBはシンプルで強力ですが、通常はxmodmapよりも使い方が面倒です。標準構成には、必要な操作を実行するプリセットがあるため、お客様の場合は簡単です。以下を実行します。

setxkbmap -option compose:caps

セッションの開始時にこのコマンドを実行する方法については、前のセクションを参照してください。

Linuxコンソール

CapsLock鍵のキーコードを確認してください。走るshowkeyテキストコンソールでキーを押してCapsLockから10秒待ってshowkey終了します。 PCでは、キーコードは0x3aです。コンソールキーマップファイルには、次の行を含める必要があります。

keycode 0x3a = Compose

デフォルトのコンソールキーマップファイルは/etc/console/boottime.kmap.gzDebianパッケージにありますconsole-tools。 Mintの下に他のファイルがあるかもしれません。これはloadkeys起動スクリプトから呼び出されるファイルです。必要に応じて、配布提供ファイルを残し、上記の行を使用してファイルを作成しloadkeys /path/to/your/file.kmapます/etc/rc.local

おすすめ記事