2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[Eclipseプラグイン開発] 便利なショートカット

Posted at

はじめに

  • Eclipse プラグインを開発するときに便利なショートカットを2つ

Plug-in Selection Spy

Eclipse の画面上で何かを選択している状態で Alt+Shift+F1 を押すと、選択しているものの詳細(クラス名など)を表示してくれます。

例えば、パッケージエクスプローラーで適当な Java の Package を選択した状態で Alt+Shift+F1 を押すと、以下のような画面が表示されます。

plugin_selection_spy.png

これを見ると、WorkbenchWindow(ウィンドウ)はともかく、アクティブビューが PackageExplorerPart というクラスであり、そのプラグインが org.eclipse.jdt.ui のものであることが分かります。またプラグインIDなども分かります。

さらに、選択されたツリー構造が TreeSelection となっており、そのノードが PackageFragment になっていることも分かります。

もちろん、リンクになっているところをクリックすれば該当のクラスが開けます。

(ソースがあるか、逆コンパイラなどが入っていれば)ソースを見たり、関連する plugin.xml などを調べたりすることも可能です。

Plug-in Menu Spy

似た機能で、メニューの詳細を調べることができるショートカットがあります。

Alt+Shift+F2 を押すとマウスカーソルが変わると思います。
その状態で適当なメニュー項目を選択してください。
先ほどと似たような画面が開くと思います。

例えばメニューから "Help" - "Welcom" を選択すると、以下のような画面が開きます。

plugin_menu_spy.png

メニューの場所やID、クラスなどが表示されると思います。
(メニューによっては表示される情報の種類が異なる場合があります)

プラグインで拡張した機能を標準のメニューに追加する場合や、既にある機能の詳細を調べたい時に役に立ちます。

キーバインドの変更

上記のショートカットが、他のショートカット(OSやその他アプリ)と衝突してうまく動かない場合には、キーバインドの変更が可能です。

メニューから "Window" - "Preferences" を選択し、プリファレンス画面の "General" / "Keys" で、キーバインドの変更画面が開くと思います。

"type filter text" と薄い文字で表示されている入力エリアに、例えば "spy" と入力すれば、Plug-in Selection Spy と Plug-in Menu Spy が絞り込まれると思います。

下のほうの Binding の場所にフォーカスを当てて削除後に、割り当てたいショートカットを入力すれば変更することができます。

Show Key Assist

例えば何回か操作するだけなのでわざわざキーバインドを変更するほどでもない、あるいは他人の環境なので勝手にキーバインドを変更するのは気がひけるというような場合、Shift+Ctrl+L を押すとショートカットの一覧が表示されます。

そこから、カーソルキーなどで Plug-in Selection Spy や Plug-in Menu Spy を選択して、Enter すればとりあえず使えます(ちょっと使いにくいですが)。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?