Eclipseプラグインの作り方について質問です。


Eclipseのコンソールウィンドウに出力されているログを解析し、特定の行のみを抽出するプラグインを作りたいと思っています。
どの拡張ポイントを使用することで、コンソールウィンドウの出力ログにアクセスすることができますか?
可能であれば簡単なサンプルコードもお願い致します。
(有用なサンプルコードを書いてくださった方には1500ポイントお支払い致します)

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2013/07/04 20:37:28
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:a-kuma3 No.1

回答回数4974ベストアンサー獲得回数2154

ポイント1500pt

参考になりそうな、小さめのプラグインがありました。

console-grep

http://code.google.com/a/eclipselabs.org/p/console-grep/wiki/Main

特定のコンソールを監視して、指定した正規表現にマッチした行だけを、別のコンソールに出力する、という感じ(grep というよりは、filter か)。

ソースは、svn で取ってこれます(Webブラウザでも見られる)。
http://svn.codespot.com/a/eclipselabs.org/console-grep/trunk/


コンソールの内容を取ってくるあたりは、以下の三つを見ておけば大丈夫か、と。

ざっくりと書くと、以下のような感じです。

  1. ConsoleManager から TextConsole を取り出し
  2. TextConsole に IDocumentListener の実装をぶら下げて
  3. documentChanged のイベントで拾う

監視の必要が無く、あるタイミングでのコンソールの中身をドバっと取りたいということであれば、
IDocument#get() を使うことになると思います。
IDocument インターフェースについては、以下の javadoc を参考にしてください。
  Interface org.eclipse.jface.text.IDocument

id:hogesuke_1

これを参考に作成できそうです。
親切な解説ありがとうございました。

2013/07/04 20:37:01

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません