Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

ScriptEditor

Наследует: PanelContainer < Container < Control < CanvasItem < Node < Object

Редактор скриптов редактора Godot.

Описание

Редактор скриптов редактора Godot.

Примечание: Этот класс не следует инстанцировать напрямую. Вместо этого получите доступ к синглтону с помощью EditorInterface.get_script_editor().

Методы

void

clear_docs_from_script(script: Script)

Error

close_file(path: String)

PackedStringArray

get_breakpoints()

ScriptEditorBase

get_current_editor() const

Script

get_current_script()

Array[ScriptEditorBase]

get_open_script_editors() const

Array[Script]

get_open_scripts() const

PackedStringArray

get_unsaved_files() const

void

goto_help(topic: String)

void

goto_line(line_number: int)

void

open_script_create_dialog(base_name: String, base_path: String)

void

register_syntax_highlighter(syntax_highlighter: EditorSyntaxHighlighter)

void

reload_open_files()

void

save_all_scripts()

void

unregister_syntax_highlighter(syntax_highlighter: EditorSyntaxHighlighter)

void

update_docs_from_script(script: Script)


Сигналы

editor_script_changed(script: Script) 🔗

Выдается, когда пользователь изменил активный скрипт. Аргумент — недавно активированный Script.


script_close(script: Script) 🔗

Выдается, когда редактор собирается закрыть активный скрипт. Аргумент — Script, который будет закрыт.


Описания метода

void clear_docs_from_script(script: Script) 🔗

Удаляет документацию для указанного script.

Примечание: Этот вызов следует выполнять при каждом изменении скрипта, чтобы поддерживать состояние открытой документации в актуальном состоянии.


Error close_file(path: String) 🔗

Closes the file at the given path, discarding any unsaved changes.

Returns @GlobalScope.OK on success or @GlobalScope.ERR_FILE_NOT_FOUND if the file is not found.


PackedStringArray get_breakpoints() 🔗

Возвращает массив точек останова.


ScriptEditorBase get_current_editor() const 🔗

Возвращает объект ScriptEditorBase, который пользователь в данный момент редактирует.


Script get_current_script() 🔗

Возвращает Script, который в данный момент активен в редакторе.


Array[ScriptEditorBase] get_open_script_editors() const 🔗

Возвращает массив со всеми объектами ScriptEditorBase, которые в данный момент открыты в редакторе.


Array[Script] get_open_scripts() const 🔗

Возвращает массив со всеми объектами Script, которые в данный момент открыты в редакторе.


PackedStringArray get_unsaved_files() const 🔗

Returns an array of file paths of scripts with unsaved changes open in the editor.


void goto_help(topic: String) 🔗

Открывает справку по заданной теме. topic — это закодированная строка, которая управляет тем, какой класс, метод, константа, сигнал, аннотация, свойство или элемент темы должны быть в фокусе.

Поддерживаемые форматы topic включают class_name:class, class_method:class:method, class_constant:class:constant, class_signal:class:signal, class_annotation:class:@annotation, class_property:class:property и class_theme_item:class:item, где class — имя класса, method — имя метода, constant — имя константы, signal — имя сигнала, annotation — имя аннотации, property — имя свойства, а item — элемент темы.

# Показывает справку по классу Node.
class_name:Node
# Показывает справку по глобальной функции min.
# Глобальные объекты доступны в пространстве имен `@GlobalScope`, показанном здесь.
class_method:@GlobalScope:min
# Показывает справку по get_viewport в классе Node.
class_method:Node:get_viewport
# Показывает справку по константе ввода MOUSE_BUTTON_MIDDLE.
class_constant:Input:MOUSE_BUTTON_MIDDLE
# Показывает справку по нажатому сигналу BaseButton.
class_signal:BaseButton:pressed
# Показывает справку по свойству CanvasItem visible.
class_property:CanvasItem:visible
# Показывает справку по экспорту аннотаций GDScript.
# Аннотации должны начинаться с символа `@` в дескрипторе, как показано здесь.
class_annotation:@GDScript:@export
# Показывает справку по элементу темы GraphNode с именем panel_selected.
class_theme_item:GraphNode:panel_selected

void goto_line(line_number: int) 🔗

Переход к указанной строке текущего скрипта.


void open_script_create_dialog(base_name: String, base_path: String) 🔗

Открывает диалог создания скрипта. Скрипт будет расширять base_name. Расширение файла может быть опущено в base_path. Оно будет добавлено на основе выбранного языка скрипта.


void register_syntax_highlighter(syntax_highlighter: EditorSyntaxHighlighter) 🔗

Регистрирует EditorSyntaxHighlighter в редакторе, EditorSyntaxHighlighter будет доступен во всех открытых скриптах.

Примечание: Не применяется к уже открытым скриптам.


void reload_open_files() 🔗

Reloads all currently opened files. This should be used when opened files are changed outside of the script editor. The user may be prompted to resolve file conflicts, see EditorSettings.text_editor/behavior/files/auto_reload_scripts_on_external_change.


void save_all_scripts() 🔗

Saves all open scripts.


void unregister_syntax_highlighter(syntax_highlighter: EditorSyntaxHighlighter) 🔗

Отменяет регистрацию EditorSyntaxHighlighter в редакторе.

Примечание: EditorSyntaxHighlighter по-прежнему будет применяться к скриптам, которые уже открыты.


void update_docs_from_script(script: Script) 🔗

Обновляет документацию для указанного script.

Примечание: Этот вызов следует выполнять при каждом изменении скрипта, чтобы поддерживать открытую документацию в актуальном состоянии.