時にはスカンジナビア文字を使用する必要があるため、US Dvorakをレイアウトとして使用したにもかかわらず、作成キーとしてCaps Lockを使用したかったのです。 (私はCaps Lockがまったく必要ありません。私はフォーラムトロールではありません。)
この目標を達成する方法は?
重要な場合は、xfceでLinux Mint 17を使用してください。
記録上、私はこのPCの唯一のユーザーであり、これをシステムデフォルトに設定したいと思います。主にxorgでは、しかしあまり面倒なことでなければttyでも同様です。
ベストアンサー1
X11(クラシック)
xev
CapsLockキー押下によって送信されたキーコードを表示するには、ターミナルでプログラムを実行します。これは、キーに対応する行のkeycode
3行目の後の数字です。KeyPress event
PCでは、キーコードは66です。
.Xmodmap
ホームディレクトリにファイルを作成し、次の行を追加します。
keycode 66 = Mode_switch
clear Lock
Mode_switch
X11が建てた変な名前だCompose。clear Lock
Caps Lockではない場合でも、キーがCaps Lockのように動作するのを防ぐ必要があります(Lock
Caps 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.gz
Debianパッケージにありますconsole-tools
。 Mintの下に他のファイルがあるかもしれません。これはloadkeys
起動スクリプトから呼び出されるファイルです。必要に応じて、配布提供ファイルを残し、上記の行を使用してファイルを作成しloadkeys /path/to/your/file.kmap
ます/etc/rc.local
。