Comment associer une application à

une touche du clavier ?

(Écrit en orthographe recommandée. Voir note en bas de page)


Les utilisateurs de Windows ont la possibilité de lancer une application directement à partir du clavier, notamment à l'aide de touches spécifiques. Sous Linux, vous pouvez assez facilement faire de même. Mais mieux encore: vous pouvez choisir vous-même l'application et la touche associée!

Pour cela, vous pourrez utiliser un petit programme texte appelé xbindkeys. À noter qu'il existe équivalent graphique : xbindkeys_config. Mais comme l'interface est en anglais, il est plus simple pour un non anglophone de se servir du programme en mode texte.


  1. Où le trouver?

    Vous trouverez:

    http://hocwp.free.fr/xbindkeys/xbindkeys.fr.html

    http://astuce.linux.free.fr/Telechargement/

    http://www.netchampagne.com/xbindkeys_config/ (mais le serveur est en travaux)

    http://astuce.linux.free.fr/Telechargement/

  2. Comment ça marche?

    Le programme xbindkeys lit un fichier qui est dans votre répertoire personnel (par exemple celui de toto). Il s'agit de:

    home/toto/.xbindkeysrc Vous pouvez le visualiser avec la commande xbindkeys_show

    Exemple de ligne du fichier:

    "xterm &"

    control+shift + q

    La première ligne indique l'application qui sera lancée. Ici, c'est xterm. Noter le & et les "


    La deuxième ligne indique la touche ou les combinaisons de touches qu'il faudra utiliser pour lancer l'application. Ici, c'est Control + Maj +q (faites l'essai!)


    Autre exemple

    "xterm &"

    c:41 + m:0x4

    Seule la deuxième ligne change: les touches du clavier sont désignées par leur code. Ici, c'est control + f


    Dernier exemple:

    "xterm &"

    control + b:2

    Ici, b:2 correspond au bouton central de la souris.

  1. Comment faire pour associer des touches et des applications?

    Par exemple, vous voulez lancer kmail avec la touche home de votre clavier compatible Windows IE (sur mon clavier de marque Microsoft, c'est une touche avec une icône en forme de maison)

    Tout simple! Il suffit d'éditer le fichier home/toto/.xbindkeysrc en rajoutant à la fin

    les lignes:

    "kmail &"

    m:0x10 + c:236

Comment j'ai fait pour savoir que pour cette touche, il fallait mettre m:0x10 + c:236 ? Tout simple. Je lance la commande xbindkeys -k (l'option -k pour key).

Je suis ensuite invité à presser une touche par une fenêtre "Xbindkey: Hit a key" et ce message Press a key You can use one of the two lines after "NoCommand"

in $HOME/.xbindkeysrc to bind a key.

Une fois que j'ai appuyé sur cette touche, j'ai ceci qui s'affiche dans le terminal:

"NoCommand"

m:0x10 + c:236

Mod2 + NoSymbol

Il me suffit donc de copier-coller la deuxième ligne et de sauvegarder les modifications.

Par soucis de clarté, il vaut mieux rajouter un commentaire expliquant la commande qui va être lancée (et pourquoi pas le nom de la touche). Ce commentaire commence par le signe # qui sert à indiquer au programme de ne pas prendre en compte cette ligne. Pour kmail, on aura:

#Pour lancer kmail

"kmail &"

m:0x10 + c:236

    Lancer le programme xbindkeys et appuyer sur la touche en question pour vérifier. Ça doit marcher.

    Pareil, mais vous utiliserez xbindkeys -mk (pour multi keys)

    Normal, il faut que le programme xbindkeys soit lancé. Tapez xbindkeys dans un émulateur de terminal et tout rentrera dans l'ordre. Ensuite, il vous faudra mettre cette commande dans le fichier de démarrage de votre gestionnaire de fenêtre pour que le lancement soit automatique. Sous KDE, le plus simple est de faire un copier-coller (lier ici) de /home/toto/.xbindkeys vers /home/toto/.kde/Autostart

    Il faut arrêter xbindkeys avec killall xbindkeys, puis le relancer avec xbindkeys et ça devrait marcher.

    Ce doit être parce que cette touche ou cette combinaison de touches est déjà utilisée par le gestionnaire de fenêtre, une application ou par xbindkeys lui-même. Normalement, vous avez dû avoir un programme qui s'est lancé. Il vous faut choisir une autre touche (ou alors changer de gestionnaire de fenêtre ou modifier sa configuration).

    Sous Windows, on peut faire une capture d'écran simplement en pressant la touche "Impr écran" (qui fait un copier de l'écran), puis en faisant un coller dans le programme de votre choix.

    On peut faire aussi bien sous Linux en utilisant la commande import. Dans mon .xbindkeysrc, j'ai rajouté les ligne suivantes:

    #Pour faire une capture d'écran à sélectionner à la souris (avec les touches Maj et Impr ecran)

    "import ~/captures_decran/capture1.jpg &"

    m:0x11 + c:111

    #Pour faire un capture de tout l'ecran avec la touche Impr ecran

    "import -window root ~/captures_decran/capture1.jpg&"

    m:0x10 + c:111


    Dans le premier cas, en pressant les touches Maj et Impr écran, le pointeur de la souris change de forme et il suffit de sélectionner la zone à capturer. La capture d'écran est donc créée dans le fichier capture1.jpg qui se trouve dans le répertoire /home/toto/captures_decran (N'oubliez pas de créer ce répertoire)

    Dans le deuxième cas, en pressant la touche Impr écran, tout l'écran est capturé dans le même fichier. C'est très pratique.


Ce howto est soumis à la licence LGPL. Vous pouvez le copier et le diffuser comme bon vous semble à condition de ne pas l'altérer et de laisser intacte la présente notice.

Des erreurs, des suggestions ? écrivez-moi.  Voir mon adresse ici http://astuce.linux.free.fr/index.html

Mis à jour le 24 octobre 2004



logo orthographe recommandée

N.B. L'Académie française a approuvé à l'unanimité un certain nombre de rectifications.
Ces rectifications sont désormais inscrites dans les programmes du ministère français de l'éducation nationale (BO n°5 du 12 avril 2007).
Pour en savoir plus http://www.orthographe-recommandee.info/

Attention ! Ces rectifications ne sont PAS de simples tolérances, mais fixent la NOUVELLE orthographe de certains mots.