WMFS, acte III : Les raccourcis claviers
Voici la troisième partie concernant la configuration de WMFS, au menu de ce billet : Les raccourcis clavier.
Que serait un tiling manager sans raccourcis clavier ?
Comme vous vous en doutez, WMFS propose par défaut un bon nombre de possibilités et bien évidement il permet de gérer, créer et supprimer vos raccourcis en toute simplicité !
Toute l’action se déroulera dans la section « [keys] [/keys] » de votre wmfsrc ou le cas échéant dans le fichier keys passé en @include ( voir ici pour de plus amples informations ).
Syntaxe :
[key] mod = {"touche"} key = "touche" func = "fonction" cmd = "commande" [/key]
Raccourcis clavier par défaut :
Voici la liste des raccourcis clavier activés par défaut que j’ai partiellement traduite :
# Recharger le fichier de configuration de WMFS. [key] mod = {"Alt", "Control"} key = "r" func = "reload" [/key] # Ouvrir un terminal. [key] mod = {"Control"} key = "Return" func = "spawn" cmd = "xterm" [/key] # Fermer le client sélectionné. [key] mod = {"Alt"} key = "q" func = "client_kill" [/key] # Quitter WMFS. [key] mod = {"Control", "Alt", "Shift"} key = "q" func = "quit" [/key] # Échanger le client sélectionné avec le suivant. [key] mod = {"Alt"} key = "t" func = "client_swap_next" [/key] # Échanger le client sélectionné avec le précèdent. [key] mod = {"Alt", "Shift"} key = "t" func = "client_swap_prev" [/key] # Passer le client sélectionné en positon master. [key] mod = {"Control"} key = "m" func = "client_set_master" [/key] # Maximiser le client sélectionné. [key] mod = {"Alt"} key = "m" func = "toggle_max" [/key] # Passer le client sélectionné en mode "free". [key] mod = {"Alt"} key = "f" func = "toggle_free" [/key] # Modifier la position du tableau de bord. [key] mod = {"Alt"} key = "b" func = "toggle_infobar_position" [/key] [key] mod = {"Alt", "Shift"} key = "b" func = "toggle_infobar_display" [/key] # Toggle the resizehint of the current tag/screen [key] mod = {"Shift", "Control"} key = "r" func = "toggle_resizehint" [/key] # Cacher/montrer les tags non utilisés. [key] mod = {"Shift", "Control"} key = "t" func = "toggle_tagautohide" [/key] # Sélectionner le client suivant. [key] mod = {"Alt"} key = "Tab" func = "client_next" [/key] # Sélectionner le client précédent. [key] mod = {"Alt","Shift"} key = "Tab" func = "client_prev" [/key] # Passer au tag suivant. [key] mod = {"Control"} key = "Right" func = "tag_next" [/key] # Passer au tag précédent. [key] mod = {"Control"} key = "Left" func = "tag_prev" [/key] # Passer au tag utilisé suivant. [key] mod = {"Control","Alt"} key = "Right" func = "tag_next_visible" [/key] # Passer au tag utilisé précédent. [key] mod = {"Control","Alt"} key = "Left" func = "tag_prev_visible" [/key] # Passer au layout suivant. [key] mod = {"Alt"} key = "space" func = "layout_next" [/key] # Passer au layout précédent. [key] mod = {"Alt", "Shift"} key = "space" func = "layout_prev" [/key] # Élargir le client qui a le focus. [key] mod = {"Alt"} key = "l" func = "set_mwfact" cmd = "+0.025" [/key] # Réduire le client qui a le focus. [key] mod = {"Alt"} key = "h" func = "set_mwfact" cmd = "-0.025" [/key] # Ajouter le client sélectionné au master. [key] mod = {"Alt"} key = "d" func = "set_nmaster" cmd = "+1" [/key] # Enlever le dernier client ajouté au master. [key] mod = {"Alt", "Shift"} key = "d" func = "set_nmaster" cmd = "-1" [/key] # Accéder au lanceur d'applications. [key] mod = {"Alt"} key = "p" func = "launcher" cmd = "launcher_exec" [/key] # Accéder au lanceur ViWMFS [key] mod = {"Alt"} key = "Escape" func = "launcher" cmd = "viwmfs" [/key] # Aller au tag x. [key] mod = {"Alt"} key = "F1" func = "tag" cmd = "1" [/key] [key] mod = {"Alt"} key = "F2" func = "tag" cmd = "2" [/key] [key] mod = {"Alt"} key = "F3" func = "tag" cmd = "3" [/key] [key] mod = {"Alt"} key = "F4" func = "tag" cmd = "4" [/key] [key] mod = {"Alt"} key = "F5" func = "tag" cmd = "5" [/key] [key] mod = {"Alt"} key = "F6" func = "tag" cmd = "6" [/key] [key] mod = {"Alt"} key = "F7" func = "tag" cmd = "7" [/key] [key] mod = {"Alt"} key = "F8" func = "tag" cmd = "8" [/key] [key] mod = {"Alt"} key = "F9" func = "tag" cmd = "9" [/key] # Déplacer le client sélectionné sur le tag x. [key] mod = {"Alt", "Shift"} key = "F1" func = "tag_transfert" cmd ="1" [/key] [key] mod = {"Alt", "Shift"} key = "F2" func = "tag_transfert" cmd ="2" [/key] [key] mod = {"Alt", "Shift"} key = "F3" func = "tag_transfert" cmd ="3" [/key] [key] mod = {"Alt", "Shift"} key = "F4" func = "tag_transfert" cmd ="4" [/key] [key] mod = {"Alt", "Shift"} key = "F5" func = "tag_transfert" cmd ="5" [/key] [key] mod = {"Alt", "Shift"} key = "F6" func = "tag_transfert" cmd ="6" [/key] [key] mod = {"Alt", "Shift"} key = "F7" func = "tag_transfert" cmd ="7" [/key] [key] mod = {"Alt", "Shift"} key = "F8" func = "tag_transfert" cmd ="8" [/key] [key] mod = {"Alt", "Shift"} key = "F9" func = "tag_transfert" cmd ="9" [/key] # Toggle additional tags (x) on the current tag [key] mod = {"Alt", "Super"} key = "F1" func = "tag_toggle_additional" cmd ="1" [/key] [key] mod = {"Alt", "Super"} key = "F2" func = "tag_toggle_additional" cmd ="2" [/key] [key] mod = {"Alt", "Super"} key = "F3" func = "tag_toggle_additional" cmd ="3" [/key] [key] mod = {"Alt", "Super"} key = "F4" func = "tag_toggle_additional" cmd ="4" [/key] [key] mod = {"Alt", "Super"} key = "F5" func = "tag_toggle_additional" cmd ="5" [/key] [key] mod = {"Alt", "Super"} key = "F6" func = "tag_toggle_additional" cmd ="6" [/key] [key] mod = {"Alt", "Super"} key = "F7" func = "tag_toggle_additional" cmd ="7" [/key] [key] mod = {"Alt", "Super"} key = "F8" func = "tag_toggle_additional" cmd ="8" [/key] [key] mod = {"Alt", "Super"} key = "F9" func = "tag_toggle_additional" cmd ="9" [/key] # Changer d'écran [key] mod = {"Super"} key = "Tab" func = "screen_next" [/key] [key] mod = {"Super", "Shift"} key = "Tab" func = "screen_prev" [/key] # Passer le client sélectionné à l'écran suivant/précédent [key] mod = {"Super", "Shift"} key = "a" func = "client_screen_next" [/key] [key] mod = {"Super", "Shift"} key = "z" func = "client_screen_prev" [/key] # Mode "exposé" [key] mod = {"Alt"} key = "e" func = "toggle_tag_expose" [/key]
Création d’un raccourci clavier :
Tout d’abord, petit rappel de la syntaxe :
[key] mod = {"Touche"} key = "Touche" func = "Fonction" cmd = "Commande" [/key]
Pour suivre, voici un exemple qui permet de lancer Firefox via la combinaison des touches [ Super + F ] :
# Lancer Firefox. [key] mod = {"Super"} key = "f" func = "spawn" cmd = "firefox" [/key]
Cet autre exemple permet d’effectuer une capture d’écran avec Scrot puis de l’ouvrir avec Mirage via la touche [ Imprimer ] :
# Effectuer une capture d'écran. [key] key = "Print" func = "spawn" cmd = "scrot -e 'mirage $f'" [/key]
Ici, on attribue deux fonctions à un même raccourci clavier :
# Déplacer et suivre le client sur le tag suivant. [key] mod = {"Shift","Alt"} key = "Right" func = "tag_transfert_next" [/key] [key] mod = {"Shift","Alt"} key = "Right" func = "tag_next" [/key]
Enfin, un dernier exemple permettant d’afficher un menu :
# Afficher le menu "root". [key] mod = {"Super","Alt"} key = "space" func = "menu" cmd = "rootmenu" [/key]
Les touches multimédia :
Si vous êtes en possession d’un clavier disposant de touche multimédia, sachez qu’il est tout à fait possible de les prendre en charge. Voici de suite un exemple :
# Lancer claws-mail (keycodes) [key] key = "XF86Mail" func = "spawn" cmd = "claws-mail" [/key]
La syntaxe est comme vous pouvez le voir fort simple ! Afin de connaître la valeur à utiliser, je vous conseille fortement d’utiliser l’utilitaire xev :
xorg-xev est un utilitaire livré avec xorg et xorg-apps, il n’est donc logiquement pas nécessaire de l’installer…
$ yaourt -Si xorg-xev Dépôt : extra Nom : xorg-xev Version : 1.1.0-2 URL : http://xorg.freedesktop.org/ Licences : custom Groupes : xorg-apps xorg Fournit : -- Dépend de : libx11 Dépendances opt. : -- Est en conflit avec : -- Remplace : -- A télécharger : 9,98 K Taille (installé) : 64,00 K Paqueteur : Jan de Groot <jgc@archlinux.org> Architecture : x86_64 Compilé le : jeu. 10 mars 2011 16:17:41 CET somme MD5 : 89f853c37bc58185ea043e9b71e14143 Description : Print contents of X events
Lancez xev dans votre terminal :
$ xev
Appuyez ensuite sur un touche multimédia, xev devrait vous retourner une notification de ce genre :
KeyRelease event, serial 30, synthetic NO, window 0x1c00001, root 0x15d, subw 0x0, time 7022752, (106,269), root:(1080,321), state 0x10, keycode 163 (keysym 0x1008ff19, XF86Mail), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False
Dans cette exemple, la valeur qui sera utilisée est : « XF86Mail »
Fin de cet article qui je l’espère vous donnera une raison de plus pour essayer et pourquoi pas adopter WMFS .
Rendez vous pour un prochain acte qui concernera le fichier status.sh !
Dans la même catégorie :