画面キャプチャソフトGreenshotでファイルのパスをクリップボードにコピーする方法


Skitchが終了して早4年

2015年までのスクリーンショット撮影ソフトといえばEvernote社のSkitch でしたが、2015年に提供が終了しました。もうすっかり昔話ですね。

代替キャプチャソフトScreenpressoとその問題

さてSkitch無き後使っていたのが、某有名ブロガーが紹介していたscreenpressoでした。
指定領域のキャプチャや注釈の記入はもちろん、ソフトを問わないページの全体キャプチャなどさもすればSkitchよりも優秀なソフトでした。

気にする点としては

  • free版ではキリ番毎に購入のダイアログが出る
  • 時々動作が重くなりアプリの再起動が必要になる。

このあたりが気にはなりましたが、機能を考えれば些細な問題でした。
が、しかし。一点大きな問題が有りました。

  • ネットワーク接続が無い環境ではFree版はキャプチャができない。

503エラーが発生していたのでScreenpressoの問題である可能性もあるのですが、ScreenpressonのFree版ではどうやらキャプチャ毎にScreenpressoのサーバーと通信しているらしく、ネットワーク接続が無いと、一切のキャプチャができなくなってしまうのでした。

本命Greenshot

そこで再度のキャプチャソフト選定を行い、切り替えたのがGreenshotでした。
Greenshotはオープンソースで開発されており、指定領域のキャプチャ、注釈などの機能を持ち、指定フォルダへの自動保存などScreenpressoと同等の作業ができるソフトです。
一部矢印や短径などは、シャドウなどが無く、硬派な見た目ですが、そこが気にならなければ十分なソフトです。

保存したパスをクリップボードに保存したい

Screenpressoにあって、Greenshotに無い機能の中で、唯一ほしかったのが、この機能です。利用シーンとしては以下のような形です。

  1. キャプチャを取る
  2. キャプションをつける
  3. パスをコピーして
  4. Redmineなどにアップする

この流れを実現したい。そしてGreenshotならそれが簡単にできるのです。

External command Plugin を利用してバッチを実行する。

Greenshotのプラグインも開発して実現するには、ちゃんとした環境を整える必要がありそこから要件を実現するのは中々難しい。
しかし、標準のプラグインとして用意されているExternal command Plugin を使用すれば、適当なバッチファイルを呼び出して、現在開いているファイルのパスをコピーすることなんて造作もないのでした。

バッチファイルの中身

引数をクリップボードにわたすだけのシンプルな内容

argtoclip.bat
@echo off
echo %1 | clip

Greenshotの設定

  1. 設定を開く


2. プラグインでExternal command Plugin を選択

3. Newをクリックし、以下の様に設定を入れる

4. ファイルメニュー内にCopyPathが追加されるので、これをクリックしクリップボードにパスが入ることを確認する。

以上です。完璧

Greenshotもっと流行れ

Greenshotの情報はWindowsのみ対応のソフトということもあるためか、あまり日本語圏にありません。
ただ、日常的にスクリーンショットを撮る、特にマニュアルをバリバリ作る戦闘員社内SEなんかにはおすすめのソフトです。
paintへ貼付けで頑張っているあなたに、ぜひおすすめです。