Come posso modificare il comportamento dei pulsanti per mouse solo PC su Mac che non emettono eventi chiave standard USB? [chiuso]


23

Ho un mouse wireless Logitech M510 e sono su un Mac. In questo momento posso assegnare diverse azioni ai 2 pulsanti del pollice tramite il pannello di controllo di Logitech. Quello che voglio fare è avere combinazioni di pulsanti del mouse per eseguire azioni.

Quindi, se tengo premuto il pulsante 1 del pollice e faccio clic sul pulsante sinistro, una scheda verrà chiusa in Chrome. Oltre a qualsiasi altra combinazione "tieni premuto un pulsante, fai clic su un altro".

C'è un modo per realizzare questo tipo di personalizzazione?


Per i controlli di base, è possibile installare le opzioni Logitech . Testato su Mac OSX Yosemite, Mouse Logitech M510
Ricardo

Collego sempre un vero Apple Mighty o Magic Mouse per visualizzare il riquadro Preferenze di Sistema, modificare le impostazioni, quindi tornare al mio mouse da gioco. Funziona. Molto strano. Sono sicuro che c'è una soluzione alternativa.
sudo,

Risposte:


28

Better Touch Tool fa quello che vuoi. L'ho appena scaricato e mi sto divertendo molto: http://www.boastr.net/

Credo che sia disponibile anche sul Mac App Store.

Supporta:

  • Magic Mouse
  • Trackpad per Macbook
  • Magic Trackpad
  • tasti rapidi
  • topi normali
  • Apple Remote

Grazie per questo suggerimento, ottimo strumento. Sono stato in grado di assegnare le azioni indietro e avanti pagina ai miei pulsanti laterali MX518.
t0r0X

Better Touch Tool è la strada da percorrere, praticamente può fare qualsiasi personalizzazione con esso.
Maksim Luzik,

Avevo bisogno di uscire dal mio software Logitech Gaming Center che stava rimappando le chiavi. Quindi Better Touch Tool ha funzionato come un fascino!
Rob Wise,

Lo strumento touch migliore ora è solo a pagamento (Free andato via), sembra non valga la pena spendere qualche pulsante
bwawok

18

Ho avuto un problema simile con il mouse Logitech M560 sul mio MacBook Air. ADORO questo mouse! Ha 5 pulsanti più una rotella di inclinazione, impugnature in vera gomma (non quella roba spray che diventa gommosa dopo un anno), 1 anno di durata della batteria e soprattutto ... pesa solo 92 grammi con una cella al litio !!! Così impressionante. Ma non è affatto compatibile con Mac e nessuno dei driver USB di terze parti funziona con esso. Questo perché alcuni dei pulsanti non inviano affatto eventi di clic sui pulsanti USB (una pratica piuttosto scadente se me lo chiedi) ma piuttosto inviano scorciatoie da tastiera / eventi tattili specifici di Windows. USB Overdrive e SteerMouse cercano solo eventi di clic USB in modo che non possano "trovare" la maggior parte dei pulsanti.

Ho trovato una soluzione però!

  1. Scarica Karabiner: https://pqrs.org/osx/karabiner/
  2. Installa, avvia e concedi l'autorizzazione in "Preferenze di Sistema> Sicurezza"
  3. Nell'app fare clic su "Apri private.xml" nella scheda "Misc & Uninstall"
  4. Crea re-mapping specifici per dispositivo per fare quello che vuoi! (Documentazione sulla modifica dell'XML: https://pqrs.org/osx/karabiner/xml.html.en )

Poiché alcuni dei pulsanti dell'M560 inviano sequenze di tasti solo per Windows che un Mac non può capire, in alcuni casi le uniche battute che il tuo Mac "vedrà" sono un comando o un'opzione di battitura! Ma è sicuro mappare nuovamente quelli poiché la rimappatura è specifica del dispositivo. Sparano SOLO quando vengono inviati dal mouse. Così sono stato in grado di ottenere il controllo su TUTTI i pulsanti dell'M560!

Il mio file private.xml per Karabiner è sotto e include i mapping per tutte le scorciatoie comuni "Mission Control" per i due pulsanti a pollice. L'unica mappatura che ho incluso per il pulsante centrale è Launchpad poiché sembra l'unica funzione ovvia per quel pulsante. Ma ancora una volta, puoi modificare il file a tuo piacimento. La parte difficile era capire i grilletti giusti e sono tutti lì dentro. Devi solo cambiare ciò a cui mappano (cioè l'ultima riga della voce autogena).

NOTA: probabilmente dovrai cambiare il productid affinché corrisponda anche all'ID del tuo ricevitore USB Logitech. Fai clic sull'icona della barra dei menu di Karabinder, quindi su "Avvia Visualizzatore eventi ..." e sulla scheda "Dispositivi" per trovare l'ID del tuo dispositivo. E un ultimo pensiero ... Penso che deviceid sia in realtà il ricevitore unificato (non il mouse) quindi se stai usando una tastiera Logitech potresti essere sfortunato dal momento che alcune di queste mappature rovineranno i tuoi tasti di comando e opzione. Ad esempio, l'unica cosa che il pulsante del pollice in avanti invia a un Mac è in grado di capire è il tasto di comando giusto! Ma se stai usando solo il mouse M560, sei a posto!

Ecco il mio file 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>

Questo ha funzionato anche per il mio M560, una volta rimosso Logitech Control Center (lo avevo già installato per il mouse precedente). Il software Unifying può rimanere installato.
mike__t

1
@mike__t Il mio pulsante centrale del mio M560 lancia diversi eventi su ogni clic. La prima volta che spara F4, la seconda volta che rimane clic. Qualche idea sul perché?
bengem,

Grazie per la tua configurazione! Ho una domanda: come si differenzia lo scorrimento verso sinistra / destra dallo zoom indietro / in? Hanno la stessa mappatura - sembra che non possano essere abilitati insieme, vero?
Lucas,

ecco il pulsante avanti e indietro per l'ergonomia umana ev mouse: code
jesse cai


7

Sono stato in grado di interrompere l'apertura di Expose quando ho premuto il pulsante Indietro del mouse wireless Bluetooth Microsoft 5000 con System Preferences -> Mission Control -> Mouse Button 4 -> -.


3
Questo è divertente. Funziona perfettamente, ma non ci sono controlli OS integrati per cambiarlo in nient'altro che queste 4 opzioni.
Keith Smiley

6

Puoi provare a utilizzare USB Overdrive o SteerMouse per personalizzare il mouse. Non so se la sola utility Logitech sia sufficiente.

Combinate con Mac OS X servizi (ad esempio, da Automator) che vengono assegnati tasti di scelta rapida in Preferenze di Sistema , o utility come Butler o Keyboard Maestro .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.