Como "depurar" um teclado no Linux? Como pressionar uma tecla e ver um código em um terminal

13

Eu não tive uma resposta para o meu problema sobre adicionar teclados adicionais no meu Ubuntu 10.04 . A marca de perguntas não está funcionando no meu teclado, usando apenas a tecla Alt Gr + W.

Então, eu não sei se isso é um problema com o Ubuntu ou o Virtualbox em si (estou rodando dentro de uma VM).

É um teclado usb. HP KU-0316.

Eu gostaria de depurar este problema. O teclado está conectado, então, quando pressiono uma tecla, acredito que algo esteja sendo enviado para o meu sistema operacional, algum código, não sei. Eu gostaria de entender esse problema, encontrar algum código chave e encontrar algum arquivo * .conf e corrigir meu problema manualmente.

Então, existe uma aplicação como esta no Linux?

    
por Somebody still uses you MS-DOS 15.06.2010 / 14:38

3 respostas

13

Experimente xev . Ele exibirá os códigos de tecla que o sistema X Window vê quando você pressiona as teclas de seu interesse. Você pode usar xmodmap para modificar o mapeamento.

    
por 15.06.2010 / 15:22
11

Um excelente utilitário do linux-input chamado 'evtest' é excelente para depurar teclados, mouses e joysticks. As teclas de função também devem funcionar.

apt-get install evtest

Exemplo de saída pressionando a tecla caps lock enquanto estiver em execução:

Event: time 1398955189.226822, type 17 (EV_LED), code 1 (LED_CAPSL), value 1
Event: time 1398955189.226822, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70039
Event: time 1398955189.226822, type 1 (EV_KEY), code 58 (KEY_CAPSLOCK), value 0
Event: time 1398955189.226822, -------------- SYN_REPORT ------------

Como evtest usa / dev / input, você pode usá-lo a partir de um TTY ou SSH, sem nenhum Xserver em execução.

    
por 01.05.2014 / 16:41
4

Existem os chamados arquivos de dispositivos de eventos , que são vinculados a um nível muito baixo de camada de entrada. Eles residem no diretório /dev/input/ e você pode ler códigos de teclas que são passados pelo teclado virtual PS / 2 fazendo sudo hd /dev/input/by-path/platform-i8042-serio-0-event-kbd . Se este comando falhar, tente com cada um dos arquivos /dev/input/eventX : um deles será vinculado ao seu teclado.

    
por 15.06.2010 / 14:55