Key não é detectada no xev nem showkey -k no Ubuntu 10.04 em uma VM do Virtualbox

5

Minha chave do ponto de interrogação no meu teclado não está funcionando. ("?") Eu tentei usar xev e showkey -k para tente identificar pelo menos um código de acesso e usar manualmente o xmodmap para mapeá-lo.

Infelizmente, as chaves não estão sendo detectadas em nenhum dos utilitários. Estou usando o Ubuntu 10.04 em uma máquina virtual (VirtualBox 3.2.4 r62467) e meu kernel é 2.6.32-22-genérico. Meu anfitrião é um Ubuntu 8.04.

Quando executo xev no meu host, recebo:

KeyRelease event, serial 30, synthetic
NO, window 0x3600001,
root 0x5d, subw 0x0, time 19346721, (726,722), root:(730,746),
state 0x2010, keycode 211 (keysym 0x2f, slash), same_screen YES,
XKeysymToKeycode returns keycode: 61
XLookupString gives 1 bytes: (2f) "/"
XFilterEvent returns: False

E quando eu corro showkey -v :

0x59 0xd9

xmodmap -pk sobre essa chave no convidado:

0x002f (slash)  0x003f (question)   0x002f (slash)  0x003f (question)   0x00b0 (degree) 0x00bf (questiondown)

... no host:

 0x002f (slash)  0x003f (question)   0x003b (semicolon)  0x003a (colon)  0xfe60 (dead_belowdot)  0xfe56 (dead_abovedot)

Mas quando clico no meu convidado, simplesmente não funciona.

Alguns ingressos relacionados no Virtualbox: # 4957 , # 599 e # 205 .

O que isso pode ser? Não é uma chave multimídia especial, é simples. Eu gostaria de entender o que exatamente está acontecendo, então pelo menos eu posso tentar depurar melhor esse problema. Se for detectado no meu host, por que não está no meu convidado?

    
por Somebody still uses you MS-DOS 15.06.2010 / 16:29

2 respostas

2

Eu desisto.

Eu vou comprar um novo teclado. $ 10 pela minha sanidade. Eu já aprendi um monte de conceitos do xmodmap e tal.

    
por 18.06.2010 / 16:49
7

De wiki do archlinux :

Check for scancodes

If a key does not have a keycode you can know if it has a scancode by looking at the kernel log using the dmesg command:

$ dmesg|tail -5

If when you press the key something like that appears:

atkbd.c: Unknown key pressed (translated set 2, code 0xf1 on isa0060/serio0).
atkbd.c: Use 'setkeycodes e071 <keycode>' to make it known.

then your key has a scancode which can be mapped to a keycode. See Map scancodes to keycodes.

If nothing new appears in dmesg then your key does not have a scancode, which means that it is not recognized by the kernel and cannot be used.

    
por 14.03.2012 / 09:29