Comment mapper Super + UpArrow à PageUp?

12

J'aimerais cartographier

  • Super+ UpArrowàPageUp

  • Super+ DownArrowàPageDown

  • Super+ LeftàHome

  • Super+ RightàEnd

sur un clavier sans fil Apple en aluminium. Ceux qui connaissent le clavier noteront qu'il le fait déjà avec la Fntouche par défaut; c'est bien, et j'aimerais garder cela, mais être capable de faire la même chose avec une combinaison de touches à une main également, d'où mon envie des Supermappages.

Je cherche depuis 3 heures un moyen possible de le faire via xmodmap, mais rien n'a fonctionné.

guest442
la source

Réponses:

5

essayez de modifier la définition de votre clavier / usr / share / X11 / xkb / symboles / pc

(cela changera vos liaisons globalement, si vous voulez quelque chose de plus fin, il y a encore du travail à faire, comme créer une carte de touches personnalisée ou une variante personnalisée)

comme vous pouvez le voir ici:

clé {[Prior]};
clé {[Suivant]};

comme vous pouvez le voir, la clé PGUP est liée à "Prior". Tandis que:

 clé {[Gauche]};
 touche Bas ] };

Les touches GAUCHE et BAS sont liées à "Gauche" et "Bas".

La partie entre parenthèses [ ]est une liste de symboles à générer. Vous pouvez en mettre plusieurs. Le premier est le symbole associé à la touche non modifiée, tandis que les autres positions correspondent aux symboles associés à la touche + un modificateur.

Généralement, il est utilisé pour définir le comportement de la touche plus le modificateur "SHIFT":

  clé {[l, L]};
  clé {[point-virgule, deux-points]};

Mais d'autres modificateurs peuvent également être spécifiés, par exemple dans la carte d'espéranto (epo):

  clé {[jcircumflex, Jcircumflex, bracketleft, braceleft]};
  clé {[hcircumflex, Hcircumflex, bracketright, braceright]};

vous pouvez taper un caractère [en tapant AltGr + touche (la touche [sur le clavier américain), et {par Maj + AltGr + touche.

Jusqu'ici tout va bien. La séquence que nous pouvons comprendre en regardant quelques exemples simples est la suivante:

plain shift altgr shift+altgr


Cependant, nous voulons pouvoir lier nos touches GAUCHE et DROITE aux modificateurs simples et CTRL + ALT. Comment y parvenir?

Je n'ai aucune idée, et je n'ai jamais essayé, mais je m'inspirerais de / usr / share / X11 / xkb / symboles / pc:

xkb_symbols "fonction" {
    clé {
        type = "CTRL + ALT",
        symboles [Groupe1] = [F1, XF86_Switch_VT_1]
    };

Peut-être pouvons-nous faire la même chose pour nos touches fléchées. Essayons d'ajouter les lignes suivantes:

 clé {type = "CTRL + ALT", symboles [Groupe1] = [Gauche, Prior]};
 clé {type = "CTRL + ALT", symboles [Groupe1] = [Bas, Suivant]};

Juste en dessous des définitions originales de GAUCHE et BAS, dans la partie inférieure du fichier 'pc'.

Et puis redémarrez le serveur X. Désolé, mais je ne peux pas fermer ma session pour le moment.

BTW, vous pourriez être intéressé par http://code.google.com/p/partiwm/wiki/xpra , afin de pouvoir redémarrer la session X tout en conservant certaines applications pendant les redémarrages.

ithkuil
la source
Malheureusement, cela ne fonctionne pas non plus. J'ai changé votre "CTRL + ALT" en SUPER_R, SUPER, META, car je veux mapper la bonne touche Super, pas CTRL + ALT (qui ne fonctionne pas non plus). J'ai également essayé d'ajouter des identifiants après la partie "clé" (comme <PGUP>) qui, selon moi, manquait, mais aucune différence.
guest442
4

J'ai essayé quelque chose de similaire en utilisant xmodmap et ses apparentés et je n'ai pas réussi. Essayez xbindkeysavec xdotool. Voici ce que j'ai mis ~/.xbindkeysrcpour lier le pavé numérique 1 et 2 à Ctrl- PageUpet Ctrl- PageDown:

"xdotool key ctrl+Prior" 
  Release + KP_End

"xdotool key ctrl+Next" 
  Release + KP_Down
Loevborg
la source
Merci; J'ai essayé la même chose, mais cela ne semble pas fonctionner. Super + Down semble émettre le caractère "~" toutes les quelques pressions sur le terminal (le PageDown normal le fait aussi, donc cela m'a amené à penser que cela fonctionnait), mais il n'effectue pas réellement PageDown.
guest442
J'ai également essayé xautomation et xvkbd; ils échouent tous les deux de la même manière. Je suis sûr que la partie xbindkeys fonctionne, car je peux obtenir les combinaisons de touches pour lancer d'autres applications et ainsi de suite, mais les touches ne sont tout simplement pas émulées.
guest442