Como respostas anteriores, eu também usei o Karabiner. Mais excelente App!
O que fiz de maneira diferente foi adicionar mapeamentos de teclas personalizados para atenuar o comando MAC v. Botões de controle no Terminal.
Na minha situação, estou usando um teclado da Logitech, portanto, nenhuma tecla de comando da Apple.
Essencialmente, o que fiz foi mapear a chave de comando do MAC para a chave de controle. Meu raciocínio era que eu queria preservar sequências Ctrl-Key comuns que o MAC mapeia para sequências de teclas de comando (ou seja, Ctrl-F, para encontrar). Além disso, eu precisava preservar as verdadeiras sequências de controle, como Ctrl-C para SIGINT. Basicamente, estamos multiplexando a tecla Control alguns.
Depois de instalar o Karabiner, não consegui que o Ctrl-c envie o unix (SIGINT) inicialmente. No entanto, depois de modificar o private.xml, consegui que funcionasse.
Passos:
- Faça o download do arquivo .dmg do Karabiner em: https://pqrs.org/osx/karabiner/
- Clique duas vezes no arquivo .dmg para instalá-lo.
- Uma vez instalado o Karabiner, abra os principais mapeamentos.
3.1 NÃO mapeie o Command_L ou Command_R para nada. Deixe-os desmarcados.
3.2 Mapeie o Control_L & Control_R para o respectivo Command_L & Command_R.
Em seguida, edite o arquivo private.xml. Link útil: https://pqrs.org/osx/karabiner/document.html#privatexml
4.1 Adicione o seguinte snippet:
<item>
<name>MAC2Unix Hacks</name>
<identifier>private.app_terminal_command2_to_ctrl</identifier>
<appendix>Map Command+C to Ctrl+C For Terminal</appendix>
<only>TERMINAL</only>
<autogen>__KeyToKey__ KeyCode::C, VK_COMMAND, KeyCode::C, VK_CONTROL</autogen>
</item>
- Aperte o botão de recarga, e você deve ser bom.
- Observe que, na janela Terminal, se você deseja copiar / colar texto, você o selecionará com o mouse ou o que for. No entanto, para copiá-lo agora para a área de transferência, você precisará usar rt-click-> copy do mouse. Lembre-se de remapearmos Ctrl-C (que costumava ser "cópia") e agora é SIGINT.