as modificações do xmodmap não são suficientes - qualquer outra coisa que eu possa fazer?

0

Estou usando um teclado da Apple que tem alguns incômodos em comparação com outros teclados. Ou seja, as teclas Alt_L e Super_L são trocadas, e a barra e menos chaves são trocadas ("|" e "<").

Eu escrevi um arquivo Xmodmap para trocar as chaves de volta:

keycode  49 = less greater less greater onehalf threequarters
keycode  64 = Super_L NoSymbol Super_L
keycode  94 = bar section bar section brokenbar paragraph
keycode 108 = Super_R NoSymbol Super_R
keycode 133 = Alt_L Meta_L Alt_L Meta_L
keycode 134 = Alt_R Meta_R Alt_R Meta_R

Eu fiz isso identificando as chaves usando xev e o modmap padrão xmodmap -pke e trocando os códigos de tecla. xev agora identifica todas as minhas chaves como corretas, o que é incrível! Eu também posso usar as teclas corretas para digitar a barra e menos de símbolos. (Eu segui essa resposta no askubuntu: Como eu remapear certas chaves ou dispositivos? )

Mas parece que a mudança não é muito profunda. Aqui estão alguns exemplos

  • A superchave agora está quebrada no Gerenciador de configurações do Compiz. Nenhum atalho envolvendo a tecla Super funciona (mas a tecla Alt funciona).
  • A caixa de diálogo de configurações do Gnome Do não atende às mudanças no xmodmap, e não consigo mais abrir a janela do Gnome Do se eu usar qualquer um dos remapeados chaves.
  • Os atalhos do Chrome não se importam com as alterações do xmodman, agora preciso usar Super + D para focar o campo de endereço (deve ser Alt + D)

Então, para resumir, tudo quebrou.

Eu gostaria de uma maneira mais profunda de dizer ao Ubuntu (ou qualquer outra distribuição do Linux) quais teclas estão no teclado. Existe uma maneira de editar o layout do teclado diretamente? Estou usando o layout de teclado norueguês Bokmål. Ela reside em um arquivo que eu poderia editar?

Quaisquer comentários, experiências anteriores ou pensamentos vagos relevantes seriam muito apreciados -

Obrigado

    
por Hubro 08.04.2012 / 18:03

1 resposta

1

Eu finalmente consegui trabalhar depois de horas de tentativas. Eu encontrei o arquivo onde os scancodes evdev são traduzidos em códigos de tecla xfree86 em X11, ou seja, /usr/share/X11/xkb/keycodes/evdev . Eu abri esse arquivo como root e movi os códigos-chave usando as configurações padrão do xmodmap como referência ( xmodmap -pke ). Minhas edições finais foram bem simples:

<LSGT> = 49; // This was 94
<TLDE> = 94; // This was 49
<LWIN> = 64; // This was 133
<LALT> = 133; // This was 64
<RWIN> = 108; // This was 134
<RALT> = 134; // This was 108
    
por Hubro 08.04.2012 / 22:56