Created GDScript Highlighter Tool
Created tool to take CodeSyntaxHighlighter, and updated it for Godot 4.x color scheme.
This commit is contained in:
parent
3f887a4e0e
commit
84fa083b76
2 changed files with 50 additions and 0 deletions
49
tools/update_gdscript_highlighter.gd
Normal file
49
tools/update_gdscript_highlighter.gd
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
@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")
|
||||
1
tools/update_gdscript_highlighter.gd.uid
Normal file
1
tools/update_gdscript_highlighter.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://b8mcg3kns0blx
|
||||
Loading…
Add table
Add a link
Reference in a new issue