Des programmes d'enregistreurs de macros sont-ils disponibles?

12

Existe-t-il des enregistreurs de macros pour Ubuntu? Je veux un programme auquel je pourrais assigner une touche pour faire un mouvement de souris enregistré et taper un clavier. Merci

Tara Nickos
la source

Réponses:

10

Jetez un oeil à Gnu - Xnee

Lien: http://www.gnu.org/software/xnee/

Pour l'application de ligne de commande sur ubuntu:

sudo apt-get install cnee

NB: xneeest un méta paquet dans ubuntu et l'installation qui s'installera également cnee. gneeest le package que vous devez installer si vous voulez un GUI.

Exemple d'utilisation:

cnee --record -o events.xnr --mouse --events-to-record 100 --time 2

Cela enregistre 100 événements de souris après un délai de 2 secondes.

cnee --replay -f events.xnr --time 2

Cela lit les événements après un délai de 2 secondes.

Je consulterais la page de manuel de cnee pour plus de détails sur son utilisation.

Vous trouverez également plus de détails sur xnee ici https://xnee.wordpress.com/

Anurag Soni
la source
Après l'installation, l'ubuntu 15 me donne une erreur système.
Tara Nickos
@TaraNickos: J'ai mis à jour la réponse avec plus de détails qui pourraient aider
Anurag Soni
1
essayé tout ce que vous avez écrit. Ça ne marche pas. Merci beaucoup pour votre temps mais je ne comprends vraiment pas pourquoi il n'y a pas de programme alternatif. Il y en a tellement pour les fenêtres. Pourquoi seulement 1 pour Ubuntu?
Tara Nickos
Ironiquement, gneene semble pas installer un .desktopfichier lol.
wheeler
6

Actiona n'est pas un enregistreur, c'est un outil d'automatisation des tâches. Après avoir eu des erreurs avec gnee, je l'ai essayé et je pense que c'est un excellent outil et facile à utiliser.

sudo apt install actiona
Katu
la source
J'ai eu des problèmes pour que Actiona appuie sur les icônes du lanceur sur le dock latéral dans Ubuntu.
wheeler
5

Au lieu d'enregistrer une macro, il pourrait être plus utile de l'écrire à partir de zéro avec xdotool . Cela vous donne beaucoup plus de contrôle sur le processus.

D'après votre description, je suppose que vous avez besoin de quelque chose de plus permanent et non d'une macro qui n'est utilisée que quelques fois après son enregistrement. Je sais que ce n'est peut-être pas ce que vous souhaitez, mais c'est peut-être la meilleure solution.

Une macro enregistrée échouerait avec des fenêtres manquantes, différentes tailles de fenêtres, etc. car elle est aveugle à son environnement. Je doute que cela soit acceptable dans votre cas.

Avec xdotool pourrait identifier les fenêtres et les manipuler selon vos paramètres, puis programmer les clics relatifs à celles-ci, en ignorant leur position.

Vous pouvez même exécuter des commandes à partir d'un script xdotool pur et fermer leur fenêtre une fois le travail terminé.

sudo apt install xdotool

Pour obtenir la bonne position pour vos clics, vous pouvez déplacer votre fenêtre dans le coin supérieur gauche et utiliser:

ALT+F2
xterm -hold -e /usr/bin/xdotool getmouselocation

Gardez à l'esprit que sur Ubuntu, vous ne pouvez généralement pas déplacer votre fenêtre aux coordonnées 0,0. Vous devrez calculer le décalage.

Créez un fichier texte pour votre script xdotool. Appelons cela xdoscript .

Voici un exemple de script pour xdotool:

search --name xdowindow
windowfocus
windowsize 1000 800
mousemove --window %@ 200 100
click 3
sleep 2
mousemove --window %@ 400 200
click 1
sleep 1
click 3
mousemove_relative --polar 140 5
sleep 1
click 1
sleep 1
type "man xdotool"
sleep 2
key Return
sleep 2
key Next
sleep 1
key Next
sleep 1
key Next
sleep 1
key q

J'ai essayé de faire fonctionner cela avec gnome-terminal mais gnome-terminal a été un échec majeur depuis un certain temps et depuis lors, le titre de sa fenêtre ne peut pas être changé, j'ai donc utilisé Sakura pour les tests à la place. Les commandes de sommeil sont juste pour le ralentir à une vitesse observable.

sudo apt install sakura

Démarrez Sakura avec le nom personnalisé xdowindow et lancez le script xdotool dedans:

sakura -t xdowindow
xdotool xdoscript   

Pour votre propre script, vous auriez besoin des éléments suivants:

  • le titre de la fenêtre
  • l'identifiant de la fenêtre (uniquement si le titre de votre fenêtre n'est pas unique)
  • une taille de fenêtre définie (si les points de clic changent avec des tailles différentes)

Bien sûr, bien que ces scripts soient beaucoup plus robustes que les macros enregistrées, ils ne sont en aucun cas portables. Si vous modifiez les paramètres de votre bureau tels que la taille de la police ou réinstallez votre système, ils peuvent cesser de fonctionner et nécessiteront un ajustement.

PS: La commande windowfocus est requise pour que la plupart des autres commandes fonctionnent.

vie sur Mars
la source
ce sera parfait s'il existe un outil pour générer le xdotool_script à partir d'événements souris / clavier.
recolic
1

Vous pouvez utiliser X-Macro.

Pour installer x-Macro, utilisez cette commande:

sudo apt-get install xmacro

Pour l'enregistrement, utilisez la commande xmacrorec2:

xmacrorec2 > test.file

pour lire une macro enregistrée, utilisez xmacroplay

xmacroplay "$DISPLAY" < test.file
MmParvin
la source
0

Le meilleur là-bas est Sikuli

sudo apt-get install sikulix
Kokizzu
la source