Use a tecla de comando do Mac OS no comando bind do bash

5

No meu bash do Ubuntu, eu tinha remapeado o combo de chave Ctrl-y para copiar texto para a área de transferência como,

bind -x '"\C-y": copy_line_from_x_clipboard'

Funciona. Agora, estou migrando para o Macbook, gosto de usar Command key em vez de Ctrl key acima. Não estou vendo exemplos de atalhos de teclado na rede que contenham a chave de comando do Mac OS. E eu tentei obter a combinação de chaves para Command-y usando o comando sed -n l como explicado aqui , mas mostra linha vazia depois de tomar Command-y entrada de chave.

Para quem estiver interessado, a função chamada para colar texto da área de transferência é

copy_line_from_x_clipboard() {
        local n=$READLINE_POINT
        local l=$READLINE_LINE
       local s=$(xsel -ob)
       READLINE_LINE=${l:0:$n}$s${l:$n:$((${#l}-n))}
       #READLINE_LINE=${l:0:$n}$s
       READLINE_POINT=$((n+${#s}))
}
    
por Madhavan Kumar 03.08.2016 / 19:06

1 resposta

4

De acordo com um dos comentários em Use mapeamentos CMD no console Vim , você não pode usar a tecla Command no Terminal.app, embora você possa no iTerm2.

Provavelmente você está procurando por modificador , como shift , controle , por exemplo, algo análogo ao alt ou a tecla meta .

Nas preferências de teclado do Terminal.app, você tem um conjunto inicial de definições de chave que usam esses modificadores - juntamente com a Opção . Você pode alterar essas definições ou adicionar novas.

Aqui estão algumas capturas de tela mostrando essa caixa de diálogo:

AsegundaimagemmostraOpção(sozinho,ouemcombinaçãocomoutrosmodificadores),masoComandonãoestádisponívelparausopelosprogramasemexecuçãonoterminal:

    
por 04.08.2016 / 00:28