« Trucs et astuces » : différence entre les versions
mAucun résumé des modifications |
|||
Ligne 4 : | Ligne 4 : | ||
* [[Vim]] et [[Vimperator]] ; | * [[Vim]] et [[Vimperator]] ; | ||
* [[Usage dans Latex]] ; | * [[LaTeX|Usage dans Latex]] ; | ||
* [[Eee PC]] : modifications spécifiques à l'Eee PC d'Asus. | * [[Eee PC]] : modifications spécifiques à l'Eee PC d'Asus. | ||
Version du 4 septembre 2009 à 23:57
Les trucs et astuces permettent de bidouiller vos fichiers de configuration gérants le comportement du claviers.
Pages spécifiques à certains outils
- Vim et Vimperator ;
- Usage dans Latex ;
- Eee PC : modifications spécifiques à l'Eee PC d'Asus.
Modifier la place des touches
Je voudrais avoir les < et > en accès direct
Par exemple : sous linux, dans le fichier xkb, mettre less(<) et greater(>) en première colonne, en les inversant avec guillemotleft («) et guillemotright(») :
remplacer dans le xkb :
key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ guillemotleft, 2, less, leftdoublequotemark ] }; // « 2 < “ key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ guillemotright, 3, greater, rightdoublequotemark ] }; // » 3 > ”
par
key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ less, 2, guillemotleft, leftdoublequotemark ] }; // < 2 « “ key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ greater, 3, guillemotright, rightdoublequotemark ] }; // > 3 » ”
Je voudrais avoir un espace insécable automatique avec les guillemets
Il faut ajouter les lignes suivantes dans votre .Xcompose#Insécable automatique Assurez-vous que ce sont bien des insécables qui sont après et avant les guillemets (autrement dit, méfiez-vous des copier-coller). Les guillemet sans insécables sont alors encore accessibles avec Compose+</>.
#Insécables automatiques <guillemotleft> : "« " <guillemotright> : " »"
Rendre capslock utile
inverser Maj et CapsLock
key <CAPS> { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] }; key <LFSH> { [ Caps_Lock ], actions = [ LockMods(modifiers=Lock) ] };
Maj sur CapsLock en gardant CapsLock en AltGr au même endroit
Dans la section xkb_types
:
type "ALTGR_TWO" { modifiers = LevelThree; map[None] = Level1; map[LevelThree] = Level2; level_name[Level1] = "Base"; level_name[Level2] = "AltGr"; };
Puis :
key <CAPS> { type = "ALTGR_TWO", [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };
AltGr dupliqué à gauche
Choisir une touche, comme CAPS ou LFSH ou LWIN ou…
key <CAPS> { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };
Mettre Backspace sur CapsLock
Sous linux à rajouter dans le xkb :
key <CAPS> { [ BackSpace ] };
Changer la disposition des touches systèmes sous Windows
Pour Windows XP et Windows Server 2003 il existe le programme remapkey.exe disponible dans le Windows Server 2003 Resource Kit Tools [1].
Il n'a pas été « validé » pour vista, cependant en le lançant en administrateur (clic droit sur l'exe) j'ai réussi à intervertir Alt avec Majuscule Gauche, j'ai pas poussé plus loin les tests (Olympi 18 janvier 2009 à 12:25 (CET))
Utiliser les Options de xkb
La liste des options se trouve généralement dans /usr/share/X11/xkb/rules/base.lst
Quelques options intéressantes :
caps:swapescape inverse ESC et Capslock. shift:breaks_caps Shift annule CapsLock. compose:lwin La touche windows gauche devient Compose. compose:rwin La touche windows droit devient Compose. compose:menu La touche menu devient Compose. compose:caps La touche capslock devient Compose. compose:102 La touche Less-than/Greater-than (êÊ/¦) devient Compose.
Pour activer les options sur une session il suffit de taper :
setxkbmap fr bepo Option1,Option2
Pour désactiver toutes les options :
setxkbmap -option
Pour activer les options à chaque redémarrage il faut rajouter dans la section input device dotée de l'identifiant keyboard :
Option "XkbOptions" "Option1,Option2"
Créer une touche de fonction Fn comme sur les portables
Pour XOrg (Linux, BSD, etc.)
Choisissez une touche comme Alt Gauche (LALT), Win Gauche ou droite (LWIN, RWIN), CAPS, etc. Puis
key <LALT> { [ VoidSymbol ], actions = [ SetControls(controls=Overlay1) ] };
Il ne vous reste plus qu’à choisir quelles touches vous voulez mettre en Fn: pavé numérique, flèches de déplacements, etc. Par exemple pour mettre une flèche de déplacement à gauche sur la touche clavier bépot:
key <AC07> {
type[group1]="FOUR_LEVEL_ALPHABETIC", [t, T, thorn, THORN], overlay1 = <LEFT> }
Vous trouverez un exemple complet ici (et ici une autre configuration plus adaptée pour les vimistes :-)).
Un exemple que l'on peut ajouter sur n'importe quel layout :
partial hidden alphanumeric_keys xkb_symbols "pc78" { key <CAPS> { [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] }; key <AD07> { overlay1 = <HOME> }; key <AD08> { overlay1 = <UP> }; key <AD09> { overlay1 = <PGDN> }; key <AD11> { overlay1 = <BKSP> }; key <AC07> { overlay1 = <LEFT> }; key <AC08> { overlay1 = <DOWN> }; key <AC09> { overlay1 = <RGHT> }; key <AC10> { overlay1 = <PGUP> }; key <AC11> { overlay1 = <RTRN> }; key <AB07> { overlay1 = <END> }; };
dont le bépo :
partial alphanumeric_keys xkb_symbols "bepo-pc78" { include "fr(bepo)" include "fr(pc78)" };
(à mettre dans votre fichier fr.)
Pour Windows
Il est possible d'avoir cette fonctionnalité en utilisant PKL.
Modifier le comportement des touches mortes
Je suis espérantiste et je voudrais que ^+v=ŭ et ^+V=Ŭ
Il faut ajouter ce qui suit dans votre ~/.XCompose
<dead_circumflex> <v> : "ŭ" U016D <dead_circumflex> <V> : "Ŭ" U016C
Je voudrais définir des touches mortes de modifieurs (Alt, AltGr, Ctrl,…) (X.Org)
Il vous faut avoir votre propre fichier .xkb pour pouvoir le modifier. Dans la section "xkb_symbols" rajoutez par exemple:
key <FK13> { actions = [ LatchMods(modifiers=Control) ] }; // dead ctrl key <FK14> { actions = [ LatchMods(modifiers=Shift) ] }; // dead shift key <FK15> { actions = [ LatchMods(modifiers=Alt) ] }; // dead alt key <FK16> { actions = [ LatchMods(modifiers=AltGr) ] }; // dead altgr
Il ne vous reste plus qu'à utiliser ces keycodes comme bon vous semblera !
Par exemple, si vous avez défini une couche overlay1 (voir astuce plus haut):
key <AD01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ b, B, bar, brokenbar ], overlay1 = <FK13> }; // b B | ¦
pour avoir un Control mort en fn+b :-)