Plugin SDKにソースコードをアタッチする
プラグインを作るための環境構築を紹介したページにはIntelliJのソースコードをSDKにアタッチするという項目があります。
Check out the sources of IntelliJ IDEA Community Edition as described in Check Out & Build Community Edition
In the Sourcepath tab of the SDK settings, press the "Add..." button and specify the directory > into which you have checked out the sources of the Community Edition
Android StudioをSDKに設定した場合は、Android Studioのソースコードを参照したいので、その方法を調べました。
ソースコードを参照してみる
ソースコードをアタッチしていない状態でソースコードを参照してみます。
このプロジェクトは前回作ったサンプルコードです。
Notifications.Bus.notify()の実装がどうなっているのか参照してみましょう。
notify()と書かれたところにキャレットを合わせた状態で、
[右クリック] > [Go to] > [Declaration (Command+B)]
を選択します。
Notificationsクラスが表示されましたが、インターフェイスのみで実装は見ることはできません。(デコンパイラをインストールしていたら見れるかもしれません)
今回のゴールは、この実装が見れるようになることです。
Android Studioのソースコードのダウンロード
SDKにアタッチするためのソースコードをダウンロードします。
Android Studioのソースコードはここで見ることができます。
platform/tools/idea - Git at Google
https://android.googlesource.com/platform/tools/idea/
以下のコマンドを実行することによりソースコードをダウンロードできます。
git clone https://android.googlesource.com/platform/tools/idea
そんなに大きくないので5分ほどあればダウンロード完了します。
ソースコードをアタッチする
このような画面になっていると思います。
プロジェクトが開かれている場合は[File] > [Close Project]をしてこの画面を表示してください。
Project Structureを開きます。
[Configure] > [Project Defaults] > [Project Structure]
IDEA AI-133.988757 を選択している状態で、[Edit...]ボタンを押します。
[Sourcepath]を選択すると以下のような画面になります。
[+]ボタンを押した後に、先程ダウンロードしたAndroid Studioのソースコードの場所を指定します。
これで設定完了です。
ソースコードを参照する
最初と同じようにNotifications.Bus.notify() の実装を見てみましょう。
無事実装を見ることができました。