Domanda:
Riproposizione del pulsante "menu" sulle tastiere Windows utilizzate in OS X
ProductionValues
2015-02-21 21:46:18 UTC
view on stackexchange narkive permalink

Le tastiere Windows si mappano in modo abbastanza intuitivo su OS X, lasciando solo il pulsante "menu contestuale" un po 'inutile. Vorrei che il tasto menu si comportasse come un altro tasto di comando.

Come si definisce cosa fa il tasto "menu contestuale" sulle tastiere di Windows in OS X?

enter image description here

Su questa tastiera, il tasto "menu contestuale" si trova direttamente sotto il "." tasto (periodo / maggiore di); nella riga inferiore tra "alt" e "ctrl" sul lato destro, due tasti a sinistra del tasto "freccia sinistra". Che cosa fa in OS X e come si chiama?

Non ha né scopo né nome in OS X. La mia tastiera Win ha effettivamente un secondo tasto Windows lì, con quello accanto a destra. Forse [Karabiner] (https://pqrs.org/osx/karabiner/) potrebbe farlo, se riesci a capire quale codice chiave invia - prova [Key Codes] (http://manytricks.com/keycodes/) per vedere se genera qualcosa di utilizzabile
Abbiamo una parola speciale per informazioni come questa qui a SE, signore, e quella parola, signore, è * risposta *! Se sarai così gentile da fornire queste informazioni utilizzando la casella di risposta, lo accetterò sicuramente come tale!
Sono contento che abbia aiutato - una risposta piuttosto nitida e asciutta fornita, di seguito :)
Otto risposte:
Tetsujin
2015-02-23 12:39:07 UTC
view on stackexchange narkive permalink

Non ha né scopo né nome in OS X.

Forse Karabiner potrebbe farlo, se riesci a capire quale codice chiave invia - prova Codici chiave per vedere se genera qualcosa di utilizzabile.

Key Codes riporta il codice 110 per il pulsante "menu contestuale", e in effetti Moschettone lo intrappola e lo ripropone come volevo!
Karabiner ha integrato EventViewer e offre di copiare i suoi risultati negli appunti.Ho trovato i codici chiave un po 'confusi in quanto mostra molto più del necessario per Karabiner.(Vedi la mia risposta "personale" di seguito.)
Con EventViewer di Karabiner ho scoperto che il tasto del menu contestuale sulla mia tastiera Microsoft si registra come "applicazione".In Karabiner sono stato quindi in grado di mappare "application" a "right_gui" e si comporta come un tasto di comando.
antoine
2017-05-31 03:05:35 UTC
view on stackexchange narkive permalink

Per espandere la risposta di @ Tetsujin: puoi davvero raggiungere questo obiettivo con Karabiner.Di seguito sono riportate alcune istruzioni dettagliate.

In breve: vai alla scheda Misc & Unistall, apri xml privato, cambialo in:

  <? xml version = "1.0"? >
<root>
  <item>
    <name>Menu chiave per l'opzione destra< / name>
    <identifier>private.menu_key_to_OPTION_R< / identifier>
    <autogen>__KeyToKey__ KeyCode :: PC_APPLICATION, KeyCode :: OPTION_R< / autogen>
  < / item>
< / root>
 

Torna alla scheda Cambia chiave, fai clic su Ricarica XML e seleziona la nuova mappatura appena creata all'inizio dell'elenco.

Karabiner ha il proprio EventViewer della tastiera nella scheda Varie, quindi non è necessario KeyCode.

Karabiner non ha più un collegamento EventViewer o private.xml nella scheda misc.Non sembra nemmeno rimappare il tasto menu.Tuttavia, si attiva come 110 in KeyCodes
Il Visualizzatore eventi è stato spostato nella voce di menu.Inoltre, la chiave viene registrata come "applicazione" nel Visualizzatore eventi, quindi è stato eseguito il mapping di tale chiave.Ancora non è stata visualizzata alcuna opzione xml
A partire dalla versione 11.5.0 di Karabiner, puoi utilizzare la scheda Modifiche semplici per aggiungere un altro tasto di comando sul lato destro della tastiera.La traduzione del nome della chiave da tastiera a Karabiner è: tasto Windows => comando sinistro e tasto menu => applicazione (almeno sulla tastiera, ymmv).
CSawy
2020-03-24 01:20:24 UTC
view on stackexchange narkive permalink

Facendo la risposta di @ Steph ma con il moschettone:

  1. Installa Karabiner da qui
  2. Nella scheda "Modifiche semplici", seleziona la tua tastiera (la mia era questa "Microsoft ..")
  3. Premi "Aggiungi elemento" per apportare queste 4 modifiche nello screenshot qui sotto

configuration

Questo mapperà le tue chiavi come segue:

enter image description here

Steph
2017-04-14 02:59:22 UTC
view on stackexchange narkive permalink

Ho scoperto che Seil funziona per cambiare il tasto "menu contestuale" nella funzione "Opzione" (presumo che funzionerebbe anche per passare a "Comando", anche se non l'ho provato) a El Capitan.

In "Preferenze di Sistema ... |Tastiera "Ho cambiato" Opzione "in" Comando "e" Comando "in" Opzione ", in modo che i tasti siano nello stesso ordine del mio MacBook Pro, per facilitare la" memoria muscolare ".

Quindi in "Preferenze di Seil |Impostazione |Tasti sulla tastiera non Apple "Ho selezionato" Abilita tasto applicazione (tasto menu) "e ho impostato il codice chiave su" 54 "(secondo" Seil "questo è" Comando destro ", ma probabilmente a causa dell'interruttore in" Tastiera "funziona come "Opzione".

Quindi questo mi dà questo:

Keyboard

clemsam lang
2018-10-10 13:46:17 UTC
view on stackexchange narkive permalink

Riproposizione del pulsante "menu" sulla tastiera Windows di un notebook in MacOS 10.12+

Esiste una nuova versione di Karabiner ("Karabiner Elements 12.1" da utilizzare con MacOS 10.12+) che imho giustifica l'aggiunta di una risposta separata a questo argomento, anche se ho pubblicato su questo argomento. simile qui prima.
[Dato che ho eseguito l'aggiornamento a MacOS 10.13 (High Sierra), ho dovuto utilizzare ApplePS2SmartTouchPad.kext per poter rimappare il pulsante "menu", che ora è visto come scan_previous_track codice>. ]

Con Karabiner Elements devi modificare il suo file ~ / .config / karabiner / karabiner.json , in qualche modo diverso ** rispetto al codice sopra ...

Per prima cosa, trova il nome del pulsante "menu" sulla tastiera tramite Karabiner EventViewer :
basta premerlo una volta. [Il mio è: scan_previous_track , il tuo è probabilmente diverso ...]

Ecco un codice analogo a parti di ciò che ho pubblicato sopra, aprendo & e chiudendo "Informazioni":

  {"description": "Finder: tasto 'menu' per æ-I / æ-W premendo o tenendo premuto",
    "manipolatori": [
        {"condizioni": [{"bundle_identifiers": ["^ com.apple.finder"],
                                         "type": "frontmost_application_if"}
                        ],
                "from": {"consumer_key_code": "scan_previous_track"},
          "parameters": {"basic.to_if_alone_timeout_milliseconds": 200,
                          "basic.to_if_held_down_threshold_milliseconds": 500
                        },
         "to_if_alone": [{"key_code": "i",
                           "modificatori": ["comando_destra"]
                        }],
     "to_if_held_down": [{"key_code": "w",
                           "modificatori": ["comando_destra"],
                           "repeat": falso
                        }],
        "tipo": "base"
        }
                    ]
}
 

(Se premuto brevemente Cmd-I viene attivato, dopo aver tenuto premuto il pulsante per mezzo secondo: Cmd-W)

- from, to ... e type sono espressioni obbligatorie per la nuova mappatura
- condizioni, parametri definiscono esclusivamente le app interessate e le soglie temporali per gli eventi **
- "repeat": false impedisce a questo codice di chiudere involontariamente più di una finestra
- Questo codice verrebbe inserito tra le parentesi di "rules": [] (possibilmente con "," aggiunto)
(Ho creato scorciatoie per la funzione cronologia avanti e indietro del mio browser premendo anche &)
- Dai un'occhiata al Manuale di riferimento json di Karabiner Elements

(** KE non supporta più la selezione condizionale di uielementrole , ma alcune altre condizioni .)

MJV
2017-07-13 12:15:47 UTC
view on stackexchange narkive permalink

Karabiner sembra non supportare ancora OS Sierra, ma Karabiner Elements sì.L'installazione richiede un po 'di lavoro, ma una volta terminato puoi mappare "applicazione" ad es."right_command" per farlo funzionare come hai descritto.

clemsam lang
2017-08-21 21:19:07 UTC
view on stackexchange narkive permalink

Uso MacOSX 10.11.6 El Capitan (da un Mac mini rotto) su un hp-2570p EliteBook, quindi il tasto menu di Windows non viene riconosciuto come "PC_APPLICATION" ma semplicemente come "FN" = tasto funzione.

br> Sfortunatamente questa chiave blocca le chiavi secondarie, quindi ho dovuto eseguire alcune contrazioni più elaborate per arrivare dove volevo:

Utilizzando Karabiner (con EventViewer integrato per informazioni su chiavi / nomi / windownames) ho riutilizzato la chiave per:
- imita æ-i nel Finder (ripetere per closing)
- mimix æ-i in VLC (- "-)
- fai history-back in Safari
Inoltre ho apportato altre modifiche ai tasti non del menu:
- ha ridefinito alcuni tasti che non sono etichettati correttamente sulla mia tastiera tedesca
- fatto l'accesso a pageUp / Down "con una mano" sulla mia tastiera (non mostrato)

Probabilmente col tempo troverò altre semplificazioni in altre applicazioni ...
Ho usato questo codice "individuale" in "private.xml" (dettagli: vedi post di antoine):

  <! - Il primo elemento ridefinisce <, >, ^, ° per la mia tastiera (efficace per ulteriori elementi !!!)
<item>
    <name>Switch_specialKeys _ ^ _ ° < / name>
    <identifier>private.Switch_specialKeys _ ^ _ ° < / identifier>
        <autogen>__KeyToKey__ KeyCode :: BACKQUOTE, ModifierFlag :: SHIFT_L, KeyCode :: GERMAN_U_UMLAUT, ModifierFlag :: SHIFT_L | ModifierFlag :: OPTION_L< / autogen>
        <autogen>__KeyToKey__ KeyCode :: BACKQUOTE, KeyCode :: 6, ModifierFlag :: SHIFT_L | ModifierFlag :: OPTION_L< / autogen>
<autogen>__KeyToKey__ KeyCode :: DANISH_DOLLAR, KeyCode :: BACKQUOTE< / autogen>
        <autogen>__KeyToKey__ KeyCode :: BACKQUOTE, KeyCode :: DANISH_DOLLAR, ModifierFlag :: SHIFT_L< / autogen>
< / item>

<! - I prossimi 2 elementi differenziano "Cmd-i / -w" tramite (non-) AXWindow per doppio uso -->
<item>
    <name>WinR-FNDR æ-I< / name>
    <identifier>private.WinMenu_to_Cmd-I< / identifier>
    <uielementrole_not>AXWindow< / uielementrole_not>
    <only>FINDER< / only>
        <autogen>
          __KeyToKey__ KeyCode :: FN, KeyCode :: I, ModifierFlag :: COMMAND_L
        < / autogen>
< / item>
<item>
    <name>WinR-FNDR æ-W< / name>
    <identifier>private.WinMenu_to_Cmd-W< / identifier>
    <only>FINDER< / only>
    <uielementrole_only>AXWindow< / uielementrole_only>
        <autogen>
          __KeyToKey__ KeyCode :: FN, KeyCode :: W, ModifierFlag :: COMMAND_L
        < / autogen>
< / item>

<! - Per VLC gli elementi <uielementrole_only> sono "AXWindow" per
     finestra e "AXRadioButton" per la sua finestra di informazioni. ->

<! - La mia scorciatoia per il "ritorno alla cronologia" di Safari consiste in questa definizione:
     <autogen>
        __KeyToKey__ KeyCode :: FN, KeyCode :: CURSOR_LEFT, ModifierFlag :: COMMAND_L
    < / autogen> -->
 

Per le applicazioni per PC in esecuzione su CrossOver i nomi delle applicazioni non sono riconosciuti da Karabiner, quindi ho usato <appdef> per (ri) definire i loro nomi e <windownamedef> per indirizzare una finestra particolare;queste definizioni erano quindi disponibili nei tag <only> e <windowname_only>.

rmbrad
2020-08-07 04:11:57 UTC
view on stackexchange narkive permalink

A partire da macOS 10.12 Sierra, questa operazione può essere eseguita dalla riga di comando utilizzando l'utilità della riga di comando hidutil come descritto nella Nota tecnica TN2450.

Utilizzando la tabella degli ID di utilizzo delle chiavi in ​​fondo alla nota tecnica, è possibile trovare gli ID del tasto dell'applicazione (ovvero del menu di scelta rapida) e del tasto della GUI (ovvero del comando) destro rispettivamente come 0x65 e 0xE7. Pertanto la mappatura può essere eseguita dalla riga di comando come segue:

  proprietà hidutil --set '{"UserKeyMapping": [
    {
        "HIDKeyboardModifierMappingSrc": 0x700000065,
        "HIDKeyboardModifierMappingDst": 0x7000000E7
    }
]} "
 

La mappatura non sopravviverà ai riavvii, ma può essere resa persistente utilizzando un agente launchd inserendo un elenco di proprietà come il seguente nella directory dell'agente di avvio appropriata (ad esempio ~ / Library / LaunchAgents per il tuo utente):

  <? xml version = "1.0" encoding = "UTF-8"? >
<! DOCTYPE plist PUBLIC "- // Apple // DTD PLIST 1.0 // EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version = "1.0" >
<dict>
    <key>Label< / key>
    <string>com.local.KeyRemapping< / string>
    <key>ProgramArguments< / key>
    <array>
        <string> / usr / bin / hidutil< / string>
        <string>property< / string>
        <string> - set< / string>
        <string> {"UserKeyMapping": [
            {
                "HIDKeyboardModifierMappingSrc": 0x700000065,
                "HIDKeyboardModifierMappingDst": 0x7000000E7
            }
        ]} < / string>
    < / array>
<key>RunAtLoad< / key>
    <true / >
< / dict>
< / plist>
 


Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...