同様の質問に対するこの回答の詳細を試してみましたか?/unix//a/183941/141220
あなたはArchと珍しいwmを持っているので、おそらく自分でいくつかのハッキングをしなければならないと知っていたでしょう。
ここに再投稿しますが、これは上記のリンクから来ていますが、それが機能する場合は、ユーザーmikeservにも感謝することを忘れないでください、私はここではほとんどメッセンジャーです。
以下はおそらくあなたのために働くでしょう:
#!/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
これは3つのユーティリティに依存しxv
、xwd
とxdotool
。最初の2つは非常に一般的なXユーティリティであり、3つ目はすでに持っていると合理的に確信しています。
1秒間スリープした後xdotool
、マウスの現在の座標を次の-shell
ような評価に適した形式で標準出力に書き込みます。
X=[num]
Y=[num]
windowID=[num]
eval
設定に応じてシェル変数とのそれぞれからすぐツー・表示する画像の大きさのループ減算するハーフ$X
と$Y
の値または、いずれかの値未満である場合に25
、それらの設定0
。
xwd
ルートウィンドウをにパイプ経由でダンプします。これは、ウィンドウマネージャーの装飾xv
を除いて、マウス位置の周りを画像サイズに50x50
切り取り、現在のマウスカーソルの下にある画像のネガを小さなウィンドウに表示します。
最終結果は次のようになります。
...マウスカーソルがスクリーンショットに表示されないと思いますが。しかし、写真を撮ったとき、それはそこの白い箱のすぐ上にあったので安心してください。
画像で、シェル関数としてどのように作成し、バックグラウンドにしたかを見ることができます。それは主にそのためですsleep
-すでに下にいる場合はRETURNキーを押すと端末がスクロールし、端末がスクロールするxwd
前に画面の画像を取得するのに十分な速さでした-これは相殺されます画像のネガが少しで、私はそれが好きではありませんでした。
とにかく、とスイッチのxv
両方で実行されるため、マウスボタンがクリックされるか、キーボードキーが押されるとすぐに消えますが、どちらかを行うまで残ります。-viewonly
-quit
間違いなく、あなたはもっと複雑なことを単独で、ImageMagick
あるいはxv
単独で行うこともできますが、私はマウスカーソルの下に小さなネガティブボックスを作成しました。xvのドキュメントはこちら で、のドキュメントはxwd
で見つけることができますman xwd
。