Eu tenho um teclado que, por algum motivo inexplicável, possui uma tecla que envia o símbolo do dólar dinamarquês para o OS X - §
. Com shift envia o símbolo de mais / menos - ±
.
É possível no Emacs ver a §
chave e convertê-la em Hyper ou Super? Então, se eu segurar essa §
tecla e pressionar f
, ela será ativada H-f
no Emacs.
Eu tentei o seguinte, que não funciona:
(define-key key-translation-map (kbd "§") (kbd "<Hyper>"))
Diz apenas <Hyper> is undefined
ao pressionar a tecla e não atua como um modificador.
Isso também não funciona:
(define-key key-translation-map (kbd "§") "<Hyper>")
que apenas transforma a §
chave em uma <
chave.
key-bindings
keymap
Matt Darling
fonte
fonte
Respostas:
Versão curta : nos termos do Emacs, o que eu realmente precisava era de acordes-chave .
@Malabarba e @XinUmbralis parecem estar certos - o Emacs não permite transformar uma chave normal em uma tecla modificadora normalmente. Eu realmente não gosto da idéia de combinar todas as teclas modificadoras do teclado e chamar isso de "Hyper", porque poderia entrar em conflito com outras coisas no futuro.
Eu já uso o Karabiner e, aparentemente, você pode criar modificadores personalizados com ele. Mas isso requer o mapeamento de todas as combinações no nível do SO, para que, digamos,
§-a
envie algo que o Emacs saiba como lidar.Lembrei-me da biblioteca de acordes de chaves e percebi que essa era a verdadeira terminologia do Emacs para o que eu queria. Exemplo de configuração:
O único problema que tenho com o acorde de teclas é que a semântica de um acorde de teclas é um pouco diferente de um modificador + tecla - não há repetição permitida, e todo o acorde deve ser inserido rapidamente.
Se eu encontrar uma solução para esses problemas, vou escrever sobre isso em algum lugar e fornecer um link em uma edição para esta resposta.
fonte
Talvez você não consiga reconectar a tecla de sinal de seção (tecla §) para enviar o comando hyper; no entanto, você pode reconectar a tecla caps-lock para enviar Hyper, usando Seil PCKeyboardHack .
Para religar a tecla caps-lock em Seil, faça o seguinte:
fonte