Comment puis-je modifier le comportement des boutons pour les souris PC uniquement sur Mac qui n'émettent pas d'événements de clé standard USB? [fermé]

23

J'ai une souris sans fil Logitech M510 et je suis sur un Mac. Pour le moment, je peux attribuer différentes actions aux 2 boutons du pouce via le panneau de configuration Logitech. Ce que je veux faire, c'est avoir des combinaisons de boutons de souris pour effectuer des actions.

Donc, si je maintiens le bouton 1 du pouce et que je clique sur le bouton gauche, un onglet se fermera dans Chrome. Ainsi que toute autre combinaison "maintenez un bouton, cliquez sur un autre".

Existe-t-il un moyen de réaliser ce type de personnalisation?

roflwaffle
la source
Pour les contrôles de base, on peut vouloir installer les options Logitech . Testé sur Mac OSX Yosemite, Mouse Logitech M510
Ricardo
Je connecte toujours une souris Apple Mighty ou Magic Mouse réelle pour afficher le volet Préférences système, modifier les paramètres, puis revenir à ma souris de jeu. Ça marche. Très étrange. Je suis sûr qu'il existe une solution de contournement.
sudo

Réponses:

28

Better Touch Tool fait ce que vous voulez. Je viens de le télécharger et j'en profite à fond: http://www.boastr.net/

Je pense qu'il est également disponible sur le Mac App Store.

Ça supporte:

  • Magic Mouse
  • Macbook Trackpad
  • Magic Trackpad
  • Raccourcis clavier
  • souris normales
  • Apple Remote
user276007
la source
Merci pour cette astuce, bon outil. A pu attribuer des actions de retour et d'avance de page à mes boutons latéraux du MX518.
t0r0X
Better Touch Tool est le chemin à parcourir, peut essentiellement faire n'importe quelle personnalisation avec lui.
Maksim Luzik
Je devais quitter mon logiciel Logitech Gaming Center qui remappait les clés. Ensuite, l'outil Better Touch a fonctionné comme un charme!
Rob Wise
Un meilleur outil tactile est désormais payant (Free est parti), ne semble pas valoir le coup pour quelques pressions de bouton
bwawok
18

J'ai eu un problème similaire avec la souris Logitech M560 sur mon MacBook Air. J'adore cette souris! Il a 5 boutons plus une molette inclinable, de vraies poignées en caoutchouc (pas ce genre de produit à vaporiser qui devient gommeux après un an), une durée de vie de 1 an et surtout ... ne pèse que 92 grammes avec une pile au lithium !!! Génial. Mais ce n'est pas du tout compatible avec Mac et aucun des pilotes USB tiers ne fonctionne avec. En effet, certains boutons n'envoient pas du tout d'événements de clic de bouton USB (une pratique assez médiocre si vous me le demandez), mais envoient plutôt des raccourcis clavier codés en dur / des événements tactiles spécifiques à Windows. USB Overdrive et SteerMouse ne recherchent que les événements de clic USB afin qu'ils ne puissent pas "trouver" la plupart des boutons.

Mais j'ai trouvé une solution!

  1. Téléchargez Karabiner: https://pqrs.org/osx/karabiner/
  2. Installez, lancez et donnez-lui la permission dans "Préférences Système> Sécurité"
  3. Dans l'application, cliquez sur "Open private.xml" sous l'onglet "Misc & Uninstall"
  4. Créez des remappages spécifiques à l'appareil pour faire ce que vous voulez! (Documentation sur l'édition du XML: https://pqrs.org/osx/karabiner/xml.html.en )

Étant donné que certains des boutons du M560 envoient des frappes Windows uniquement qu'un Mac ne peut pas comprendre, dans certains cas, les seules touches que votre Mac "verra" sont une commande ou une option de frappe! Mais il est sûr de re-mapper ceux-ci car le re-mappage est spécifique à l'appareil. Ils se déclenchent UNIQUEMENT lorsqu'ils sont envoyés depuis votre souris. J'ai donc pu prendre le contrôle de TOUS les boutons du M560!

Mon fichier private.xml pour Karabiner est ci-dessous et comprend des mappages pour tous les raccourcis "Mission Control" courants pour les deux boutons de pouce. Le seul mappage que j'ai inclus pour le bouton du milieu est Launchpad, car cela semble être la seule fonction évidente pour ce bouton. Mais encore une fois, vous pouvez modifier le fichier à votre guise. La partie difficile était de trouver les bons déclencheurs et ils sont tous là. Il vous suffit de modifier ce à quoi ils correspondent (c'est-à-dire la dernière ligne de l'entrée autogène).

VEUILLEZ NOTER: Vous devrez probablement changer l'ID de produit pour qu'il corresponde également à l'ID de votre récepteur Logitech USB. Cliquez sur l'icône de la barre de menu de Karabinder, puis sur «Lancer l'Observateur d'événements ...» et sur l'onglet «Appareils» pour trouver l'ID de votre appareil. Et une dernière pensée ... Je pense que le deviceid est en fait le récepteur unifié (pas la souris), donc si vous utilisez un clavier Logitech, vous n'aurez peut-être pas de chance car certains de ces mappages vont gâcher vos touches de commande et d'options. Par exemple, la seule chose que le bouton de pouce vers l'avant envoie qu'un Mac peut comprendre est la bonne touche de commande! Mais si vous n'utilisez que la souris M560, vous êtes prêt à partir!

Voici mon fichier private.xml.

    <?xml version="1.0"?>
<root>
    <item>
    <name>Logitech M560 Mouse - Macintosh Shortcuts</name>

        <!-- Middle Button - Launchpad -->
        <devicevendordef>
            <vendorname>LOGITECH</vendorname>
            <vendorid>0x046d</vendorid>
        </devicevendordef>
        <deviceproductdef>
            <productname>USB_Receiver</productname>
            <productid>0xc52b</productid>
        </deviceproductdef>
        <item>
            <name>Middle Button -> Launchpad</name>
            <identifier>private.deviceproductdef_middle_button_to_launchpad</identifier>
            <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
            <autogen>__SimultaneousKeyPresses__ 
            KeyCode::OPTION_L, KeyCode::COMMAND_L, 
            KeyCode::F4
            </autogen>
        </item>

        <item>
            <name>Tilt Wheel</name>

            <!-- M560 Tilt Left - Zoom Out -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Left -> Zoom Out</name>
                <identifier>private.deviceproductdef_tilt_left_to_zoom_out</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::BRACKET_LEFT, ModifierFlag::COMMAND_L,
                    KeyCode::MINUS, ModifierFlag::COMMAND_L
                </autogen>
            </item>

            <!-- M560 Tilt Left - Scroll Left -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Left -> Scroll Left</name>
                <identifier>private.deviceproductdef_tilt_left_to_scroll_left</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::BRACKET_LEFT, ModifierFlag::COMMAND_L,
                    KeyCode::CURSOR_LEFT
                </autogen>
            </item>

            <!-- M560 Tilt Right - Zoom In -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Right -> Zoom In</name>
                <identifier>private.deviceproductdef_tilt_right_to_zoom_out</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::BRACKET_RIGHT, ModifierFlag::COMMAND_L,
                    KeyCode::EQUAL, ModifierFlag::COMMAND_L
                </autogen>
            </item>

            <!-- M560 Tilt Right - Scroll Right -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Right -> Scroll Right</name>
                <identifier>private.deviceproductdef_tilt_right_to_scroll_right</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::BRACKET_RIGHT, ModifierFlag::COMMAND_L,
                    KeyCode::CURSOR_RIGHT
                </autogen>
            </item>

        </item>
        <item>
            <name>Forward Button</name>

            <!-- M560 Forward Button - Forward in Safari -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Forward in Safari</name>
                <identifier>private.deviceproductdef_forward_button_to_safari_forward</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::COMMAND_R,
                    KeyCode::BRACKET_RIGHT, ModifierFlag::COMMAND_L
                </autogen>
            </item>

            <!-- M560 Forward Button - Mission Control -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Mission Control</name>
                <identifier>private.deviceproductdef_forward_button_to_mission_control</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::COMMAND_R,
                    KeyCode::CURSOR_UP, ModifierFlag::CONTROL_L
                </autogen>
            </item>

            <!-- M560 Forward Button - Application Windows -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Application Windows</name>
                <identifier>private.deviceproductdef_forward_button_to_application_windows</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::COMMAND_R,
                    KeyCode::CURSOR_DOWN, ModifierFlag::CONTROL_L
                </autogen>
            </item>

            <!-- M560 Forward Button - Desktop -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Show Desktop</name>
                <identifier>private.deviceproductdef_forward_button_to_show_desktop</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::COMMAND_R,
                    KeyCode::F11
                </autogen>
            </item>

            <!-- M560 Forward Button - Dashboard -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Show Dashboard</name>
                <identifier>private.deviceproductdef_forward_button_to_show_dashboard</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::COMMAND_R,
                    KeyCode::F12
                </autogen>
            </item>
        </item>

        <item>
            <name>Back Button</name>

            <!-- M560 Back Button - Back in Safari -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Back in Safari</name>
                <identifier>private.deviceproductdef_back_button_to_safari_back</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::D, ModifierFlag::COMMAND_L,
                    KeyCode::BRACKET_LEFT, ModifierFlag::COMMAND_L
                </autogen>
            </item>

            <!-- M560 Back Button - Mission Control -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Mission Control</name>
                <identifier>private.deviceproductdef_back_button_to_mission_control</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::D, ModifierFlag::COMMAND_L,
                    KeyCode::CURSOR_UP, ModifierFlag::CONTROL_L
                </autogen>
            </item>

            <!-- M560 Back Button - Application Windows -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Application Windows</name>
                <identifier>private.deviceproductdef_back_button_to_application_windows</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::D, ModifierFlag::COMMAND_L,
                    KeyCode::CURSOR_DOWN, ModifierFlag::CONTROL_L
                </autogen>
            </item>

            <!-- M560 Back Button - Show Desktop -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Show Desktop</name>
                <identifier>private.deviceproductdef_back_button_to_show_desktop</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::D, ModifierFlag::COMMAND_L,
                    KeyCode::F11
                </autogen>
            </item>

            <!-- M560 Back Button - Show Dashboard -->
            <devicevendordef>
                <vendorname>LOGITECH</vendorname>
                <vendorid>0x046d</vendorid>
            </devicevendordef>
            <deviceproductdef>
                <productname>USB_Receiver</productname>
                <productid>0xc52b</productid>
            </deviceproductdef>
            <item>
                <name>Show Dashboard</name>
                <identifier>private.deviceproductdef_back_button_to_show_dashboard</identifier>
                <device_only>DeviceVendor::LOGITECH, DeviceProduct::USB_Receiver</device_only>
                <autogen>__KeyToKey__
                    KeyCode::D, ModifierFlag::COMMAND_L,
                    KeyCode::F12
                </autogen>
            </item>

        </item>
    </item>
</root>
David Lewis
la source
Cela a également fonctionné pour mon M560, une fois que j'ai supprimé le Logitech Control Center (déjà installé pour la souris précédente). Le logiciel Unifying peut rester installé.
mike__t
1
@mike__t Mon bouton central du M560 déclenche différents événements à chaque clic. La première fois qu'il tire F4, le deuxième clic gauche. Une idée pourquoi?
bengem
Merci pour votre configuration! J'ai une question: comment différencier le défilement gauche / droite du zoom arrière / avant? Ils ont le même mappage - on dirait qu'ils ne peuvent pas être activés ensemble, ai-je raison?
Lucas
voici le bouton aller-retour pour l'ergonomie humaine ev mouse: code
jesse cai
7

J'ai pu empêcher Expose de s'ouvrir lorsque j'ai appuyé sur le bouton Retour de la souris sans fil Bluetooth 5000 de Microsoft avec System Preferences -> Mission Control -> Mouse Button 4 -> -.

mcandre
la source
3
C'est amusant. Cela fonctionne parfaitement, mais il n'y a pas de commandes de système d'exploitation intégrées pour le changer en quoi que ce soit, mais ces 4 options ..
Keith Smiley
6

Vous pouvez essayer d'utiliser USB Overdrive ou SteerMouse pour une personnalisation de la souris. Je ne sais pas si l'utilitaire Logitech seul suffit.

Combiner avec Mac OS X services (par exemple de Automator) qui lui sont assignées raccourcis clavier dans les Préférences Système , ou des utilitaires tels que Butler ou Keyboard Maestro .

Daniel Beck
la source