Creazione di chiave di escape fisica sul nuovo MacBook Pro con TouchBar modificando .keylayout per il tasto §


10

I layout di tastiera del Regno Unito per il TouchBar MacBook Pro hanno un tasto § / ± piuttosto inutile in alto a sinistra che sarebbe perfetto da usare come tasto di escape fisico (vedi questa immagine ).

macOS ha un sistema di mappatura della tastiera (/ Libreria / Layout tastiera / - ad es. vedi http://www.gingerbeardman.com/UK.keylayout/ e https://developer.apple.com/library/content/technotes/tn2056/ _index.html ) che consente di modificare le chiavi.

Mi sembra possibile inserire una linea nel layout di tastiera pertinente simile a:

<key code="<code for that key>" output="&#x1B;" />

dovrei permettermi di trasformare quella chiave in chiave di escape. (Se riesco a trovare / creare il layout anche per tutti gli altri tasti!)

Cercando su Google non ho trovato nessuno che dicesse di averlo fatto, il che mi sembra strano. C'è qualche motivo per cui non funzionerebbe? La tastiera TouchBar può essere rimappata con un file .keylayout senza perdere alcuna funzionalità?

Ho trattenuto l'acquisto di un nuovo macbook pro per paura di perdere la chiave di fuga fisica! So che puoi rimappare ctrl / cmd / etc in Escape usando le Preferenze di Sistema, ma in confronto sembra una soluzione scadente.


Quale chiave utilizzerai se non il maiuscolo o quelli inclusi che Apple rende molto facili e configurabili?
bmike

1
@bmike Il tasto § / ± in alto a sinistra nel layout di tastiera del Regno Unito - guarda questa immagine per vedere il tasto di cui sto parlando: d.ibtimes.co.uk/it/full/1570365/macbook-pro-touch- bar.jpg - è una chiave inutile che non ho mai usato per lo scopo previsto su qualsiasi Mac!
JosephH,

Caspita - Mi mancava del tutto quella parte. Vediamo se riesco a trovare qualche opzione per rimappare. La mia risposta non è così flessibile con l'opzione di rimappatura "facile".
bmike

@bmike Grazie! Si. È un'opzione interessante non realmente disponibile sulle mappe della tastiera degli Stati Uniti. :-) Spero sia realizzabile con un .keylayout. In realtà ho ordinato il MacBook Pro Touchbar ora, quindi sarà in grado di sperimentare quando arriva.
JosephH,

Risposte:


9
  1. Installa Karabiner-Elements
  2. Eseguilo dal Launchpad (ovviamente)
  3. Nella scheda "Modifiche semplici" crea un mapping "non-us-backlash" per "escape"
  4. Godere!

Il codice chiave BTW per "§" è 0A (come riportato da Karabiner Event Viewer)


1
errore di battitura:s/non-us-backlash/non-us-backslash
Shlomi Noach,

6

Apri Preferenze di Sistema: seleziona la tastiera. Quindi selezionare Modifier Keys ... verso l'angolo in basso a destra della finestra.

Ho il escape assegnato al tasto BLOC MAIUSC.

inserisci qui la descrizione dell'immagine

Sono d'accordo che l'uso dei tasti di controllo per escape è scadente, ma il tasto BLOC MAIUSC funziona molto bene. In pratica, non ho davvero avuto problemi ad imparare a usare il tasto di escape software. Avere il blocco maiuscole è molto più veloce una volta che mi sono abituato a causa della ridotta distanza di viaggio dalla fila di casa.


6

Ho trovato della documentazione su Remapping Keys in macOS 10.12 Sierra che funziona senza strumenti di terze parti.

Per cambiare la chiave appena sopra la scheda, imposta src su 0x64 (Tastiera non US \ e |) e dst su 0x29 (Escape). Questi valori dovrebbero essere OR con 0x700000000 nella chiamata a hidutil per qualche motivo.

hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000064,"HIDKeyboardModifierMappingDst":0x700000029}]}'

Potresti metterlo in un LaunchAgent (~ / Library / LaunchAgents / give.me.esc.key.plist) per averlo impostato ogni volta che accedi.

<?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>give.me.esc.key</string>
    <key>ProgramArguments</key>
    <array>
        <string>hidutil</string>
        <string>property</string>
        <string>--set</string>
        <string>{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000064,"HIDKeyboardModifierMappingDst":0x700000029}]}</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>

Mi hai salvato la vita. Odio le tastiere con il tasto tilda accanto al tasto Maiusc e al tasto F * N §sotto escape. Quindi l'ho rimappato con il pulsante tilda e il cambio esteso. hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000064,"HIDKeyboardModifierMappingDst":0x700000035},{"HIDKeyboardModifierMappingSrc":0x700000035,"HIDKeyboardModifierMappingDst":0x7000000e1}]}'A proposito, puoi ottenere quei codici usando il visualizzatore di chiavi da moschettone
DanSkeel,

Come posso mantenere l'accesso a shift- §così posso ancora usare ±? Cioè posso usare i modificatori?
Wivku,
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.