Inherits: Resource < RefCounted < Object
Inherited By: CodeHighlighter, EditorSyntaxHighlighter
Base class for syntax highlighters. Provides syntax highlighting data to a TextEdit.
Base class for syntax highlighters. Provides syntax highlighting data to a TextEdit. The associated TextEdit will call into the SyntaxHighlighter on an as-needed basis.
Note: A SyntaxHighlighter instance should not be used across multiple TextEdit nodes.
void | _clear_highlighting_cache ( ) virtual |
_get_line_syntax_highlighting ( int line ) virtual const | |
void | _update_cache ( ) virtual |
void | |
get_line_syntax_highlighting ( int line ) | |
get_text_edit ( ) const | |
void | update_cache ( ) |
Virtual method which can be overridden to clear any local caches.
Virtual method which can be overridden to return syntax highlighting data.
See get_line_syntax_highlighting for more details.
Virtual method which can be overridden to update any local caches.
Clears all cached syntax highlighting data.
Then calls overridable method _clear_highlighting_cache.
Returns syntax highlighting data for a single line. If the line is not cached, calls _get_line_syntax_highlighting to calculate the data.
The return Dictionary is column number to Dictionary. The column number notes the start of a region, the region will end if another region is found, or at the end of the line. The nested Dictionary contains the data for that region, currently only the key "color" is supported.
Example return:
var color_map = {
0: {
"color": Color(1, 0, 0)
},
5: {
"color": Color(0, 1, 0)
}
}
This will color columns 0-4 red, and columns 5-eol in green.
Returns the associated TextEdit node.
Clears then updates the SyntaxHighlighter caches. Override _update_cache for a callback.
Note: This is called automatically when the associated TextEdit node, updates its own cache.
© 2014–present Juan Linietsky, Ariel Manzur and the Godot community
Licensed under the Creative Commons Attribution Unported License v3.0.
https://docs.godotengine.org/en/4.2/classes/class_syntaxhighlighter.html