~ 'teclas não funcionam - fedora canela macbook

3

Acabei de instalar o Fedora 24 com o Cinnamon Desktop em um MacBook Pro e estou tendo problemas com o teclado.

Quando pressiono a tecla diretamente acima da guia, que deve ser 'e ~ estou recebendo < e > Todos os outros teclados do meu teclado estão funcionando corretamente.

Eu tentei os seguintes layouts e é isso que eles exibem sem e com a tecla Shift:

  • Inglês (EUA)
    • Imprime < e >
  • Inglês (EUA, internacional alternativo)
    • Imprime \ e |
  • Inglês (internacional dos EUA com chaves inativas)
    • Imprime \ e | ' e ~
  • Inglês (Macintosh)
    • Imprime § e ±

Alguém sabe como obter a chave para exibir corretamente 'e ~

Editar: saída de localectl e setxkbmap

$ localectl
   System Locale: LANG=en_US.UTF-8
       VC Keymap: us
      X11 Layout: us
$ setxkbmap -print
xkb_keymap {
    xkb_keycodes  { include "evdev+aliases(qwerty)"    };
    xkb_types     { include "complete"    };
    xkb_compat    { include "complete"    };
    xkb_symbols   { include "pc+us+inet(evdev)"    };
    xkb_geometry  { include "pc(pc105)"    };
};
    
por masstroy 13.03.2017 / 23:37

1 resposta

3

Isso pode ser um bug conhecido ( redhat , ubuntu , askubuntu ). A solução alternativa desses erros é:

echo 0 > /sys/module/hid_apple/parameters/iso_layout

Tente executar esse comando para testar (talvez seja necessário envolvê-lo com sudo sh -c "echo..." para executá-lo como root). Se isso corrigir o problema, torne-o permanente, colocando-o em um script rc.local (ou equivalente no systemd) para que ele seja executado no momento da inicialização.

Se isso funcionar, isso deve afetar as chaves nos ambientes X e console. A solução XKB abaixo afetaria apenas o X.

Você também pode corrigir isso no XKB. No Debian / Ubuntu (e possivelmente outros), as opções de XKB apple:badmap e apple:goodmap existem para trocar essas definições de chave automaticamente. Eles podem ser definidos em /etc/default/keyboard para entrar em vigor em todo o sistema ou usados com setxkbmap ou o utilitário de configuração de teclado do seu DE em um nível por usuário.

Essas respostas ( unix.SE , askubuntu ) recomenda fazer alterações em um arquivo do sistema ( /usr/share/X11/xkb/symbols/pc ou /usr/share/X11/xkb/symbols/us ) para alterar a variante mac .

A alteração sugerida permitirá carregar as chaves adequadas com setxkbmap -layout us -variant mac :

orig:
xkb_symbols "mac" {

    include "us(basic)"
    name[Group1]= "English (Macintosh)";
    key.type[group1]="FOUR_LEVEL";

    // Slightly improvised from http://homepage.mac.com/thgewecke/kblayout.jpg
    key <LSGT> { [   section,  plusminus,       section,        plusminus ] };
    key <TLDE> { [     grave, asciitilde,    dead_grave,        dead_horn ] };


fix: swap key definitions:
    key <TLDE> { [   section,  plusminus,       section,        plusminus ] };
    key <LSGT> { [     grave, asciitilde,    dead_grave,        dead_horn ] };

(No meu sistema Arch, isso é em /usr/share/X11/xkb/symbols/us ; pode parecer diferente se o seu sistema o tiver em /usr/share/X11xkb/symbols/pc , mas trocar os nomes das chaves deve ser o mesmo.)

Se o seu sistema atualizar o banco de dados de símbolos XKB, suas alterações poderão ser sobrescritas e você precisará aplicar essa alteração novamente. Veja minha resposta a outra questão XKB para um método de fazer essa alteração como uma personalização do usuário.

Você pode precisar de etapas adicionais para desativar as configurações de teclado do GNOME (ou convencê-las a usar as configurações selecionadas) .

    
por 14.03.2017 / 16:53