Mercurial > yakumo_izuru > aya
comparison vendor/github.com/alecthomas/chroma/v2/lexers/embedded/gdscript.xml @ 66:787b5ee0289d draft
Use vendored modules
Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>
author | yakumo.izuru |
---|---|
date | Sun, 23 Jul 2023 13:18:53 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
65:6d985efa0f7a | 66:787b5ee0289d |
---|---|
1 <lexer> | |
2 <config> | |
3 <name>GDScript</name> | |
4 <alias>gdscript</alias> | |
5 <alias>gd</alias> | |
6 <filename>*.gd</filename> | |
7 <mime_type>text/x-gdscript</mime_type> | |
8 <mime_type>application/x-gdscript</mime_type> | |
9 </config> | |
10 <rules> | |
11 <state name="builtins"> | |
12 <rule pattern="(?<!\.)(instance_from_id|nearest_po2|print_stack|type_exist|rand_range|linear2db|var2bytes|dict2inst|randomize|bytes2var|rand_seed|db2linear|inst2dict|printerr|printraw|decimals|preload|deg2rad|str2var|stepify|var2str|convert|weakref|fposmod|funcref|rad2deg|dectime|printt|is_inf|is_nan|assert|Color8|typeof|ColorN|prints|floor|atan2|yield|randf|print|range|clamp|round|randi|sqrt|tanh|cosh|ceil|ease|acos|load|fmod|lerp|seed|sign|atan|sinh|hash|asin|sin|str|cos|tan|pow|exp|min|abs|log|max)\b"> | |
13 <token type="NameBuiltin"/> | |
14 </rule> | |
15 <rule pattern="(?<!\.)(self|false|true|PI|NAN|INF)\b"> | |
16 <token type="NameBuiltinPseudo"/> | |
17 </rule> | |
18 <rule pattern="(?<!\.)(Physics2DShapeQueryParameters|PhysicsShapeQueryParameters|Physics2DDirectBodyStateSW|NavigationPolygonInstance|ResourceInteractiveLoader|Physics2DDirectSpaceState|Physics2DShapeQueryResult|Physics2DTestMotionResult|InputEventJoystickButton|InputEventJoystickMotion|Physics2DDirectBodyState|PhysicsDirectBodyStateSW|PhysicsShapeQueryResult|PhysicsDirectSpaceState|SpatialSound2DServerSW|PackedDataContainerRef|NavigationMeshInstance|ResourceImportMetadata|PhysicsDirectBodyState|ConcavePolygonShape2D|CanvasItemShaderGraph|EditorScenePostImport|InputEventScreenTouch|InputEventMouseButton|InputEventMouseMotion|SpatialSound2DServer|AudioStreamOGGVorbis|VisibilityNotifier2D|InputEventScreenDrag|ConvexPolygonShape2D|SpatialSoundServerSW|ParticleAttractor2D|PackedDataContainer|SpatialStreamPlayer|RenderTargetTexture|AnimationTreePlayer|ConcavePolygonShape|InstancePlaceholder|MaterialShaderGraph|AudioStreamPlayback|VisibilityEnabler2D|SpatialSamplePlayer|DampedSpringJoint2D|InterpolatedCamera|ConvexPolygonShape|ConfirmationDialog|SpatialSoundServer|BakedLightInstance|ParallaxBackground|CollisionPolygon2D|CanvasItemMaterial|VisibilityNotifier|EditorImportPlugin|VideoStreamTheora|TouchScreenButton|ResourcePreloader|OccluderPolygon2D|BakedLightSampler|CollisionObject2D|RemoteTransform2D|PolygonPathFinder|StyleBoxImageMask|NavigationPolygon|TranslationServer|MultiMeshInstance|ImmediateGeometry|Physics2DServerSW|ColorPickerButton|VisibilityEnabler|PHashTranslation|RectangleShape2D|DirectionalLight|AnimatedSprite3D|WorldEnvironment|CollisionShape2D|EventStreamChibi|InputEventAction|CollisionPolygon|AudioStreamSpeex|EditorFileDialog|GeometryInstance|Generic6DOFJoint|PacketPeerStream|CanvasItemShader|KinematicBody2D|StyleBoxTexture|PhysicsServerSW|VSplitContainer|CenterContainer|GDFunctionState|AudioStreamOpus|TextureProgress|MarginContainer|CollisionObject|LightOccluder2D|AnimationPlayer|HSplitContainer|ScrollContainer|SoundRoomParams|Physics2DServer|MaterialShader|ShaderMaterial|ViewportSprite|SplitContainer|AudioStreamMPC|VisualInstance|PanelContainer|BackBufferCopy|SamplePlayer2D|CanvasModulate|ResourceLoader|CapsuleShape2D|ReferenceFrame|NavigationMesh|CollisionShape|ConeTwistJoint|ProximityGroup|AnimatedSprite|SegmentShape2D|BoneAttachment|RichTextLabel|CircleShape2D|VBoxContainer|PacketPeerUDP|SpatialPlayer|TextureButton|KinematicBody|SoundPlayer2D|PhysicsServer|ParallaxLayer|InputEventKey|GrooveJoint2D|PhysicsBody2D|FixedMaterial|GridContainer|HBoxContainer|StreamPeerSSL|StyleBoxEmpty|StreamPeerTCP|SampleLibrary|GDNativeClass|AudioServerSW|ResourceSaver|SpriteBase3D|StreamPlayer|AtlasTexture|VisualServer|SamplePlayer|StyleBoxFlat|StaticBody2D|SpriteFrames|MeshDataTool|MeshInstance|Vector3Array|BoxContainer|TabContainer|HButtonArray|LargeTexture|Navigation2D|WindowDialog|EditorScript|EditorPlugin|TextureFrame|AcceptDialog|ImageTexture|CapsuleShape|VehicleWheel|VButtonArray|Vector2Array|InputDefault|OptionButton|PathFollow2D|VehicleBody|ColorPicker|PopupDialog|ProgressBar|CanvasLayer|Translation|Environment|EventPlayer|VideoPlayer|EventStream|VideoStream|ButtonGroup|Particles2D|Patch9Frame|ButtonArray|SurfaceTool|MeshLibrary|PackedScene|PhysicsBody|AudioStream|Performance|StringArray|AudioServer|RigidBody2D|LineShape2D|SliderJoint|SphereShape|ShaderGraph|CheckButton|StreamPeer|FileDialog|PathFollow|SceneState|RoomBounds|Dictionary|VSeparator|PacketPeer|VScrollBar|MenuButton|HTTPClient|PinJoint2D|BakedLight|PlaneShape|InputEvent|BaseButton|HSeparator|HScrollBar|Navigation|PopupPanel|StaticBody|Position2D|Position3D|ToolButton|HingeJoint|CanvasItem|RayShape2D|ColorArray|ConfigFile|TCP_Server|RayCast2D|ColorRamp|SpotLight|RealArray|GraphNode|Container|Reference|PopupMenu|Separator|Polygon2D|MultiMesh|Semaphore|Transform|OmniLight|GraphEdit|Particles|Animation|Marshalls|SceneTree|RigidBody|XMLParser|PathRemap|ScrollBar|Directory|PCKPacker|RawArray|TextEdit|MainLoop|TreeItem|StyleBox|Material|Geometry|Matrix32|Resource|UndoRedo|RayShape|TestCube|ItemList|CheckBox|Camera2D|Skeleton|Sprite3D|Viewport|NodePath|IntArray|BoxShape|PinJoint|InputMap|LineEdit|GDScript|Vector3|TileMap|HSlider|Spatial|SpinBox|World2D|IP_Unix|Curve2D|Curve3D|WeakRef|GridMap|Matrix3|VSlider|CubeMap|Joint2D|Globals|Shape2D|Texture|Control|TileSet|Light2D|FuncRef|Vector2|RayCast|Script|Node2D|Button|BitMap|Sample|Object|String|Shader|Area2D|Slider|Sprite|Thread|Path2D|Camera|Portal|float|Theme|World|YSort|Shape|Joint|Mutex|Tween|RegEx|Label|Rect2|Array|Plane|Light|Range|Color|Input|Popup|Panel|Timer|Image|Area|Quad|bool|AABB|Quat|File|Tabs|Path|Font|Tree|Room|Mesh|Node|RID|int|Nil|IP|OS)\b"> | |
19 <token type="NameException"/> | |
20 </rule> | |
21 </state> | |
22 <state name="sqs"> | |
23 <rule pattern="'"> | |
24 <token type="LiteralStringSingle"/> | |
25 <pop depth="1"/> | |
26 </rule> | |
27 <rule pattern="\\\\|\\'|\\\n"> | |
28 <token type="LiteralStringEscape"/> | |
29 </rule> | |
30 <rule> | |
31 <include state="strings-single"/> | |
32 </rule> | |
33 </state> | |
34 <state name="stringescape"> | |
35 <rule pattern="\\([\\abfnrtv"\']|\n|N\{.*?\}|u[a-fA-F0-9]{4}|U[a-fA-F0-9]{8}|x[a-fA-F0-9]{2}|[0-7]{1,3})"> | |
36 <token type="LiteralStringEscape"/> | |
37 </rule> | |
38 </state> | |
39 <state name="classname"> | |
40 <rule pattern="[a-zA-Z_]\w*"> | |
41 <token type="NameClass"/> | |
42 <pop depth="1"/> | |
43 </rule> | |
44 </state> | |
45 <state name="strings-single"> | |
46 <rule pattern="%(\(\w+\))?[-#0 +]*([0-9]+|[*])?(\.([0-9]+|[*]))?[hlL]?[E-GXc-giorsux%]"> | |
47 <token type="LiteralStringInterpol"/> | |
48 </rule> | |
49 <rule pattern="[^\\\'"%\n]+"> | |
50 <token type="LiteralStringSingle"/> | |
51 </rule> | |
52 <rule pattern="[\'"\\]"> | |
53 <token type="LiteralStringSingle"/> | |
54 </rule> | |
55 <rule pattern="%"> | |
56 <token type="LiteralStringSingle"/> | |
57 </rule> | |
58 </state> | |
59 <state name="funcname"> | |
60 <rule pattern="[a-zA-Z_]\w*"> | |
61 <token type="NameFunction"/> | |
62 <pop depth="1"/> | |
63 </rule> | |
64 <rule> | |
65 <pop depth="1"/> | |
66 </rule> | |
67 </state> | |
68 <state name="numbers"> | |
69 <rule pattern="(\d+\.\d*|\d*\.\d+)([eE][+-]?[0-9]+)?j?"> | |
70 <token type="LiteralNumberFloat"/> | |
71 </rule> | |
72 <rule pattern="\d+[eE][+-]?[0-9]+j?"> | |
73 <token type="LiteralNumberFloat"/> | |
74 </rule> | |
75 <rule pattern="0[xX][a-fA-F0-9]+"> | |
76 <token type="LiteralNumberHex"/> | |
77 </rule> | |
78 <rule pattern="\d+j?"> | |
79 <token type="LiteralNumberInteger"/> | |
80 </rule> | |
81 </state> | |
82 <state name="tdqs"> | |
83 <rule pattern="""""> | |
84 <token type="LiteralStringDouble"/> | |
85 <pop depth="1"/> | |
86 </rule> | |
87 <rule> | |
88 <include state="strings-double"/> | |
89 </rule> | |
90 <rule pattern="\n"> | |
91 <token type="LiteralStringDouble"/> | |
92 </rule> | |
93 </state> | |
94 <state name="name"> | |
95 <rule pattern="[a-zA-Z_]\w*"> | |
96 <token type="Name"/> | |
97 </rule> | |
98 </state> | |
99 <state name="root"> | |
100 <rule pattern="\n"> | |
101 <token type="Text"/> | |
102 </rule> | |
103 <rule pattern="^(\s*)([rRuUbB]{,2})("""(?:.|\n)*?""")"> | |
104 <bygroups> | |
105 <token type="Text"/> | |
106 <token type="LiteralStringAffix"/> | |
107 <token type="LiteralStringDoc"/> | |
108 </bygroups> | |
109 </rule> | |
110 <rule pattern="^(\s*)([rRuUbB]{,2})('''(?:.|\n)*?''')"> | |
111 <bygroups> | |
112 <token type="Text"/> | |
113 <token type="LiteralStringAffix"/> | |
114 <token type="LiteralStringDoc"/> | |
115 </bygroups> | |
116 </rule> | |
117 <rule pattern="[^\S\n]+"> | |
118 <token type="Text"/> | |
119 </rule> | |
120 <rule pattern="#.*$"> | |
121 <token type="CommentSingle"/> | |
122 </rule> | |
123 <rule pattern="[]{}:(),;[]"> | |
124 <token type="Punctuation"/> | |
125 </rule> | |
126 <rule pattern="\\\n"> | |
127 <token type="Text"/> | |
128 </rule> | |
129 <rule pattern="\\"> | |
130 <token type="Text"/> | |
131 </rule> | |
132 <rule pattern="(in|and|or|not)\b"> | |
133 <token type="OperatorWord"/> | |
134 </rule> | |
135 <rule pattern="!=|==|<<|>>|&&|\+=|-=|\*=|/=|%=|&=|\|=|\|\||[-~+/*%=<>&^.!|$]"> | |
136 <token type="Operator"/> | |
137 </rule> | |
138 <rule> | |
139 <include state="keywords"/> | |
140 </rule> | |
141 <rule pattern="(def)((?:\s|\\\s)+)"> | |
142 <bygroups> | |
143 <token type="Keyword"/> | |
144 <token type="Text"/> | |
145 </bygroups> | |
146 <push state="funcname"/> | |
147 </rule> | |
148 <rule pattern="(class)((?:\s|\\\s)+)"> | |
149 <bygroups> | |
150 <token type="Keyword"/> | |
151 <token type="Text"/> | |
152 </bygroups> | |
153 <push state="classname"/> | |
154 </rule> | |
155 <rule> | |
156 <include state="builtins"/> | |
157 </rule> | |
158 <rule pattern="([rR]|[uUbB][rR]|[rR][uUbB])(""")"> | |
159 <bygroups> | |
160 <token type="LiteralStringAffix"/> | |
161 <token type="LiteralStringDouble"/> | |
162 </bygroups> | |
163 <push state="tdqs"/> | |
164 </rule> | |
165 <rule pattern="([rR]|[uUbB][rR]|[rR][uUbB])(''')"> | |
166 <bygroups> | |
167 <token type="LiteralStringAffix"/> | |
168 <token type="LiteralStringSingle"/> | |
169 </bygroups> | |
170 <push state="tsqs"/> | |
171 </rule> | |
172 <rule pattern="([rR]|[uUbB][rR]|[rR][uUbB])(")"> | |
173 <bygroups> | |
174 <token type="LiteralStringAffix"/> | |
175 <token type="LiteralStringDouble"/> | |
176 </bygroups> | |
177 <push state="dqs"/> | |
178 </rule> | |
179 <rule pattern="([rR]|[uUbB][rR]|[rR][uUbB])(')"> | |
180 <bygroups> | |
181 <token type="LiteralStringAffix"/> | |
182 <token type="LiteralStringSingle"/> | |
183 </bygroups> | |
184 <push state="sqs"/> | |
185 </rule> | |
186 <rule pattern="([uUbB]?)(""")"> | |
187 <bygroups> | |
188 <token type="LiteralStringAffix"/> | |
189 <token type="LiteralStringDouble"/> | |
190 </bygroups> | |
191 <combined state="stringescape" state="tdqs"/> | |
192 </rule> | |
193 <rule pattern="([uUbB]?)(''')"> | |
194 <bygroups> | |
195 <token type="LiteralStringAffix"/> | |
196 <token type="LiteralStringSingle"/> | |
197 </bygroups> | |
198 <combined state="stringescape" state="tsqs"/> | |
199 </rule> | |
200 <rule pattern="([uUbB]?)(")"> | |
201 <bygroups> | |
202 <token type="LiteralStringAffix"/> | |
203 <token type="LiteralStringDouble"/> | |
204 </bygroups> | |
205 <combined state="stringescape" state="dqs"/> | |
206 </rule> | |
207 <rule pattern="([uUbB]?)(')"> | |
208 <bygroups> | |
209 <token type="LiteralStringAffix"/> | |
210 <token type="LiteralStringSingle"/> | |
211 </bygroups> | |
212 <combined state="stringescape" state="sqs"/> | |
213 </rule> | |
214 <rule> | |
215 <include state="name"/> | |
216 </rule> | |
217 <rule> | |
218 <include state="numbers"/> | |
219 </rule> | |
220 </state> | |
221 <state name="keywords"> | |
222 <rule pattern="(breakpoint|continue|onready|extends|signal|return|export|static|setget|switch|break|const|while|class|tool|pass|func|case|enum|else|elif|var|for|do|if)\b"> | |
223 <token type="Keyword"/> | |
224 </rule> | |
225 </state> | |
226 <state name="dqs"> | |
227 <rule pattern="""> | |
228 <token type="LiteralStringDouble"/> | |
229 <pop depth="1"/> | |
230 </rule> | |
231 <rule pattern="\\\\|\\"|\\\n"> | |
232 <token type="LiteralStringEscape"/> | |
233 </rule> | |
234 <rule> | |
235 <include state="strings-double"/> | |
236 </rule> | |
237 </state> | |
238 <state name="tsqs"> | |
239 <rule pattern="'''"> | |
240 <token type="LiteralStringSingle"/> | |
241 <pop depth="1"/> | |
242 </rule> | |
243 <rule> | |
244 <include state="strings-single"/> | |
245 </rule> | |
246 <rule pattern="\n"> | |
247 <token type="LiteralStringSingle"/> | |
248 </rule> | |
249 </state> | |
250 <state name="strings-double"> | |
251 <rule pattern="%(\(\w+\))?[-#0 +]*([0-9]+|[*])?(\.([0-9]+|[*]))?[hlL]?[E-GXc-giorsux%]"> | |
252 <token type="LiteralStringInterpol"/> | |
253 </rule> | |
254 <rule pattern="[^\\\'"%\n]+"> | |
255 <token type="LiteralStringDouble"/> | |
256 </rule> | |
257 <rule pattern="[\'"\\]"> | |
258 <token type="LiteralStringDouble"/> | |
259 </rule> | |
260 <rule pattern="%"> | |
261 <token type="LiteralStringDouble"/> | |
262 </rule> | |
263 </state> | |
264 </rules> | |
265 </lexer> |