opensuse:config_touches_fn
no way to compare when less than two revisions
Différences
Ci-dessous, les différences entre deux révisions de la page.
— | opensuse:config_touches_fn [2018/11/17 12:53] (Version actuelle) – créée - modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Configuration avancée du clavier :: introduction====== | ||
+ | Bienvenue dans la magie de Xorg ! Vous trouverez ici un mode opératoire simple et élégant pour modifier le //mappage// de votre clavier et l' | ||
+ | |||
+ | À l' | ||
+ | |||
+ | |||
+ | |||
+ | Ce // | ||
+ | |||
+ | |||
+ | |||
+ | === Conditions liminaires === | ||
+ | |||
+ | * Avoir un serveur X à peu près fonctionnel ; | ||
+ | |||
+ | * savoir se servir un peu de la ligne de commande ; | ||
+ | |||
+ | * ouvrir trois terminaux virtuels sous X. | ||
+ | |||
+ | |||
+ | |||
+ | === Légende === | ||
+ | |||
+ | * ligne de code commençant par **$** = action à effectuer en tant qu' | ||
+ | |||
+ | * ligne de code commençant par **#** = action à effectuer en tant que //root// | ||
+ | |||
+ | |||
+ | |||
+ | ====== Déroulé === | ||
+ | |||
+ | La méthode que nous allons suivre est la suivante : | ||
+ | |||
+ | * récupération des actions à affecter (augmenter le volume sonore par exemple) ; | ||
+ | |||
+ | * récupération du //keycode// des combinaisons de touches ou de boutons qui nous intéressent ; | ||
+ | |||
+ | * création d'un fichier de configuration personnalisé ; | ||
+ | |||
+ | * test ; | ||
+ | |||
+ | * mise en place permanente des modifications. | ||
+ | |||
+ | |||
+ | |||
+ | ====== Identification des actions gérées par X ====== | ||
+ | |||
+ | Dans le premier terminal, entrez la commande : < | ||
+ | |||
+ | On obtient une sortie de ce genre : < | ||
+ | |||
+ | XF86ModeLock | ||
+ | |||
+ | XF86MonBrightnessUp | ||
+ | |||
+ | XF86MonBrightnessDown | ||
+ | |||
+ | XF86KbdLightOnOff | ||
+ | |||
+ | XF86KbdBrightnessUp | ||
+ | |||
+ | XF86KbdBrightnessDown | ||
+ | |||
+ | XF86Standby | ||
+ | |||
+ | XF86AudioLowerVolume | ||
+ | |||
+ | XF86AudioMute | ||
+ | |||
+ | XF86AudioRaiseVolume | ||
+ | |||
+ | XF86AudioPlay | ||
+ | |||
+ | XF86AudioStop | ||
+ | |||
+ | XF86AudioPrev | ||
+ | |||
+ | XF86AudioNext | ||
+ | |||
+ | XF86HomePage | ||
+ | |||
+ | XF86Mail | ||
+ | |||
+ | XF86Start | ||
+ | |||
+ | XF86Search | ||
+ | |||
+ | XF86AudioRecord | ||
+ | |||
+ | XF86Calculator | ||
+ | |||
+ | [...]</ | ||
+ | |||
+ | Il faut ici choisir les actions qui nous intéressent. En l' | ||
+ | |||
+ | '' | ||
+ | |||
+ | |||
+ | |||
+ | ====== Identification des combinaisons de touches ====== | ||
+ | |||
+ | ==== L' | ||
+ | |||
+ | '' | ||
+ | |||
+ | Quand on le lance dans un terminal sous X, une petite fenêtre s' | ||
+ | |||
+ | |||
+ | |||
+ | ==== Récupération des keycode ==== | ||
+ | |||
+ | Dans le second terminal, lancez '' | ||
+ | |||
+ | |||
+ | |||
+ | Voici ce qui s' | ||
+ | |||
+ | < | ||
+ | |||
+ | root 0x87, subw 0x0, time 12858900, (610,-381), root: | ||
+ | |||
+ | state 0x0, keycode 104 (keysym 0xff54, Down), same_screen YES, | ||
+ | |||
+ | XLookupString gives 0 bytes: | ||
+ | |||
+ | XmbLookupString gives 0 bytes: | ||
+ | |||
+ | XFilterEvent returns: False | ||
+ | |||
+ | |||
+ | |||
+ | KeyRelease event, serial 34, synthetic NO, window 0x1e00001, | ||
+ | |||
+ | root 0x87, subw 0x0, time 12858994, (610,-381), root: | ||
+ | |||
+ | state 0x0, keycode 104 (keysym 0xff54, Down), same_screen YES, | ||
+ | |||
+ | XLookupString gives 0 bytes: | ||
+ | |||
+ | XFilterEvent returns: False</ | ||
+ | |||
+ | Ce qui nous intéresse, c'est cette partie : '' | ||
+ | |||
+ | |||
+ | |||
+ | Quand une touche ou une combinaison n'a pas d' | ||
+ | |||
+ | < | ||
+ | |||
+ | root 0x87, subw 0x0, time 13186503, (708,-91), root: | ||
+ | |||
+ | state 0x0, keycode 223 (keysym 0x0, NoSymbol), same_screen YES, | ||
+ | |||
+ | XLookupString gives 0 bytes: | ||
+ | |||
+ | XFilterEvent returns: False</ | ||
+ | |||
+ | |||
+ | |||
+ | Repérez les combinaisons de touches qui vous intéressent et vérifiez bien qu' | ||
+ | |||
+ | |||
+ | |||
+ | ====== Création du fichier de configuration ====== | ||
+ | |||
+ | Dans le troisième terminal (ou à l'aide de votre éditeur de texte favori), créez le fichier ''/ | ||
+ | |||
+ | keycode 160 = XF86AudioMute | ||
+ | |||
+ | keycode 174 = XF86AudioLowerVolume | ||
+ | |||
+ | keycode 176 = XF86AudioRaiseVolume</ | ||
+ | |||
+ | Comme vous l' | ||
+ | |||
+ | |||
+ | |||
+ | ====== Test ====== | ||
+ | |||
+ | Dans le troisième terminal : < | ||
+ | |||
+ | |||
+ | |||
+ | ====== Rendre les modifications permanentes ====== | ||
+ | |||
+ | Si vous souhaitez rendre ces modifications disponibles pour tous vos utilisateurs, | ||
+ | |||
+ | < | ||
+ | |||
+ | Pour finir, configurez votre environnement graphique pour qu'il exécute à chaque démarrage la commande : | ||
+ | |||
+ | * '' | ||
+ | |||
+ | * ou '' | ||
+ | |||
+ | |||
+ | |||
+ | === Pour KDE === | ||
+ | |||
+ | Dans ''/ | ||
+ | |||
+ | < | ||
+ | |||
+ | xmodmap / | ||
+ | |||
+ | Rendez-le exécutable (clic droit, " | ||
+ | |||
+ | < | ||
+ | |||
+ | Et voilà ! | ||
+ | |||
+ | |||
+ | |||
+ | ====== Quelques explications ====== | ||
+ | |||
+ | La commande '' | ||
+ | |||
+ | :!: **Ce qui est défini dans notre '' | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | === Une petite application : un mappage par utilisateur === | ||
+ | |||
+ | Nous allons simplement utiliser la propriété précédente pour configurer le mappage du clavier par utilisateur (cas de madame qui ne supporte pas le mappage dvorak sur l'ordi familial) !\\ | ||
+ | |||
+ | |||
+ | |||
+ | On suppose notre xmodmap.conf configuré //a minima// et aux petits oignons, nous sommes connectés sous la session de l' | ||
+ | |||
+ | $ xmodmap / | ||
+ | |||
+ | Ensuite, modifiez en root) le '' | ||
+ | |||
+ | Assurez-vous que chaque session utilisateur exécute bien au lancement la commande '' | ||
+ | |||
+ | |||
+ | |||
+ | === D' | ||
+ | |||
+ | On peut donc même se permettre le luxe de distraire seulement une ou deux touches de leur signification initiale rien qu'en modifiant notre '' | ||
+ | |||
+ | Bref, les explications simples s' |
opensuse/config_touches_fn.txt · Dernière modification : 2018/11/17 12:53 de 127.0.0.1