Super + UpArrowをPageUpにマップするにはどうすればよいですか?


12

地図を作りたい

  • Super+ UpArrowPageUp

  • Super+ DownArrowPageDown

  • Super+ LeftHome

  • Super+ RightEnd

Appleアルミニウムワイヤレスキーボード。キーボードを知っている人は、Fnデフォルトですでにキーを使用してこれらを行っていることに気付くでしょう。それは結構です、私はそれを維持したいのですが、片手でキーの組み合わせでも同じことができるので、Superマッピングが必要です。

私はxmodmapを介してこれを行う方法を3時間探していましたが、何も機能していませんでした。

回答:


5

/ usr / share / X11 / xkb / symbols / pcキーボード定義を編集してみてください

(これにより、バインディングがグローバルに変更されます。さらに微調整したい場合は、カスタムキーマップやカスタムバリアントの作成など、さらに作業が必要です)

あなたがここで見ることができるように:

key {[Prior]};
キー{[次へ]};

ご覧のように、キーPGUPは「Prior」にバインドされています。一方:

 キー{[左]};
 key {[Down]};

LEFTおよびDOWNキーは、「Left」および「Down」にバインドされています。

括弧内の部分[ ]は、生成されるシンボルのリストです。複数置くことができます。最初の位置は、変更されていないキーに関連付けられたシンボルであり、他の位置は、キー+修飾子に関連付けられたシンボル用です。

通常、キーの動作と「SHIFT」修飾子を定義するために使用されます。

  キー{[l、L]};
  キー{[セミコロン、コロン]};

しかし、他の修飾子も、たとえばエスペラントマップ(epo)で指定できます。

  key {[jcircumflex、Jcircumflex、bracketleft、braceleft]};
  key {[hcircumflex、hcircumflex、bracketright、braceright]};

AltGr +キー(usキーマップの[キー)を入力して[文字を入力し、Shift + AltGr +キーで{を入力します。

ここまでは順調ですね。いくつかの簡単な例を見て理解できるシーケンスは次のとおりです。

plain shift altgr shift+altgr


ただし、LEFTおよびRIGHTキーをプレーンおよびCTRL + ALT修飾子にバインドできるようにする必要があります。それを達成する方法は?

私にはわからないし、試したこともないが、/ usr / share / X11 / xkb / symbols / pcからインスピレーションを得た:

xkb_symbols "関数" {
    キー{
        type = "CTRL + ALT"、
        symbols [Group1] = [F1、XF86_Switch_VT_1]
    };

おそらく、矢印キーに対しても同じことができます。次の行を追加してみましょう。

 key {type = "CTRL + ALT"、symbols [Group1] = [Left、Prior]};
 key {type = "CTRL + ALT"、symbols [Group1] = [Down、Next]};

「pc」ファイルの下部にあるLEFTおよびDOWNの元の定義のすぐ下。

そして、Xサーバーを再起動します。申し訳ありませんが、今すぐセッションを終了してテストすることはできません。

ところで、http://code.google.com/p/partiwm/wiki/xpraに興味があるかもしれません。そのため、Xセッションを再起動し、再起動後も一部のアプリケーションを保持できます。


残念ながら、これも機能しません。「CTRL + ALT」をSUPER_R、SUPER、METAに変更しました。CTRL+ ALTではなく、適切なスーパーキーをマップするためです(これも機能しません)。また、「キー」部分(<PGUP>など)の後に欠落していると思われる識別子を追加しようとしましたが、違いはありませんでした。
guest442

4

xmodmapとその認識を使用して同様のことを試みましたが、成功しませんでした。xbindkeysと組み合わせて試してくださいxdotool。これは、~/.xbindkeysrc数値キーパッド1と2をCtrl- PageUpCtrl- にバインドするために入れたものですPageDown

"xdotool key ctrl+Prior" 
  Release + KP_End

"xdotool key ctrl+Next" 
  Release + KP_Down

ありがとう。私は同じことを試してみましたが、機能していないようです。Super + Downは、ターミナルで数回押すたびに「〜」文字を出力するようです(通常のPageDownもこれを行うので、動作すると思った)、実際にはPageDownを実行しません。
guest442

また、xautomationとxvkbdを試しました。両方とも同じように失敗します。xbindkeysの部分は機能していると思います。他のアプリを起動するためのキーの組み合わせを取得できますが、キー入力はエミュレートされません。
guest442
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.