Como remapear uma combinação de teclas para uma única chave?

14

Estou usando o Ubuntu em um Chromebook Samsung. Como alguns de vocês podem saber, o teclado usado nos netbooks baseados no ChromeOS é um pouco estranho: entre outras coisas, ele não tem a tecla Del *. Se eu fosse usar este netbook para seu propósito original, navegar, eu acho que não seria um problema, mas eu preciso programar com ele, e eu sinto falta de muitas chaves, especialmente do Delete um, mas também Page Up , Page Down , home e End .

Então eu estive procurando uma maneira de remapear Alt + Backspace para Page Up , Alt + left seta para Home , Alt + para baixo para Page Down , e assim em ...

Eu encontrei muitas explicações sobre como remapear uma chave, mas não sei como remapear uma combinação de teclas para uma única chave. Alguém já tentou fazer algo assim?

Muito obrigado.

* Quero dizer, a chave que apaga um caractere para a direita. Nós o chamamos de "Supr" na Espanha, não sei como é nos países de língua inglesa.

    
por jesusiniesta 07.12.2011 / 14:42

1 resposta

8

Você pode usar xbindkeys para pegar as chaves e xvkbd para enviar as chaves.

Crie um arquivo .xbindkeysrc em seu diretório pessoal e cole este texto:

"xvkbd -xsendevent -text '\[Delete]'"
  Alt + BackSpace

"xvkbd -xsendevent -text '\[Home]'"
  Alt + Left

"xvkbd -xsendevent -text '\[Page_Down]'"
  Alt + Down

Em seguida, inicie xbindkeys e isso deve funcionar. Provavelmente você quer mapear mais chaves, então depois de editar o .xbindkeysrc você pode executar pkill -HUP xbindkeys para enviar um sinal HUP para xbindkeys (ou matar xbindkeys e iniciá-lo novamente).

Para ver os nomes das chaves que os xbindkeys veem, você pode executar xbindkeys -mk ( man xbindkeys tem mais informações).

Para ver os nomes das chaves que o xvkbd conhece, dê uma olhada em /usr/include/X11/keysymdef.h (talvez alguém mais conheça um método melhor?).

xbindkeys só é executado até que sua sessão X termine, então você provavelmente quer colocá-lo em sua por elmicha 17.12.2011 / 15:32