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