@tool extends EditorScript const GDSCRIPT_HIGHLIGHTER = preload("uid://bfcfig5upwkjc") var current_keyword_color: Color = GDSCRIPT_HIGHLIGHTER.keyword_colors["func"] var current_engine_type: Color = GDSCRIPT_HIGHLIGHTER.keyword_colors["AESContext"] var current_base_type: Color = GDSCRIPT_HIGHLIGHTER.keyword_colors["AABB"] var current_flow_control: Color = GDSCRIPT_HIGHLIGHTER.keyword_colors["break"] # Called when the script is executed (using File -> Run in Script Editor). func _run() -> void: var plgn := EditorPlugin.new() var es := plgn.get_editor_interface().get_editor_settings() var gshl := GDSCRIPT_HIGHLIGHTER.duplicate(true) var comment_color :Color = es.get_setting("text_editor/theme/highlighting/comment_color") var keyword_color :Color = es.get_setting("text_editor/theme/highlighting/keyword_color") var flow_control_color :Color = es.get_setting("text_editor/theme/highlighting/control_flow_keyword_color") var engine_type :Color = es.get_setting("text_editor/theme/highlighting/engine_type_color") var base_type_color :Color = es.get_setting("text_editor/theme/highlighting/base_type_color") var string_color :Color = es.get_setting("text_editor/theme/highlighting/string_color") var string_placeholder :Color = es.get_setting("text_editor/theme/highlighting/string_placeholder_color") var number_color :Color = es.get_setting("text_editor/theme/highlighting/number_color") var function_color :Color = es.get_setting("text_editor/theme/highlighting/function_color") var member_color :Color = es.get_setting("text_editor/theme/highlighting/member_variable_color") var symbol_color :Color = es.get_setting("text_editor/theme/highlighting/symbol_color") plgn.free() gshl.symbol_color = symbol_color gshl.member_variable_color = member_color gshl.function_color = function_color gshl.number_color = number_color gshl.color_regions["#"] = comment_color gshl.color_regions["\" \""] = string_color gshl.color_regions["&\" \""] = string_placeholder gshl.color_regions["' '"] = string_color for keyword in gshl.keyword_colors: match gshl.keyword_colors[keyword]: current_keyword_color: gshl.keyword_colors[keyword] = keyword_color current_base_type: gshl.keyword_colors[keyword] = base_type_color current_flow_control: gshl.keyword_colors[keyword] = flow_control_color current_engine_type: gshl.keyword_colors[keyword] = engine_type ResourceSaver.save(gshl, "res://UI/assets/gdscript_highlighter4.tres")