Como posso resolver o mapeamento do teclado do Xephyr?

7

Quando eu inicio o Xephyr dentro do X, meu mapa do teclado fica instável na maioria das vezes apenas para caracteres não imprimíveis. Eu não posso usar as setas. De acordo com xev, a seta para baixo é mapeada para Super_R. A seta para cima é Print Screen. PgDown é mapeado para "Menu". Meu teclado funciona bem na tela original do X (: 0), mas na subdisplay do Xephyr (: 1), nada funciona bem.

Eu não tenho nenhuma coisa interessante do xmodmap acontecendo no meu monitor X principal que eu saiba. Tudo o que eu realmente faço é setxkbmap -option ctrl:swapcaps .

    
por qedi 14.11.2009 / 06:38

7 respostas

5

Eu encontrei o Bug 19365 que resolveu meu problema:

Iniciando o Xnest / Xephyr com -kb.

    
por 14.11.2009 / 23:26
2

A opção -kb não funciona no Ubuntu 10.04. Veja o que funcionou para mim:

Xephyr -keybd ephyr,,,xkbmodel=evdev -ac -screen 800x600 -br -reset -terminate :1

    
por 09.04.2010 / 18:26
1

Você também pode executar xkbcomp $DISPLAY :1 na sessão X na qual o Xephyr foi iniciado. Este comando irá copiar o mapa do teclado do servidor atual para o recém-criado. Eu uso assim:

Xephyr -screen 800x600 :1 > /dev/null &
sleep 2 && xkbcomp $DISPLAY :1
DISPLAY=":1" ./runcommand
    
por 29.06.2011 / 19:18
1
setxkbmap -model evdev -print | xkbcomp :100 :200    

Se você usar o Xephyr com xpra e tiver um mapa de teclado incorreto. Se você vir uma situação estranha: Tecla para baixo funcionou como enter (seta para baixo como linha de quebra), seta para cima não está funcionando - use esse comando para definir o verdadeiro mapa xkb.

: 100 - Número de exibição com controle de xpra

: 200 - Controle do número de exibição do Xephyr

Pode ser essa ajuda de comando, se você usar o x2go e acoplar o ambiente de área de trabalho (se o teclado de configurações do x2go no cliente estiver desativado)

    
por 02.02.2015 / 20:12
0

Parece que você não está usando o SSH para isso, certo? Ainda assim, o seguinte pode ajudá-lo a começar; é o que rabisquei para solucionar problemas de teclado ao usar ssh -Y :

Você pode salvar o mapeamento atual do teclado (quando não está executando o Xephyr) usando:

xmodmap -pke > ~/my_xmodmap

Em seguida, no Xephyr, você pode tentar explicitamente carregá-lo:

xmodmap ~/my_xmodmap

E usando xev você pode monitorar os eventos do teclado. Isso provavelmente não ajudará muito por si só, mas poderá ajudá-lo a pesquisar artigos mais úteis no Google, pois esse comando é mencionado algumas vezes nesses artigos.

    
por 14.11.2009 / 10:10
0

Para mim (usando o teclado alemão), só funciona a combinação da solução anterior apontada por Arjan juntamente com o solução apontada por panzi em Xephyr layout do teclado , ou seja:

Inicie o Xephyr:

Xephyr -keybd ephyr,,,xkbmodel=evdev,xkblayout=de -ac -reset -screen 800x600 -retro :1 &

Salvar o mapeamento de teclado atual e iniciar um xterm carregando o mapeamento:

xmodmap -pke > /tmp/my_modmap ; xterm -display :1 -ls -e "xmodmap /tmp/my_modmap; bash" &

Servidor Xephyr: xserver-xephyr 2:1.9.5-1

Graças aos pôsteres originais!

    
por 19.04.2011 / 11:37
0

Após mais googling sem sucesso, man setxkbmap finalmente me indicou uma solução mais fácil:

USING WITH xkbcomp

If you have an Xserver and a client shell running on different computers and XKB configuration files on those machines are different you can get problems specifying a keyboard map by model, layout, options names.[...] You can solve this problem by running the xkbcomp on the client side too.[..] For example, the command

setxkbmap us -print | xkbcomp - $DISPLAY

makes both steps run on the same (client) machine and loads a keyboard map into the server.

Isto é,

  • inicie o Xephyr:

    Xephyr -ac -reset -screen 800x600 -retro :50 &
    

    (não é necessário fornecer informações de teclado)

  • e configure o novo xsession:

    setxkbmap de -print | xkbcomp - :50
    

    (você precisa saber o layout do seu teclado)

Observação: setxkbmap é seu amigo e da versão 1.2.0 A útil opção -query está disponível para ajudá-lo a solucionar problemas do seu teclado (consulte o log de correção correspondente ).

    
por 21.04.2011 / 09:51