OK, a resposta que tenho e que funciona quase exatamente como solicitado é, na verdade, surpreendentemente complexa. Você usará xmacro
para gravar e reproduzir os principais toques.
-
Instale o xmacro
sudo apt-get install xmacro
-
Gravar uma macro
xmacrorec2 > test.macro
Agora pressione ESC (para gravar a tecla "abort" para gravação), digite qualquer texto que você queira atribuir e pressione ESC novamente para parar a gravação. A macro gravada está agora no arquivo
test.macro
; você pode editá-lo com um editor de texto. -
Teste que a macro funciona
cat test.macro | xmacroplay -d 0 $DISPLAY
-
(opcional, recomendado) Crie um script com os comandos acima. Salve como macro.sh:
#!/bin/bash cat test.macro | xmacroplay -d 0 $DISPLAY > /dev/null 2>/dev/null
Torne-o executável:
chmod a+x macro.sh
-
Um pequeno problema permanece. O xmacro reproduz as teclas exatas, mas se você definir um atalho e executar o script pelo atalho, as teclas serão tocadas antes você liberar a tecla de atalho, como se você tivesse começado a digitar sem soltar a tecla . Você precisa prefixar a seguinte linha no arquivo test.macro:
KeyStrRelease F1
que simulará o lançamento da tecla F1.
-
Usando as preferências do teclado (você pode acessá-las através de configurações ou digitando 'gnome-control-center keyboard), crie um novo atalho em "Atalhos personalizados" e atribua a ele F1.
OK, mas há mais uma ressalva: o atalho F1 agora funciona em todos os aplicativos , não apenas no terminal. Eu não sei como resolver isso; Possivelmente, no macro.sh
, seria necessário testar qual janela tem o foco primeiro e verificar se o identificador dessa janela é terminal.