J'ai remarqué qu'il n'y avait pas beaucoup d'alternative à Problem Steps Recorder pour Linux, et je vais essayer d'en créer un dans un script Shell.
Vous pouvez utiliser la commande xinput --test-xi2 --root
( man xinput ) , où test-xi2
signifie l'enregistrement des périphériques d'entrée et --root
doit se connecter à partir de la soi-disant fenêtre racine (concept spécifique à x11) . Cela vous indiquerait quand et quelle touche enfoncée dans le système, les clics de souris et même les coordonnées de déplacement de la souris. Il résout vos points 1
et 3
, il vous suffit d’analyser ces événements.
Le point 2
est plus compliqué. Vous pouvez utiliser la commande xev -root
pour surveiller tous les événements X dans le système, y compris des éléments tels que (dis) apparaissant dans les fenêtres, entrée/sortie du focus. d'une fenêtre particulière, etc. Vous devez analyser sa sortie et afficher une description lisible par l'homme de ce qui se passe. Btw, la commande enregistre les touches pressées aussi.
Une mise en garde: il s'agit évidemment d'un grand trou de sécurité, qui remonte à l'époque de la création de Xorg, et personne ne devait s'en soucier. Pour cette raison, X11 est actuellement remplacé par le protocole Wayland (il s’agit essentiellement d’un X12, mais il n’est pas rétrocompatible, le protocole s’appelle autrement) , quels WM implémentent l'ATM. Ce n'est pas un processus rapide car le protocole exige beaucoup plus de WM, mais Fedora 25 semble enfin avoir la session Wayland activée par défaut. Kwin est également en train de rattraper son retard. Et votre script ne va pas fonctionner sur Wayland. Cela ne signifie pas que vous ne pouvez pas le faire - je pense que vous le pouvez. Mais vous devez travailler en étroite collaboration avec un WM particulier d'un DE particulier, et le script ne sera pas un script bash autonome, mais plutôt un complément à un WM.