web-dev-qa-db-ja.com

X11 / xorgマップctrlj(またはctrl m)を返します。 OR GUI / X11の制御コード

ターミナルアプリケーションやvim(そして私が思うemacs)のようなエディターは制御コードをうまく利用しています。つまり CtrlM キャリッジリターンであり、 CtrlJ 改行です。これらは両方とも、vimに新しい行を挿入したり、シェルでコマンドを実行したりするために使用できます。基本的にすべてのキーボードに戻るよりも、押す方がかなり快適です( Ctrl に再マップされます Caps lock 少なくとも)。

動作しないGUIアプリケーションでは、それは地獄のように迷惑です。私はブラウザとしてOperaを使用し、そのサポートを構成しようとしましたが、一部の要素でのみ機能します。もちろん、他のアプリケーションでは機能しません。

Xで「制御コード」バインディングを作成して特殊文字として機能させる方法を知っている人はいますか?
CtrlH バックスペース用も非常にクールです)

4
morphles

xkb を使用して可能です。カスタムキーボードレイアウトを作成して割り当てる必要があります Ctrl (Caps Lock)をレベル3シフトキー(デフォルトの場所にちなんでAltGrと呼ばれることもあります)にします。次に、3番目のレベルを設定します M CRのkeysymに、 J LFなどに。Backspaceを設定することもおそらく可能です(Unicodeコードポイントではなく、関数keysymを使用して)。

好みのキーボードレイアウト(国際文字など)でAltGr(右Alt)を使用すると、干渉します。伝えられるところによると、AltGrとは独立したレベル5シフトも存在するため、代わりにCtrl/CapsLkをレベル5シフトとして設定します(免責事項:私はこれを試していません)。

これを行うためのチュートリアルがいくつかあります。 これが1つです

ただし、独自のレイアウトを作成する場合は、難しいと思われるキーを再マッピングすることも検討してください(たとえば、Right Winを使用したことがない場合は、親指/小指が簡単にアクセスできる場所にEnterを再マッピングします)。

ちなみに、どうすれば CapsLk+キーはおそらくより押しやすいです Enter?別のキーを同時に押す必要があることを除いて、両手の間で完全に対称です。

1