Comment attribuer des actions à tous les boutons de ma souris?

28

J'ai une souris avec beaucoup de boutons, mais ce n'est pas une marque grand public comme Logitech. Pour Windows, j'ai un pilote qui me permet d'assigner des actions comme fermer la fenêtre (Ctrl + W) ou l'onglet suivant (Ctrl + Tab), mais je n'ai pas de pilote Linux. Étant donné que Linux est si flexible, je pensais qu'il y avait peut-être un moyen général de le faire, quelle que soit la marque?

Mise à jour: Sur la base des entrées de Cyrex, j'ai installé et exécuté sudo apt-get install btnxqui a trouvé plusieurs mais pas tous les boutons de la souris.
Trouvé: gauche, droite, roue, cliquet, pouce avant, pouce arrière.
Pas trouvé: roue gauche, roue droite, bouton central du pouce.
L'ID du fournisseur est 0x04d9, l'ID du modèle est 0xa015.

Mise à jour 2: Dans Système> Préférences> Souris, il y a une icône d'ampoule pour tester la vitesse du double-clic. Chaque bouton de travail peut allumer et éteindre l'ampoule, mais pas les boutons manquants. Il semblerait qu'Ubuntu ne soit pas au courant de ces boutons et n'enregistre donc pas leurs clics. Je suppose que je dois rechercher un pilote, bien qu'une souris grand public soit probablement le moyen le plus simple.

Torben Gundtofte-Bruun
la source
Veuillez expliquer ce qu'est le bouton 9 de la souris.
@mateo_salta J'ai eu ça en quelques secondes avant moi.
Utilisez-vous Unity?
int_ua
De quelle marque et de quel modèle s'agit-il?
@int_ua Oui, je m'efforce d'utiliser une configuration système aussi proche de la valeur par défaut que je peux le tolérer.
ændrük

Réponses:

7

Si tous les boutons sont détectés correctement, vous pouvez installer btnx:

sudo apt-get install btnx OU sudo aptitude install btnx

Allez ensuite dans: Applications -> Outils système -> Btnx

Il prend en charge de nombreux types de souris

Luis Alvarado
la source
J'ai testé ma souris avec btnx mais elle n'a pas reconnu tous mes boutons. Est-ce que cela indique un problème avec ma souris (pilote?) Ou avec btnx (peu probable je suppose)?
Torben Gundtofte-Bruun
Je devine entre. Peut-être que le module de souris ne détecte pas correctement la souris, donc btnx ne le fait pas non plus. Pouvez-vous réellement cliquer sur tous les boutons et voir si un programme les reconnaît, comme le test de clic dans les paramètres de la souris.
Luis Alvarado
1
Je sélectionne cela comme la bonne réponse parce que btnx me permet de tester instantanément chaque bouton de la souris - cela a prouvé qu'Ubuntu n'était tout simplement pas au courant des boutons supplémentaires. J'ai besoin d'une souris compatible Linux.
Torben Gundtofte-Bruun
19
btnx est introuvable - le package a-t-il changé de nom?
northben
27

J'ai un MX Anywhere "M-R0001"

J'utilise mes boutons avant et arrière comme copier et coller.

Étapes:
1) Tous les boutons sont détectés avec le dernier noyau ... au moins avec

uname -a

3.8.0-25-generic #37-Ubuntu SMP Thu Jun 6 20:47:07 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

2) Donc, en gros, il vous suffit de mapper ces boutons avec les actions souhaitées. Comment savoir avec le bouton est pressé et le code numérique correspondant? Eh bien, vous pouvez utiliser le programme 'xev':

xev

Ce programme est un renifleur d'événements de touches et de souris. Lorsqu'il est en cours d'exécution, vous pouvez voir une fenêtre dans laquelle vous pouvez appuyer sur les boutons de la souris et voir s'ils sont détectés. Par exemple, avec le bouton de zoom du Performance MX, vous verrez quelque chose comme ça:

ButtonPress event, serial 35, synthetic NO, window 0x5800001,
    root 0x15a, subw 0x0, time 64521438, (84,117), root88,144),
    state 0x10, button 13, same_screen YES

cela signifie que 13 est le code de ce bouton de souris. Vous pouvez essayer tous les boutons de la souris sur votre main ... pour un accès facile, voici la carte pour Performance MX:

  • Bouton retour: 8
  • Bouton avant: 9
  • Bouton de zoom: 13
  • Bouton Afficher les fenêtres: 10

les autres boutons sont bien reconnus et vous n'avez pas besoin de les mapper à des actions.

3) Maintenant, vous devez installer un petit programme pour remapper les entrées de la souris et du clavier. Le magicien est 'xbindkeys' ... l'installation facile utilise:

sudo apt-get install xbindkeys

4) Une fois installé, vous pouvez faire la magie. L'idée est de configurer les boutons de la souris pour envoyer des combinaisons de touches pour activer d'autres fonctionnalités du bureau (en fait, xbindkeys peut être utilisé pour exécuter n'importe quel autre programme lorsque vous appuyez sur un bouton de la souris). Dans KDE, vous pouvez le faire avec la combinaison de touches Ctrl + F10. Le point est de créer un fichier de configuration de xbindkeys pour faire le travail.

5) Pour créer le fichier de configuration, exécutez simplement la commande suivante:

xbindkeys --defaults > $HOME/.xbindkeysrc

6) Et nous devons modifier le fichier pour spécifier le mappage de votre bouton:

gedit $HOME/.xbindkeysrc

7) Nous devons ajouter nos configurations bouton à clé. Par exemple, j'ai les éléments suivants:

# Back changed to Copy
"xte 'keydown Control_L' 'key C' 'keyup Control_L'"
  b:8

# Forward
"xte 'keydown Alt_L' 'key Right' 'keyup Alt_L'"
  b:9

# Present desktops
"xte 'keydown Control_L' 'key F8' 'keyup Control_L'"
  b:13

# Present windows
"xte 'keydown Control_L' 'key F10' 'keyup Control_L'"
  b:10

8) Il y avait une nouvelle exigence. le programme «xte», qui simule essentiellement les combinaisons de touches de l'utilisateur. Installez-le en utilisant:

sudo apt-get install xautomation

Maintenant, si vous exécutez sur un terminal quelque chose comme:

xte 'keydown Control_L' 'key F10' 'keyup Control_L'

cela signifie simuler une touche Ctrl+ F10. L'idée est d'utiliser xbindkeys pour dire: "lorsque j'appuie sur le 13ème bouton de la souris, envoyez une pression sur le clavier Ctrl+ en F10utilisant le programme xte pour générer cela"

9) Enfin, vous devez configurer «xbindkeys» pour qu'il s'exécute automatiquement au démarrage du système. Bouton Applications de démarrage / Ajouter un programme et tapez '/ usr / bin / xbindkeys' dans la boîte de dialogue.

TERMINÉ

BOB
la source
7
De plus, il est généralement plus facile de greper xev avec xev | grep buttondes boutons de souris.
Seth
Fonctionne très bien pour moi, sauf que je n'ai pas eu à écrire un script pour le faire démarrer avec mon ordinateur pour une raison quelconque. Merci!
Shule
Comment pourrais-je faire un bouton de souris pour qu'il agisse comme un bouton de souris différent? Cela semble être pour les clés en particulier. Par exemple, je veux que le bouton 8 agisse comme en appuyant sur le bouton de la molette de la souris. Est-ce possible avec xte?
Shule
10

entrez la description de l'image ici

Easystroke est une application de reconnaissance des gestes de souris et un gestionnaire de gestes de souris pour Ubuntu et autres distributions Linux. il permet à l'utilisateur de contrôler l'application ubuntu avec des gestes de souris dessinés à la main ou dessiner sur l'écran. Easystroke fonctionne sur les tablettes PC, il peut être utilisé aussi bien avec une souris, un stylo ou même vos doigts si vous avez un écran tactile.

Installer Easystroke dans Ubuntu

sudo apt-get install easystroke

Si vous souhaitez installer easystroke via PPA, vous pouvez ajouter un référentiel PPA, tapez cette commande:

sudo add-apt-repository ppa:easystroke/ppa
sudo apt-get update
sudo apt-get install easystroke

Pour les utilisateurs d'Unity : EasyStroke n'a pas encore utilisé l'applet indicateur, donc lorsque vous l'exécutez à partir du menu, vous n'avez rien sur l'indicateur Applet. Pour résoudre ce problème, exécutez simplement ces commandes dans le terminal:

easystroke -g

Il exécutera EasyStroke et ouvrira automatiquement les fenêtres de configuration.

La source

penreturns
la source
N'a pas reconnu les boutons supplémentaires du Logitech G700s.
Dan Dascalescu
5

La reconnaissance de gestes Easystroke est conçue principalement pour créer des gestes de dispositif de pointage personnalisés , mais elle peut également être utilisée pour attribuer des actions à de simples pressions de bouton.

Pour l'utiliser de cette manière,

  1. Ouvrez la fenêtre de configuration .
  2. Dans Préférences ▸ Comportement ▸ Boutons supplémentaires ▸ Ajouter , sélectionnez Gestes instantanés , puis appuyez sur le bouton de souris souhaité dans la zone grise.

    Reconnaissance gestuelle Easystroke - Sélectionnez un bouton de souris ou de stylet

  3. Dans Actions , cliquez sur Ajouter une action .

  4. Double-cliquez dans la colonne Stoke , puis appuyez à nouveau sur le bouton de souris souhaité.

  5. Cliquez dans les colonnes Nom , Type et Détails pour configurer une action.

    Reconnaissance gestuelle Easystroke - Actions

ændrük
la source
5

Si vous installez le Gestionnaire de paramètres CompizConfig, Installer le gestionnaire de paramètres CompizConfig vous pourrez définir un grand nombre de raccourcis de bouton de souris pour la gestion des fenêtres.

Cela peut prendre un certain effort pour déterminer quel bouton est lequel.

Dans la capture d'écran, j'affecte l'ouverture du sélecteur Super + Tab à un clic gauche de ma molette de défilement.

Capture d'écran

8128
la source
2

Olli Salonen a son propre ppa qui doit être ajouté à votre liste si vous souhaitez installer via apt. Voici les informations sur l'ajout de ppa.

https://launchpad.net/~daou/+archive/ppa

En outre, ce lien pourrait aider à l'installation sur une version plus récente d'Ubuntu, car je vois qu'Olli n'est pas actif depuis un certain temps maintenant.

mbiber
la source
1
et oui ce lien que vous avez fourni est ce que je cherchais, merci encore awesomelinux.blogspot.com/2012/08/...
user231354
1

Btnx est disponible en téléchargement à partir d' ici .

Dusan Milosevic
la source
1

La source est ici: http://github.com/cdobrich/btnx.git Il a construit et a fonctionné sur mon Linux Mint 13 sans problèmes. Attention: btnx-config doit être exécuté avec des perms root.

Luke H
la source
1

À la mi-2017, il ne semble pas y avoir de package btnx mis à jour pour Ubuntu 16.04 LTS, et easystroke ne semble plus être maintenu.

Je voulais attribuer un copier / coller aux deux boutons supplémentaires de mon Microsoft IntelliMouse (vieux de plusieurs décennies, mais testé au combat) , et je me suis finalement installé sur imwheel , qui est décrit dans cette page dans le wiki Ubuntu .

Pour référence, voici mon ~/.imwheelrc:

# https://help.ubuntu.com/community/ManyButtonsMouseHowto

"^(Gnome-terminal|Tilda)"
None, Thumb1, Shift_L|Control_L|C
None, Thumb2, Shift_L|Control_L|Insert

".*"
None, Thumb1, Control_L|C
None, Thumb2, Control_L|V

# vim:ts=4:shiftwidth=4:syntax=sh

Pour démarrer l'outil en même temps que le serveur X, mis IMWHEEL_START=1en /etc/X11/imwheel/startup.conf.

Ingo Karkat
la source
0

La réponse acceptée est obsolète, voici la version mise à jour.

Vous devriez déjà les avoir car ils devraient venir avec Ubuntu, mais exécutez-le juste au cas où.

sudo apt-get install libdaemon-dev libglade2-dev libgtk2.0-dev 

Maintenant, téléchargez et installez

1) btnx-config 2) btnx Dans cet ordre.

À installer:

Décompressez et cddans chacun de ces dossiers.

Dans chacun d'eux, exécutez:

./configure make
sudo make
sudo make install

Une fois les deux installés, exécutez

sudo btnx-config

Dans l'onglet Configurations, cliquez sur Détecter la souris et les boutons

entrez la description de l'image ici

Dans l'onglet Boutons, affectez au bouton de votre souris une touche ou une fonctionnalité. Assurez-vous que la coche est activée .

entrez la description de l'image ici

Enfin, dans l'onglet Configurations, cliquez sur le bouton Redémarrer btx pour que vos modifications prennent effet.

entrez la description de l'image ici

Pas de sueur
la source