PhpStormには大きく分けて3種類のGoto Fileのアクションがあります。
それぞれ微妙に役割が異なるので、それぞれの違いを把握しておき、細かく使い分けてやることで目的のファイルへの到達がスムーズになります。
種類は以下の通りです。
- File(Cmd+Ctrl+N)
- Class(Cmd+N)
- Symbol(Cmd+Ctrl+Shift+N)
File
ファイル名を指定してジャンプ出来る機能です。
上段に完全一致 -> 前方一致のファイルが表示され、
後段で後方一致や部分一致のファイルが表示されます。
また、最後に[/]を付けることでディレクトリ名での検索や、
[hoge/fuga/hoge.php]ようにディレクトリ込での検索も出来ます。
ジャンプする先が以下のような場合にはGoto Fileを使ってやるとスムーズに飛べます。
- 開きたいファイルのファイル名がピンポイントで分かる or 部分的に分かる
- どのディレクトリにそのファイルがいるか分からないが、ディレクトリ名は分かる
- そのファイル内にクラスが存在しない(Viewファイルなど)
- 同一ファイル名のファイルが複数ある(ディレクトリ名込で絞り込み出来る状態)
Class
上述のFileと似ていますが、こちらはクラス名を指定してジャンプする機能です。
上段に完全一致 -> 前方一致のファイルが表示され、
後段で後方一致や部分一致のファイルが表示されます。
クラスが定義されていないファイルには飛べません。
以下のような場合にはこのGoto Classを使ってやるとスムーズに飛べます。
- ピンポイントで飛びたいクラス名が分かる
- 飛びたいクラス名の文字列がカーソル下にある
- ファイル名とクラス名が異なっていて、クラス名が分かる場合(inner classなど)
Symbol
こちらは若干毛色が違い、クラス名やメソッド名、定数やインスタンス変数、cssのclassやIDの定義先に飛びます。
使いどころがかなり難しいコマンドですが、以下の様な時に役に立ちます。
- 飛び先のファイル名やクラスは分からないが、なんとなく使っている定義している変数が分かる
- CSSクラス/ID指定での定義元一覧をサッと見たい
などなど…。正直言って僕自身も使いこなせていません\(^o^)/
おまけ
PhpStorm7.1からは上記に加えて[Search Everywhere]というジャンプコマンドが追加になります。
これは上記3種類のJumpに加えてFind Action(Cmd+Shift+A)、Recent Files(Cmd+E)も加えたパワフルな機能です。
Find Actionを超える「とりあえずこれさえ覚えておけば大丈夫」というコマンドです。心強い限りです。