ソリューションのファイルを開く

リファクタリング機能がメインで語られそうなのだけれど,それと同じくらい Visual Assist X を使用している際に重要なのがナビゲーション機能.これ,あるのと無いのではソースコードを追っかける速さが倍ぐらい違う.いつの間にか C# にも対応しているので,他のリファクタリングプラグインと併用もお勧め.頻繁に使うので,ナビゲーション機能を使った際にちょことこと書いてみる.

Shift+Alt+O

Open File in Solution ダイアログがオープンし,インクリメンタルにソリューション中のファイルを絞り込みを行える.

Solution Explorer で,ファイル選択なんてかったるくてやってられない.Search Solution Explorer (Ctrl+;) なんてデータベース持ってないからプログレスバー出てるだけでもう待ってられないって感じ.UE4のエンジンソースは完全にクラスとファイルが対になってるわけではないけれど,クラスヘッダを探すときにもざっくり,まず Shift+Alt+O で.部分文字列で検索なので,うろ覚えのファイル名でも問題なし.機能としてわかっている場合は,先頭に「.」で.目的のファイルオープン.リストの時点で,お,こんな機能もあるのかなどの発見も.どんなコンポーネントあるのかな,とふと思ったときも「component.」で.だいたい Unreal Engine でどのモジュールのどの場所に目的のファイルがあって,それを Solution Explorer で検索するのなんて,探すだけで一苦労なんだよ.などの問題もさくっと解決してくれます.

詳しい使い方は Open File in Solution を見れば良いのだけれど,ダイアログをオープンした際に,検索文字列を入力する箇所に出ている説明を読めばだいたいのしたいことは出来る.でも,ファイル名を右クリックは知らなかったので,一度読んでおくのも良いかも.あとは,エディタでのショートカットになっているため,何かファイルをオープンしていないとショートカットが効かないので,グローバルに変更しておいても良いかも.

なぜUE4カテゴリがついているのか

アンリアルエディタでも同様のショートカットで,ほぼ同様の機能が使えたりします.リファレンスも見るところとか少し違うのですが.そら,毎日使ってたら押しちゃうよね.同じ機能実装したくなるよねって感じです.

ReSharper C++

ちょっと前に知った,ReSharper C++ : Visual Studio Extension for C++ development.機能比較などはReSharper C++ vs. Visual Assist X comparisonに書いてある.確かに VAX は多機能って訳ではなくて,リファクタリング関連については,他の言語用のツールに比べると物足りない点も多いけれど,必要な機能がコンパクトにまとまってる感じ.昔のIDEもサポートしているのも強みかな.あとは初回は確かにデータベースの構築に時間がかかるけれど,その後は速い.使用感についてちょっと Reddit に書かれていたのがこちらVisual Assists vs. ReSharper C++ for UE4 : unrealengineUE4だと毎回20分ソリューションオープンするのにかかるのは辛いなとか.乗り換えるのかー,俺も検討するかー,とか.ずっと昔にリファクタリングツールをまとめたのはVisual Assist X Build 1849 - 開発一課@はてなで.あれ?個人向けのライセンスだと年間の更新って必要無かった?昔からそうだっけ.$99で買い切りか.買い直ししようかな.

まとめ

C++erなら迷わずVAX使おうぜ.いやReSharper C++もかなり気になるのだけれど.