Avez-vous essayé ce qui est détaillé dans cette réponse à une question similaire? /unix//a/183941/141220
Vous avez Arch et un wm peu commun, donc vous saviez probablement que vous deviez faire du piratage par vous-même.
republier ici, cela vient du lien ci-dessus, si cela fonctionne, n'oubliez pas de remercier également l'utilisateur mikeserv , car je suis surtout un messager ici.
Les éléments suivants fonctionneront probablement pour vous:
#!/bin/sh
unset X Y; sleep 1
eval "$(xdotool getmouselocation -shell 2>/dev/null)"
for n in X Y; do : "$(($n-=$n>25?25:$n))"; done
xwd -root -silent |
xv - -crop "$X" "$Y" 50 50 \
-geometry "50x50+$X+$Y" \
-nodecor -viewonly -rv -quit
Cela dépend des trois services publics xv
, xwd
et xdotool
. Les deux premiers sont des utilitaires X très courants, et le troisième, je suis raisonnablement sûr que vous l'avez déjà.
Après avoir dormi une seconde, xdotool
écrit les coordonnées actuelles de la souris dans sa sortie standard dans un -shell
format adapté aux évaluations comme:
X=[num]
Y=[num]
windowID=[num]
eval
fixe les variables d'enveloppe en conséquence, et la soustrait de la boucle de la moitié de la taille de l'image dès-à-être-affichée à partir de chacun des $X
et $Y
les valeurs de » ou, si l' une des valeurs est inférieure 25
, ce qui les met à 0
.
xwd
vide la fenêtre racine sur un tuyau xv
, qui recadre l'emplacement de la souris à une taille d'image 50x50
et affiche un négatif de l'image sous le curseur de la souris dans une petite fenêtre sans aucune décoration de gestionnaire de fenêtres.
Le résultat final est quelque chose comme ceci:
... même si je suppose que le curseur de ma souris n'apparaît pas dans les captures d'écran. Rassurez-vous, cependant, c'était juste au-dessus de la boîte blanche lorsque j'ai pris la photo.
Vous pouvez voir dans l'image comment je l'ai également écrit en tant que fonction shell et mis en arrière-plan. C'est principalement pour cette raison qu'il y a un sleep
dedans du tout - appuyer sur la touche RETOUR fera défiler le terminal si vous êtes déjà en bas, et xwd
était assez rapide pour saisir sa photo de l'écran avant que le terminal ne défile - ce qui compenserait mon négatif dans l'image un peu et je n'ai pas aimé.
Quoi qu'il en soit, car il xv
est exécuté avec les commutateurs -viewonly
et -quit
, il disparaîtra dès qu'un clic de souris ou un appui sur une touche du clavier - mais restera jusqu'à ce que vous fassiez l'un ou l'autre.
Sans aucun doute, vous pourriez faire des choses beaucoup plus élaborées avec ImageMagick
ou même xv
seul - mais je viens de faire une petite case négative sous le curseur de la souris. Vous pouvez trouver les documents xv ici et les documents pour xwd
dans man xwd
.