インターネットでスクリーンショットを共有する

インターネットで通信する場合、多くの場合、他の人にスクリーンショット(プログラムウィンドウ)をすばやく見せて、問題に対処したり、問題を解決したりする必要があります。

これを行うには、画像をファイルに保存し、適切なホスティングに移動し、そこに結果をアップロードし、結果のリンクを対話者に提供するという長い道のりが必要です。 しかし、すべての日常的な作業を行う簡単なスクリプトを一度書くことで、あなたの人生を可能な限り簡素化できます。







私はKDEを使用しているため、次のユーティリティを目的に使用します。

xsnap-実際にスクリーンショットを撮る(オプション-scrot);

uimge-ホスティングに画像をアップロードするため。

kdialog-ウィンドウと通知を表示します(標準KDEユーティリティ、オプション-xdialog、gtkdialog)。

klipper-クリップボードにリンクを配置します(標準KDEユーティリティ、オプション-glipper)。



最終的にすべてのアクションは、ホットキーでスクリプトを呼び出し(DEを使用して構成できます)、画面の一部を選択(または目的のウィンドウをクリック)し、リストから適切なホスティングを選択することになります。 その結果、完成したリンクがクリップボードに表示されます。



#!/bin/sh

rm -f /tmp/xsnap.png

xsnap -fn -misc-*-*-*-*-*-*-*-*-*-*-*-*-* -png -file /tmp/xsnap.png

hosting=$(kdialog --title Uimge --menu " :" \

savepic "savepic.ru" \

funkyimg "funkyimg.com" \

smages "smages.com" \

radikal "radikal.ru" \

opicture "opicture.ru" \

ipicture "ipicture.ru" \

upimg "upimg.ru" \

piccy "piccy.info" \

picamatic "picamatic.com" \

keep4u "keep4u.ru" \

4picture "4picture.ru" )

url=$(/usr/bin/uimge --${hosting} /tmp/xsnap.png 2> /dev/ null )

if [ "${url}" != "" ]

then qdbus org.kde.klipper /klipper org.kde.klipper.klipper.setClipboardContents "${url}"

kdialog --passivepopup " "

else kdialog --sorry " "

fi



* This source code was highlighted with Source Code Highlighter .






作業の大部分はuimgeユーティリティによって実行されます。このユーティリティについてはすでにPythonスクリプトであるハブに書き込んでいます。 (Windows用のバージョンを含む) ホームページからダウンロードできます。また、Gentoo Linux用のビルドファイル( ebuild )もあります。



他のすべては美しさと便利さのためです。











これがHabrに関する私の最初のトピックでした。



All Articles