2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Godot 用プラグイン「Script Explorer」を作った ─ 選択中スクリプトのクラス名・継承元・メソッド・プロパティを即表示するドック

Last updated at Posted at 2025-12-05

記事修正

  • 2025/12/5 Ver 1.1
    シグナル表示、メソッド・プロパティ・シグナルクリックでコードの該当行を表示へ対応
    GitHubのリンクを修正しました。

はじめに

Godot でスクリプトを触っていると、以下のことをもう少し手軽に確認したくなる場面があります。

  • 今選択しているスクリプトのクラス名は?
  • 継承している親クラスは?
  • メソッド一覧をざっと見たい
  • プロパティ一覧も確認したい
  • コードをスクロールしなくても概要を把握したい

そこで今回、Godot Editor の Dock として
スクリプトのメタ情報を自動表示するプラグイン「Script Explorer」
を作成しました。

SE(Script Explorer)の名称でエディタに表示されます。

Script Explorer とは?

選択しているスクリプトファイルを解析して、以下を Dock に表示します:

項目 内容
ファイル名 現在選択している .gd ファイル名
クラス名(class_name) スクリプト内で class_name が指定されていれば表示
継承元 extends の対象
メソッド一覧 func で宣言されているもの
プロパティ一覧 @export などの export 変数、var など

リアルタイムで選択が切り替わると、自動で表示内容が更新されます。

プラグインフォルダ構成

addons/
 └ script_explorer/
     ├ plugin.cfg
     ├ plugin.gd
     ├ dock.tscn
     └ dock.gd

エディタでは "SE" という名称で Dock が追加されます。

実装ポイント

1. スクリプト変更監視

GodotEditor の以下の signal を利用:

EditorInterface.get_resource_filesystem().connect("filesystem_changed", _on_change)

または

EditorInterface.get_selection().connect("selection_changed", _on_selection_changed)

この2つを組み合わせて「エディタでスクリプトを開いた瞬間」に変更をフックします。

GDScript の AST を軽量にパース

Godot 4 では GDScriptAnalyzer が使えないため、正規表現ベースで自作パーサを作成しました。

抽出例:

var class_name_regex = r"class_name\s+([A-Za-z0-9_]+)"
var extends_regex = r"extends\s+([A-Za-z0-9_\.]+)"
var func_regex = r"func\s+([A-Za-z0-9_]+)"
var export_regex = r"@export\s+var\s+([A-Za-z0-9_]+)"
var var_regex = r"var\s+([A-Za-z0-9_]+)"

表示UI

インスペクターやノードと同じ個所に SE というタブ名で表示されます。

image.png

まとめ

Script Explorer は以下の課題を解決します:

  • 大規模スクリプトで概要を把握しづらい
  • class_name / extends を見失いがち
  • 関数一覧を俯瞰したい
  • export 変数を一目で確認したい

Godot エディタの作業効率を上げたい方、ぜひ使ってみてください!

✔ GitHub リンク

ダウンロードしてすぐ使えるリリース版は↓↓こちら↓↓

2
1
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
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?