Adicionar chave de composição ao OS X


10

Quero alterar uma das minhas teclas do teclado para uma tecla Compor para poder digitar facilmente acentos ou caracteres comuns, por exemplo: Compose+ e+ '-> é.

Existe uma configuração que eu possa alterar ou um programa que eu possa instalar para adicionar esse recurso? Por exemplo, eu gostaria de usar Caps Lockcomo Compose.


11
Se você estiver no OS X Lion, manter pressionada uma tecla da letra, por padrão, fornecerá uma lista de caracteres acentuados comuns a partir da qual você pode escolher usando as teclas numéricas.
Dan J

11
Somente em certas aplicações. E apenas aqueles que a Apple escolheu para você que tendem a ser incompletos.
21711 Mike OnB 0:11

11
Esta questão (e resposta) também está relacionada: superuser.com/questions/202695/real-compose-key-on-mac-os #
elaichi

11
FWIW, a lista pré-aprovada da Apple de quais caracteres acentuados você pode escolher pode ser invadida .
Daniel

Respostas:


20

Eu escrevi um artigo completo explicando como configurar uma chave de composição real ( ie. Right Option + '+ eépor exemplo), usando uma combinação de KeyRemap4MacBook e regras de entrada de cacau específicos.

Etapa 1: escolha uma tecla de composição

Escolha a tecla Escrever para que seja facilmente acessível, mas não o impeça de fazer o que você normalmente faz. Eu uso a Right Optionchave como minha chave de composição. Eu já tenho uma Left Optionchave, então a correta é um pouco inútil para mim. E, de alguma forma, corresponde à posição da Composetecla nos teclados antigos da Sun.

Isso seria Right Optionem um teclado Mac. Eu recomendo isso.

Etapa 2: remapear a tecla Redigir

O problema é que as preferências de teclado do Mac OS X:

  • não permita diferenciar entre Left Optione Right Optionchaves
  • só permite remapear as teclas modificadoras para outra tecla modificadora (ou para nada)

Felizmente, existe o KeyRemap4MacBook que permite fazer coisas de nível muito baixo com o teclado. Instale-o.

Vamos agora remapear nossa chave de composição para algo que a próxima camada entenderá. Eu escolhi Shift Control F13por isso. É muito improvável que você precise dessa combinação de teclas.

No arquivo, ~/Library/Application Support/KeyRemap4MacBook/private.xmlcoloque o seguinte:

<?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>

Por fim, nas Preferências do sistema , abra as configurações do KeyRemap4MacBook e clique no botão ReloadXML . Em seguida, ative a nova opção.

Etapa 3: criar ligações de composição

O último passo é a criação das ligações reais. Eu escolhi importar as regras do /usr/share/X11/locale/en_US.UTF-8/Composemeu sistema Debian.

Bob Kåres escreveu um script que permite converter as regras de composição do X11 em combinações de teclas de cacau.

Converta Composeseu próprio arquivo usando o script de Bob ou faça o download do meu DefaultKeyBinding.dict do artigo . Salve-o ~/Library/KeyBindings/DefaultKeyBinding.dict.

Tenha cuidado: por usos de script padrão de Bob F13em vez de Shift Ctrl F13modo em DefaultKeyBinding.dictque você precisa para a mudança:

"\UF710"

para dentro:

"^$\UF710"

Se, por algum motivo, você decidiu optar por outra combinação, consulte este artigo de Xah Lee para descobrir a sintaxe adequada.


O conteúdo do link parece uma ótima solução para esse problema, mas as respostas no Ask Different precisam ser mais do que apenas um link. Não há problema em incluir um link, mas faça um resumo ou trecho da resposta. A idéia é tornar a resposta independente.
Daniel

@DanielLawson claro, isso faz sentido; Vou atualizar minha resposta.
Sam Hocevar

Lá, copiei a maior parte do artigo. Eu posso fazer isso, já que ele próprio :-)
Sam Hocevar

Resposta verdadeiramente impressionante; +50 internets. (Sério, eu estou dando um presente uma recompensa assim que o sistema me permite)
Daniel

Que bom que você incluiu o link, porque agora está morto! (Você pode querer atualizá-lo se ele é movido.)
wchargin

13

Um recurso de "chaves mortas" semelhante ao que você deseja já existe por padrão. Para obter a letra é, pressione Option ⌥+ e e, em seguida e.

Depois de pressionar + e, você verá um ´caractere destacado (é amarelo no meu computador). Pressione qualquer letra que ostente o acento (isso varia de acordo com o idioma do teclado, para EN-US é é, ú, í, ó e á) e você obterá a versão acentuada da letra. Existem outros sotaques possíveis: + `dá um sotaque agrave (`` `), + edá um sotaque agudo (´), + udá uma diérese / trema (¨), + idá um sotaque circunflexo (ˆ) e + ndá um til (˜) Os layouts de teclado fora dos EUA (em particular o galês) têm mais toques e permitem mais letras para os mesmos toques. O Visualizador de teclado é útil para ajudar a descobrir quais combinações são suportadas atualmente no seu layout.

Se você estiver no Lion, como o @djacobson mencionou, mantenha pressionadas algumas letras para ver uma variedade de opções acentuadas para essa carta.


se você usar um layout de teclado diferente, talvez não seja ⌥+e. Para ver qual é, abra o Visualizador de Teclado (no ícone da bandeja de idiomas) e pressione . As teclas mostradas em amarelo denotam caracteres de composição
Ciprian Tomoiagă

2

Tecla de composição no layout de teclado dedicado

Escrevi um costume americano , um layout de teclado que implementa a tecla de composição.

No Mac OS X, existem duas maneiras de implementar a chave de composição: Com o pode ser implementado com o sistema de texto Cocoa (como já descrito na resposta mais útil de Sam Hocevar) ou com um layout de teclado dedicado. Ambos os métodos têm seus prós e contras:

  • Uma implementação de tecla de composição com o sistema de texto Cocoa funcionará independentemente do layout do teclado escolhido. As configurações do sistema de texto de cacau no DefaultKeyBinding.dictarquivo são, por comparação, facilmente modificadas.
  • Uma implementação de composição de teclas com um layout de teclado funcionará em todo o sistema operacional em qualquer aplicativo, não apenas nos aplicativos Cocoa. Ele pode ser ligado e desligado com a interface do usuário selecionando outro layout de teclado. Há um feedback visual ao digitar a combinação de composição (que altera ligeiramente o comportamento).

A instalação do layout do teclado é fácil:

  1. Faça o download e abra uscustom.2012-08-28.zip .
  2. Mova os arquivos UScustom.keylayoute UScustom.icnspara um dos seguintes:
    • /Library/Keyboard Layouts/ (para todos os usuários)
    • ~/Library/Keyboard Layouts/ (apenas para você, não são necessários privilégios de administrador)
  3. Ative o layout do teclado personalizado dos EUA na guia Fontes de entrada do Painel de preferências de idioma e texto , para que você possa selecioná-lo no item da barra de menus das fontes de entrada - seu ícone mostra uma bandeira dos EUA com um pequeno C para “personalizado” ou para “ compor ”: Ícone personalizado dos EUA.

A tecla de composição do layout de teclado personalizado dos EUA é mapeada para duas teclas diferentes:

  • Há uma tecla de composição no ISO §(que é a tecla excedente de um teclado ISO; os teclados ISO são aqueles em que a tecla de retorno tem o formato de uma letra maiúscula L virada).
  • Há outra tecla de composição em Shift+ Control+ F13. Esse é o mesmo mapeamento escolhido por Sam Hocevar, portanto, se você deseja remapear a chave de composição para a tecla de opção correta, poderá seguir exatamente as cuidadosas explicações descritas em sua resposta.

Atribuindo composição ao capslock

Se você deseja atribuir composição à tecla capslock (como na pergunta original), você precisa do PCKeyboardHack de Takayama Fumihiko, além do KeyRemap4MacBook:

  1. Instale o PCKeyboardHack.
  2. Abra o painel de preferências PCKeyboardHack.
  3. Marque a caixa de seleção Change Caps Lock .
  4. Clique duas vezes no código-chave do Change Caps Lock e insira 10(ISO §).

Isso funciona com a tecla de composição de layout de teclado personalizado dos EUA . Para atribuir a chave de composição do sistema de texto de cacau (conforme descrito cuidadosamente por Sam Hocevar) ao capslock, você precisa de outra etapa:

Com o KeyRemap4MacBook, remapeie o ISO §para Shift+ Control+ F13(ou onde estiver a sua tecla de composição). Para fazer isso, siga as etapas cuidadosamente explicadas por Sam Hocevar, mas alterando o código que deve ser colocado ~/Library/Application Support/KeyRemap4MacBook/private.xmldesta maneira:

<?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>


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.