Atalho do teclado para enviar seqüências de texto para o programa


14

Como posso configurar uma tecla de atalho para enviar uma sequência de texto para o programa atual?

O objetivo é digitar entradas comuns mais rapidamente (endereço de email, endereço, número de telefone, nome de usuário, cotação favorita, etc.).

Não preciso de mais automação do que apenas digitar o texto.

Gentoo Linux (3.2.12-gentoo) Ambiente de desktop Xfce (versão 4.8)

Respostas:


14

Uma abordagem simples é xdotool, como

xdotool type 'text'

Essa é a metade da solução ... como atribuir um atalho de teclado para executar isso? Fazendo um atalho nas Configurações do Xfce 4.8, o Teclado não funcionou.
21412 Steven

@Steven Funciona diretamente de um terminal?
jw013

3
Sim. Além disso, 'sleep 5 && xdotool type text' envia o texto para a janela "ativa".
Steven

2
@ Steven Eu não uso o Xfce há algum tempo, mas meu próximo palpite é que, quando o comando é executado, a janela ativa está errada de alguma forma. Eu tentaria executar xdotool getwindowfocustanto a partir de um terminal quanto como um atalho de teclado enquanto o mesmo terminal estiver aberto e comparar os resultados para igualdade. Você provavelmente precisará redirecionar a versão de atalho do teclado para um arquivo temporário para vê-la.
jw013

3
Eu uso xbindkeys.
22412 Mikel

6

O xdotool funciona. No entanto, se você o integrar com o atalho do teclado .. um simples texto xdotool 'text' falhará.

O script shell a seguir me ajudou nisso

windowid=$(xdotool getwindowfocus)
sleep 0.5 && xdotool windowactivate --sync $windowid type 'text'

2
Os manuais xdotoolmostram que ele tem um sono interno. xdotool sleep 0.3 type 'Emotional 2003'é suficiente. (O sono curto é necessário, por alguma razão, eu não sei Parece que há um curto interruptor da janela activada ou focada ao executar um comando.?)
k.stm

4

Você pode usar a AutoKey . Aqui está a descrição do site. “O AutoKey é um utilitário de automação de desktop para Linux e X11. Ele permite gerenciar a coleção de scripts e frases e atribuir abreviações e teclas de atalho a elas. Isso permite que você execute um script ou insira texto sob demanda em qualquer programa que esteja usando. ”

É empacotado, até onde eu sei, para o Gentoo (anunciado aqui ); para Ubuntu ( aqui ); Debian ( aqui ) ...


0

Uma linha que funcionou para mim (roubada do comentário por k.tsm)

xdotool sleep 0.3 type 'string that you want to type / paste'

Em seguida, atribua um atalho para este comando no KDE e depois de pressionar o atalho, o texto necessário será digitado magicamente para você.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.