Je souhaite modifier la mise en page (cartographie) de Clavier Lenovo ThinkPad (que je déteste) d'être comme Acer TravelMate 8000 (que j'adore).
Cela signifie principalement :
- Permuter Fn et Ctrl gauche
- Tab-gauche pour agir comme PgUp
- Fn' + Tab-gauche pour agir comme Home
- Tab-droit pour agir comme PgDown
- Fn' + Tab-droit pour agir comme End
- PgUp pour agir comme Delete
- Accueil pour agir comme Insert
J'ai essayé xev
pour voir les codes.
J'ai trouvé cette liste de symboles : http://cs.gmu.edu/~sean/stuff/n800/keyboard/keysymdef.h
Voici mon résultat :
xmodmap -e 'keycode 112 = XF86Back' # Remap PgUp to TabPrev
xmodmap -e 'keycode 117 = XF86Forward' # Remap PgDn to Tabnext
xmodmap -e 'keycode 166 = Prior Home XF86Back' # Remap TabPrev to PgUp.
xmodmap -e 'keycode 167 = Next End XF86Forward' # Remap TabNext to PgDn.
xmodmap -e 'keycode 151 = Control_L' # Remap FN to be Ctrl.
xmodmap -e 'keycode 37 = XF86WakeUp' # Remap Ctrl to be FN.
xmodmap -e 'keycode 94 = Shift_L' # Remap stupid left |\*& to be Shift too.
Cependant, ce n'est pas exactement ce dont j'ai besoin car il associe Shift + Tab* à Home, ce qui m'empêche d'utiliser la fonction Shift
+ Home'
(pour sélectionner du texte) et ne fonctionne que dans certaines applications (par exemple, il ne fonctionne pas dans Firefox pour aller en haut).
Alors - comment dois-je le cartographier ?
Mise à jour : J'ai utilisé setkeycodes
et j'ai trouvé ces scancodes :
Press Release
TabLeft - 158 ^[[5~0xe0 0x6a 0xe0 0xea
TabRight - 159 ^[[6~0xe0 0x69 0xe0 0xe9
PgUp: 0xe0 0x49 0xe0 0xc9
PgDn: 0xe0 0x51 0xe0 0xd1
Ctrl: 0x1d 0x9d
FN: 0xe0 0x63 0xe0 0xe3
Mise à jour : J'ai également constaté que dumpkeys
montre des informations intéressantes. Par exemple, les alias des chaînes de caractères pour certaines clés. ^[[5~
montré par showkey -s
y est défini.
Mise à jour : J'ai essayé setkeycodes
:
sudo setkeycodes 0xE063 29 ## Fn to Ctrl
sudo setkeycodes 0x1d 143 ## Ctrl to Fn
sudo setkeycodes 0x56 42 ## |\*& to Shift
showkeys
-k montre les bons keycodes qui arrivent, mais ils ne fonctionnent toujours pas donc - e.g. Ctrl+T
n'ouvre pas d'onglet dans FF, etc.
Après avoir annulé les changements, tout fonctionne comme avant.
sudo setkeycodes 0xE063 143 ## Fn to Ctrl
sudo setkeycodes 0x1d 29 ## Ctrl to Fn
Qu'est-ce qui me manque ?