Deixe o xdotool digitar algum texto usando um layout de teclado diferente

5

Minha situação: Eu tenho um notebook com layout de teclado alemão rodando o Ubuntu 16.04. Ele hospeda uma VM Android por meio do QEmu / KVM, que também é configurado para o layout de teclado alemão.

Quando estou digitando algo na VM usando o teclado de hardware real, ele funciona perfeitamente bem. No entanto, como o sistema convidado não suporta uma área de transferência compartilhada (ou eu sou muito estúpido para configurá-lo), eu queria usar xclip e xdotool no host para simular a digitação do conteúdo da área de transferência do host na VM .

O comando que vinculei a um atalho de teclado é:

bash -c 'sleep 0.5 ; xdotool type --clearmodifiers "$(xsel -b)"'

Isso faz seu trabalho e digita tudo o que está no buffer da área de transferência do host. Infelizmente, parece haver alguma confusão no layout do teclado quando eu o uso para digitar algo na minha VM. Por exemplo, https://youtube.com se torna httpsÖ//zoutube.com na VM.

Para mim, parece que xdotool está usando o layout do teclado QWERTZ em inglês para digitar, em vez do layout alemão que eu configurei em todos os lugares, pois a chave alemã Ö é usada para ': no layout em inglês, e as chaves Y e Z também são trocadas (entre outras diferenças).

Como posso ensinar xdotool ou minha VM ou qualquer componente responsável pela confusão para digitar usando o layout de teclado correto?

    
por Byte Commander 13.05.2017 / 12:22

1 resposta

1

Pode não ser a solução mais limpa, mas isso funciona para mim.

Use setxkbmap antes do seu comando xdotool :

$ xdotool type azerty
qwerty

$ setxkbmap fr && xdotool type azerty
azerty

Acho que também deve funcionar se você colocar o layout no .xinitrc

setxkbmap fr
    
por hg8 18.09.2017 / 15:52