Aggiungi chiave Compose a OS X


10

Voglio cambiare uno dei miei tasti sulla tastiera in un tasto Compose in modo da poter digitare facilmente accenti o caratteri comuni, ad esempio: Compose+ e+ '-> é.

C'è un'impostazione che posso modificare o un programma che posso installare per aggiungere questa funzione? Ad esempio, vorrei usare Caps Lockcome Compose.


1
Se sei su OS X Lion, tieni premuto un tasto lettera per impostazione predefinita, ti fornirà un elenco di caratteri accentati comuni da cui puoi scegliere usando i tasti numerici.
Dan J,

1
Solo in alcune applicazioni. E solo quelli che Apple ha scelto per te che tende ad essere incompleto.
MikeyB,

1
Questa domanda (e risposta) è anche correlata: superuser.com/questions/202695/real-compose-key-on-mac-os
elaichi,

1
FWIW, l'elenco pre-approvato di Apple di quali personaggi accentati tra cui puoi scegliere può essere hackerato .
Daniel

Risposte:


20

Ho scritto un articolo completo che spiega come impostare una chiave di composizione reale (ad es. Right Option + '+ eéad esempio), utilizzando una combinazione di KeyRemap4MacBook e regole di input specifiche di Cocoa.

Passaggio 1: scegliere una chiave di composizione

Scegli la chiave di composizione in modo che sia facilmente accessibile ma non ti impedisca di fare qualsiasi cosa tu faccia normalmente. Uso la Right Optionchiave come chiave Compose. Ho già una Left Optionchiave, quindi quella giusta è un po 'inutile per me. E in qualche modo corrisponde alla posizione del Composetasto sulle vecchie tastiere Sun.

Sarebbe Right Optionsulla tastiera di un Mac. Lo consiglio a me.

Passaggio 2: rimappa la chiave di composizione

Il problema è che le preferenze della tastiera di Mac OS X:

  • non permettere di distinguere tra Left Optione Right Optionchiavi
  • consente di rimappare le chiavi del modificatore solo a un'altra chiave del modificatore (o a nulla)

Fortunatamente, c'è KeyRemap4MacBook che ti consente di fare cose di livello molto basso con la tastiera. Installalo.

Ora rimodelleremo la nostra chiave di composizione a qualcosa che il livello successivo capirà. Ho scelto Shift Control F13per quello. È molto improbabile che tu abbia bisogno di quella combinazione di tasti.

Nel file ~/Library/Application Support/KeyRemap4MacBook/private.xmlinserisci quanto segue:

<?xml version="1.0"?>
<root>
  <item>
    <name>Send Shift-Ctrl-F13 for Right Option</name>
    <identifier>private.send_shift_ctrl_f13_for_ropt</identifier>
    <autogen>--KeyToKey-- KeyCode::OPTION_R,
                          KeyCode::F13, ModifierFlag::SHIFT_L
                                      | ModifierFlag::CONTROL_L
    </autogen>
  </item>
</root>

Infine, dalle Preferenze di Sistema , apri le impostazioni KeyRemap4MacBook e fai clic sul pulsante ReloadXML . Quindi attiva la nuova opzione.

Passaggio 3: creare collegamenti di composizione

L'ultimo passo è la creazione dei vincoli effettivi. Ho scelto di importare le regole dal /usr/share/X11/locale/en_US.UTF-8/Composemio sistema Debian.

Bob Kåres ha scritto uno script che ti consente di convertire le regole di composizione X11 in associazioni di tasti Cocoa.

O converti un Composetuo file usando lo script di Bob o scarica il mio DefaultKeyBinding.dict dall'articolo . Salvalo in ~/Library/KeyBindings/DefaultKeyBinding.dict.

Fai attenzione: per impostazione predefinita lo script di Bob usa F13invece di Shift Ctrl F13così in DefaultKeyBinding.dictdevi cambiare:

"\UF710"

in:

"^$\UF710"

Se per qualche motivo hai deciso di optare per un'altra combinazione, consulta questo articolo di Xah Lee per scoprire la sintassi corretta.


Il contenuto del collegamento sembra un'ottima soluzione a questo problema, ma le risposte su Ask Different devono essere più di un semplice collegamento. Va bene includere un link, ma per favore riassumilo o estrailo nella risposta. L'idea è di rendere la risposta indipendente.
Daniel

@DanielLawson certo, ha senso; Aggiornerò la mia risposta.
sam Hocevar

Lì ho copiato la maggior parte dell'articolo. Posso farlo, dal momento che lo possiedo :-)
sam hocevar,

Risposta davvero fantastica; +50 internet. (Seriamente, sto dando a questo una taglia non appena il sistema me lo permette)
Daniel

Sono contento che tu abbia incorporato il link, perché ora è morto! (Potresti
volerlo

13

Una funzione "chiavi morte" simile a ciò che si desidera esiste già per impostazione predefinita. Per ottenere la lettera é, premi Option ⌥+ e, quindi e.

Dopo aver premuto + e, vedrai un ´carattere evidenziato (è giallo sul mio computer). Premi qualsiasi lettera che avrà quel segno di accento (questo varierà in base al linguaggio della tastiera, per EN-US è é, ú, í, ó e á) e otterrai la versione accentata della lettera. Ci sono altri accenti possibili: + `dà un accento agrave (`` `), + edà un accento acuto (´), + udà una diaeresi / umlaut (¨), + idà un accento circonflesso (ˆ) e + ndà una tilde (~). I layout di tastiera non statunitensi (in particolare gallese) hanno più accenti e consentono più lettere per gli stessi accenti. Keyboard Viewer è utile per capire quali combinazioni sono attualmente supportate nel layout.

Se sei su Lion, come menzionato da @djacobson, puoi tenere premute alcune lettere per vedere una varietà di opzioni accentate per quella lettera.


se si utilizza un layout di tastiera diverso, potrebbe non esserlo ⌥+e. Per vedere qual è, apri il Visualizzatore tastiera (dall'icona della barra delle lingue) e premi . I tasti mostrati in giallo indicano caratteri compositivi
Ciprian Tomoiagă,

2

Tasto Componi su layout tastiera dedicato

Ho scritto l'abitudine degli Stati Uniti , un layout di tastiera che implementa la chiave di composizione.

Su Mac OS X, ci sono due modi per implementare la chiave di composizione: O può essere implementato con il sistema di testo Cocoa (come già descritto nella risposta più utile di Sam Hocevar) o con un layout di tastiera dedicato. Entrambi i metodi hanno i loro pro e contro:

  • Un'implementazione della chiave di composizione con il sistema di testo Cocoa funzionerà indipendentemente dal layout di tastiera scelto. Le impostazioni del sistema di testo Cocoa nel DefaultKeyBinding.dictfile sono, al confronto, facilmente modificabili.
  • Un'implementazione della chiave di composizione con un layout di tastiera funzionerà su tutto il sistema operativo in qualsiasi applicazione, non solo nelle applicazioni Cocoa. Può essere attivato e disattivato con l'interfaccia utente selezionando un altro layout di tastiera. C'è un feedback visivo durante la digitazione della combinazione di composizione (che modifica leggermente il comportamento).

L'installazione del layout della tastiera è semplice:

  1. Scarica e apri uscustom.2012-08-28.zip .
  2. Sposta i file UScustom.keylayoute UScustom.icnsin uno dei seguenti modi:
    • /Library/Keyboard Layouts/ (per tutti gli utenti)
    • ~/Library/Keyboard Layouts/ (solo per te, non sono richiesti privilegi di amministratore)
  3. Attiva il layout di tastiera personalizzato degli Stati Uniti nella scheda Origini di input del riquadro Preferenze lingua e testo , in modo da poterlo selezionare dalla voce della barra dei menu delle origini di input: la sua icona mostra una bandiera degli Stati Uniti con una piccola C per "personalizzato" o per " componi ": Icona personalizzata degli Stati Uniti.

Il tasto di composizione del layout di tastiera personalizzato degli Stati Uniti è associato a due diversi tasti:

  • C'è una chiave di composizione in ISO §(che è la chiave in eccesso di una tastiera ISO; le tastiere ISO sono quelle in cui la chiave di ritorno ha la forma di una lettera maiuscola ruotata L).
  • C'è un'altra chiave di composizione in Shift+ Control+ F13. Questa è la stessa mappatura scelta da Sam Hocevar, quindi se vuoi rimappare la chiave di composizione con la giusta chiave di opzione, puoi seguire esattamente le spiegazioni accurate descritte nella sua risposta.

Assegnare la composizione a capslock

Se vuoi assegnare la composizione al tasto capslock (come nella domanda originale), hai bisogno di PCKeyboardHack di Takayama Fumihiko oltre a KeyRemap4MacBook:

  1. Installa PCKeyboardHack.
  2. Apri il pannello delle preferenze di PCKeyboardHack.
  3. Seleziona la casella di controllo Cambia maiuscole .
  4. Fai doppio clic sul codice chiave di Change Caps Lock e inserisci 10(ISO §).

Funziona con il tasto di composizione del layout di tastiera personalizzato degli Stati Uniti . Per assegnare la chiave di composizione del sistema di testo Cocoa (come attentamente descritto da Sam Hocevar) al maiuscolo, è necessario un altro passaggio:

Con KeyRemap4MacBook, rimappa ISO §su Shift+ Control+ F13(o ovunque sia la tua chiave di composizione). Per fare ciò, segui i passaggi spiegati attentamente da Sam Hocevar, ma cambiando il codice che deve essere inserito in ~/Library/Application Support/KeyRemap4MacBook/private.xmlquesto modo:

<?xml version="1.0"?>
<root>
<item>
  <name>Send Shift-Ctrl-F13 for ISO Section</name>
  <identifier>private.send_shift_ctrl_f13_for_iso_section</identifier>
  <autogen>
    --KeyToKey--
    KeyCode::UK_SECTION, ModifierFlag::NONE,
    KeyCode::F13, ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L
  </autogen>
</item>
</root>


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.