Gyazo x Dropboxで簡単スクリーンショット共有
開発中にGyazoは多様するのですが、お金を払わないと投稿画像を消せなかったりするため、すぐに消したい画像はDropboxのPublicディレクトリに入れて共有するなど、まあ良いかと思いつつ多少不便な感じで使っていました。
今回、Dropbox にスクリーンショットを保存する Gyazo サーバにインスパイアされて、もう少し簡単な方法でDropboxを活用してみました。
- サーバーは立てない(Dropboxクライアントを使う)
Dropboxクライアントを利用すれば勝手にアップしてくれるので楽ちんです。
- 画像取得後にブラウザオープン
同期完了まで404が出ますが即座にブラウザオープンするように。
- URLをコピー
共有目的で使うためURLは毎回コピーしていました。
ということでこれを自動で。
修正内容ですが、Gyazo.app/Contents/Resources/script を下記のように書き換えるだけです。Serverディレクトリは不要なので削除します(というか削除しないとスクリプトが実行されるようで上手く行きませんでした)。
#!/usr/bin/env ruby # capture png file tmpfile = "/tmp/image_upload#{$$}.png" imagefile = ARGV[1] if imagefile && File.exist?(imagefile) then system "sips -s format png \"#{imagefile}\" --out \"#{tmpfile}\"" else system "screencapture -i \"#{tmpfile}\"" if File.exist?(tmpfile) then system "sips -d profile --deleteColorManagementProperties \"#{tmpfile}\"" end end if !File.exist?(tmpfile) then exit end # mv to dropbox dropbox_dir = "~/Dropbox/Public/image" dropbox_url = "http://dl.dropbox.com/u/339699/image" filename = "#{Time.now.strftime("%Y%m%d_%H%M%S")}.png" system "mv #{tmpfile} #{dropbox_dir}/#{filename}" system "open #{dropbox_url}/#{filename}" system "echo #{dropbox_url}/#{filename} | pbcopy" File.delete(tmpfile)