Questão macro para colar texto pré-configurado


Eu estou olhando para evitar sempre digitar meu endereço de e-mail novamente. Existe uma maneira de configurar uma chave para colar algum bit de texto pré-definido como o meu e-mail.

Eu gostaria que isso funcionasse em todos os aplicativos de maneira ideal.

obrigado


4
2017-08-13 08:32


origem




Respostas:


1) Instale xclip e xdotool

sudo apt-get install xclip xdotool

2) Faça um arquivo myscript.sh

mkdir ~/bin
gedit myscript.sh

3) Copie e cole este script nele

#!/bin/bash
TEXT="myname@address.com"
printf '%s' $TEXT | xclip -i -selection clipboard;
xdotool key --clearmodifiers "ctrl+v"; 

4) Torne o arquivo executável

chmod +x ~/bin/myscript.sh

5) Faça um atalho

Configurações -> Teclado -> Atalhos -> Atalhos personalizados -> clique em [+]

  • Nome: qualquer coisa, Comando: /home/USERNAME/bin/myscript.sh
    • Substitua o USERNAME pelo seu nome de usuário
  • Clique no Disabled texto e, em seguida, pressione a tecla mágica. Por exemplo Ctrl-Shift-S
  • Você pode ter que reiniciar a unidade com setsid unity ou entrando e saindo para fazer o atalho funcionar. (pelo menos eu tive esse bug no Ubuntu 13.10)

Editar: Se você tiver algum problema ao colar o texto. Tente mudar xdotool key para xdotool sleep 0.5 key. Isso lhe dá tempo para tirar as mãos do teclado antes que o xdotool tente pressionar "Ctrl-V"


4
2017-11-21 12:25



Para mim, minha variável TEXT tinha espaços. Para que isso funcione corretamente, eu tive que usar printf "$TEXT" ao invés de printf '%s' $TEXT. Qual é a vantagem de usar o %s? - Garrett
Se você não quiser que este script limpe sua prancheta atual, então, no começo, coloque OLD_TEXT=$(xclip -o -selection clipboard) e no final colocar sleep 1; printf "$OLD_TEXT" | xclip -i -selection clipboard. - Garrett
Não vou argumentar que isso funcionará, mas não existe algum tipo de ferramenta que torne isso um pouco menos manual? - Shadoninja
@Shadoninja Há o AutoKey, que tenta resolver isso, mas para mim, quando colado, ele soltou letras aleatoriamente do texto em pasta. - mlissner
Essa edição é definitivamente necessária para mim. Qualquer maneira de conseguir fazer novas linhas? Eu tentei adicionar \n à minha variável TEXT, mas parece que não funciona. No Firefox é tudo uma linha, mas no gedit, tudo bem. - mlissner