Logo des Enovateurs
Paramétrer les bouton de souris sous Ubuntu

Paramétrer les bouton de souris sous Ubuntu

Aujourd’hui je vous propose un petit tuto technique. Depuis que je suis passé sous Ubuntu, j’avoue que je suis un peu mécontent de ma souris. Pour ceux qui ne connaissent pas Ubuntu, il s’agit d’un système d’exploitation (comme Windows) mais basé sur Linux avec une interface user-friendly. Si vous n’avez jamais utilisé Linux, la distribution Ubuntu est la plus facile à utiliser pour un non-initié. Alors pourquoi est-ce que je fais la tête à ma souris, exactement ? Parce que je l’ai achetée pour mon travail, et que c’est une souris de « gamer » : elle possède donc de nombreuses touches supplémentaires. D’ailleurs la voici :

Ma souris

C’est une VicTsing 2.4G Souris Gaming sans fil 7-boutons. Sur Windows, je me servais des deux boutons sur le côté gauche pour faire du copier-coller. Pour cela, j’ai dû installer des drivers chinois sur mon poste. Or je déteste installer ce genre de truc, c’est écrit dans une langue qu’on a du mal à comprendre, et on a souvent peur d’être infecté par des virus. En passant sur Ubuntu, comme vous devez vous en douter, les gars ne se sont pas amusés à me faire un joli driver pour pouvoir paramétrer tout cela. j’ai alors mené quelques recherches pour parvenir à mes fins, et retrouver ma souris avec ses précieuses fonctions de copier-coller – qui sont tellement chères à un développeur.

Mon tuto pour paramétrer ses boutons de souris :

Tout commence avec une console. Eh oui, on est sur Linux et la console c’est la vie.

console Ubuntu

Pour ceux qui n’en on jamais vu sur Linux, ça ressemble à ça. L’idée est d’installer plusieurs petits programmes pour reconnaître l’identifiant des boutons de sa souris, puis de leur lier les fonctions souhaitées.

Installation de xbindkeys xautomation x11-utils

Je suis gentil, je vous indique la commande en texte, comme ça vous pouvez faire du copier-coller dans l’invite de commande. Petite astuce pour lancer le terminal, vous pouvez taper CTRL + ALT + T. 

Voici la ligne de commande en question :

sudo apt-get install xbindkeys xautomation x11-utils

Tapez Y lorsque qu’on vous demande votre avis sur l’enregistrement de fichiers pour l’installation.

Identifier le bouton

Ensuite, vous devez taper la commande suivante afin d’identifier les boutons de votre souris :

xev -event mouse | grep Button --before-context=1 --after-context=2

Vous allez obtenir ceci :

Console Xev

Dans l’encadré noir, vous pouvez placer votre souris et appuyer sur les boutons que vous souhaitez paramétrer.

Bouton souris

Vous obtenez cet affichage : comment traduire ce qu’il nous raconte ? Le premier élément en rouge vous indique que l’on a pressé le bouton de la souris équivalent au ButtonPress. La dernière phrase de ce bloc indique que l’identifiant du bouton est le numéro 8. Pour vous ce sera peut-être un autre numéro, mais il faut retenir celui-ci. On a donc trouvé notre information pour pouvoir paramétrer une action lors du clic sur ce bouton-là. Pour votre culture personnelle, le second bloc représenté par le ButtonRelease indique que nous avons ensuite relâché le bouton de la souris.

Paramétrer le bouton

Vous devez taper une commande particulière pour initialiser le programme qui va réaliser une action particulière au moment du clic  Pour cela, copiez et collez cette commande :

xbindkeys --defaults > $HOME/.xbindkeysrc

En gros, xbindkeys va s’initialiser en créant un fichier dans votre répertoire Home (équivalent d’Utilisateur sur Windows).

Puis nous pouvons éditer le fichier afin d’ajouter notre fonction :

gedit $HOME/.xbindkeysrc

Cette fonction ouvre le logiciel Gedit (qui est l’équivalent de Bloc-note sur Windows) :

Gedit

Comme pour le Bloc-note, c’est assez simpliste : vous pouvez éditer un fichier et le sauvegarder grâce au bouton en haut à droite. Dans ce fichier, rajoutons quelques lignes juste avant le bloc « end of xbinds » :

"xte 'keydown Control_L' 'key v' 'keyup Control_L'"
b:8

Ce premier bloc permet de dire : pour le bouton dont l’identifiant est 8, tu feras un CTRL + V à chaque fois qu’on clique dessus. Dans votre cas, n’oubliez pas de remplacer b:8 par votre numéro identifié plus haut – par exemple b:10.

En bonus, je vous livre le bloc pour la fonction CTRL+C si vous avez envie d’obtenir la même combinaison de touches que moi :

"xte 'keydown Control_L' 'key c' 'keyup Control_L'"
b:9

 

Si vous avez envie de changer la combinaison, vous pouvez vous inspirer de la première ligne. Le jeu keydown et keyup permet de simuler le bouton CTRL tout en le gardant appuyé sans le relâcher. Il y a également le key c qui indique un appui simple sur la touche c. N’hésitez pas à me poser des questions si mon explication n’est pas assez claire.

Et enfin, la touche finale : il faut demander au système de prendre en compte ces nouvelles fonctions en lançant la commande suivante dans la console :

xbindkeys

C’est terminé pour ce tuto ! Les boutons de votre souris sont maintenant sous votre contrôle. Que vous soyez développeur, comptable ou gamer sur Linux, ce tuto devrait vous sauver la vie. Oui, aujourd’hui je me congratule beaucoup, mais ça fait du bien parfois ;). N’hésitez pas à commenter cet article.

Jérémy PASTOURET
Jérémy PASTOURET
Journaliste en recherche constante de nouveaux outils plus légers, accessibles à tous et respectueux de la vie privée de leurs utilisateurs.

Commentaires

  • Jean-Yves

    2019-9-17 08:3

    Bonjour Jérémy, ça fonctionne parfaitement pour moi, je me demande s’il est possible de contextualiser facilement les raccourcis en fonction de l’application au premier plan ? J’ai pour l’instant un script qui récupère la fenêtre au premier plan avec xdotool et charge un fichier xbindkeys différent en fonction de l’application mais peut-être existe-t-il une méthode plus simple ?
    Merci en tout cas

    • Jérémy PASTOURET

      2019-9-26 14:16

      Bonjour Jean-Yves,
      J’aurais fait comme vous. L’idéal serait de faire plus de recherches sur internet, afin de voir s’il existe des outils pour mettre ces raccourcis plus rapidement.
      Votre script est-il OpenSource ? Si c’est le cas je pourrai rajouter un lien dans l’article, pour ceux que ça intéresserait.

  • Alexis

    2020-1-6 12:2

    Salut et merci pour ce tuto,
    dans ton exemple tu commences par « xte » et dans la doc je vois « xterm », c’est quoi la différence ?

    et sinon à l’endroit où tu spécifies la touche du clavier (‘key c’) comment mettre une touche spéciale?
    par exemple, pour la touche Entrée dois-je mettre :
    « xte ‘key Return' » ou « xte ‘key 36 »
    merci

    • Jérémy PASTOURET

      2020-1-22 18:25

      Bonjour Alexis,
      Xterm est un terminal, et xte permet de faire croire au système que tu as appuyé sur des boutons (en gros xte permet de créer des raccourcis). Pour les touches spéciales, il faut utiliser ces termes :
      Home
      Left
      Up
      Right
      Down
      Page_Up
      Page_Down
      End
      Return
      BackSpace
      Tab
      Escape
      Delete
      Shift_L
      Shift_R
      Control_L
      Control_R
      Meta_L
      Meta_R
      Alt_L
      Alt_R

      Attention, ils sont sensibles à la casses. Il faut donc bien respecter les minuscules et majuscules.

  • Aubin

    2020-8-25 19:32

    Bonjour et Merci pour ce super tuto !
    J’ai mappé le Ctrl-C/Ctrl-V sur les boutons 10 et 11 avec succès par les commandes suivantes :
    « xte ‘keydown Control_L’ ‘key c’ ‘keyup Control_L' »
    b:10

    « xte ‘keydown Control_L’ ‘key v’ ‘keyup Control_L' »
    b:11

    Par contre, échec sur le double-clic associé au bouton 12 par la commande suivante :
    « xdotool click –repeat 2 1 »
    b:12 + Release

    J’ai testé la commande dans la console, elle effectue bien une sélection du mot sous la souris.
    Une idée pour me dépanner ?

    • Jérémy PASTOURET

      2020-8-30 15:20

      Bonjour,
      avez-vous essayé avec une autre souris ou avec un autre bouton pour voir si le problème vient de la définition de l’action ?

      • Aubin

        2020-8-30 21:41

        Bonsoir,
        Oui, sur votre conseil, je viens d’essayer la configuration suivante :
        « /usr/bin/xed & »
        b:12
        Qui donne pleinement satisfaction, elle lance un éditeur de texte du genre de gedit (Le Notepad de GNU/Linux Mint).
        Par ailleurs la commande « xdotool click –repeat 2 1 » fonctionne très bien, exécutée seule dans la console.

  • Clément

    2020-12-12 17:10

    bonjour
    j’ai tenté plusieurs configuration sur le clic droit de ma souris.
    je voudrais revenir à la fonction normale. cad « clic droit ».
    pourriez vous le donner le code pour un clic droit ?
    merci

  • Jérémy PASTOURET

    2020-12-13 14:24

    Bonjour
    Il suffit de lancer les commandes suivantes :
    # réinitialisation de la configuration
    xbindkeys –defaults > $HOME/.xbindkeysrc
    # mise à jour
    xbindkeys
    Bon Dimanche

Ecrire un commentaire

Sobriété

Pour aller plus loin

Découvrez nos tutos !

Les Enovateurs

Rejoignez notre communauté de lecteurs

Retrouvez-nous aussi sur

linkedin