add clauses to support autocomplete better

This commit is contained in:
danhanson committed 2026-09-08 14:27:57 -05:00
1 parent 06aa8706c8
commit ca01dd5f95
23 files changed
+47978 -98070

No files matched your search

+390 -271
View File
@@ -1097,7 +1097,7 @@
}
]
},
"autoescape_group": {
"autoescape_clause": {
"type": "SEQ",
"members": [
{
@@ -1178,6 +1178,15 @@
"type": "BLANK"
}
]
}
]
},
"autoescape_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "autoescape_clause"
},
{
"type": "SEQ",
@@ -1226,7 +1235,7 @@
}
]
},
"block_group": {
"block_clause": {
"type": "SEQ",
"members": [
{
@@ -1293,6 +1302,15 @@
"type": "BLANK"
}
]
}
]
},
"block_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "block_clause"
},
{
"type": "SEQ",
@@ -2162,7 +2180,7 @@
]
}
},
"cache_group": {
"cache_clause": {
"type": "SEQ",
"members": [
{
@@ -2302,6 +2320,15 @@
"type": "BLANK"
}
]
}
]
},
"cache_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "cache_clause"
},
{
"type": "SEQ",
@@ -3037,7 +3064,7 @@
}
]
},
"filter_group": {
"filter_clause": {
"type": "SEQ",
"members": [
{
@@ -3114,6 +3141,15 @@
"type": "BLANK"
}
]
}
]
},
"filter_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "filter_clause"
},
{
"type": "SEQ",
@@ -3261,7 +3297,7 @@
}
]
},
"for_scope": {
"for_clause": {
"type": "SEQ",
"members": [
{
@@ -3431,77 +3467,81 @@
}
]
},
"for_group": {
"empty_clause": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "for_scope"
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{%"
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "tag",
"content": {
"type": "STRING",
"value": "empty"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "%}"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{%"
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "tag",
"content": {
"type": "STRING",
"value": "empty"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "%}"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "template"
},
{
"type": "BLANK"
}
]
}
]
"type": "SYMBOL",
"name": "template"
},
{
"type": "BLANK"
}
]
}
]
},
"for_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "for_clause"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "empty_clause"
},
{
"type": "BLANK"
@@ -4223,7 +4263,7 @@
}
]
},
"if_group": {
"if_clause": {
"type": "SEQ",
"members": [
{
@@ -4295,149 +4335,166 @@
"type": "BLANK"
}
]
}
]
},
"elif_clause": {
"type": "SEQ",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{%"
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "tag",
"content": {
"type": "STRING",
"value": "elif"
}
},
{
"type": "SEQ",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "SYMBOL",
"name": "predicate"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "%}"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "template"
},
{
"type": "BLANK"
}
]
}
]
},
"else_clause": {
"type": "SEQ",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{%"
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "tag",
"content": {
"type": "STRING",
"value": "else"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "%}"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "template"
},
{
"type": "BLANK"
}
]
}
]
},
"if_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "if_clause"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{%"
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "tag",
"content": {
"type": "STRING",
"value": "elif"
}
},
{
"type": "SEQ",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "SYMBOL",
"name": "predicate"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "%}"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "template"
},
{
"type": "BLANK"
}
]
}
]
"type": "SYMBOL",
"name": "elif_clause"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{%"
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "tag",
"content": {
"type": "STRING",
"value": "else"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "%}"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "template"
},
{
"type": "BLANK"
}
]
}
]
"type": "SYMBOL",
"name": "else_clause"
},
{
"type": "BLANK"
@@ -4491,7 +4548,7 @@
}
]
},
"ifchanged_group": {
"ifchanged_clause": {
"type": "SEQ",
"members": [
{
@@ -4566,71 +4623,22 @@
"type": "BLANK"
}
]
}
]
},
"ifchanged_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "ifchanged_clause"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{%"
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "tag",
"content": {
"type": "STRING",
"value": "else"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[ \\t\\r\\n]+"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "%}"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "template"
},
{
"type": "BLANK"
}
]
}
]
"type": "SYMBOL",
"name": "else_clause"
},
{
"type": "BLANK"
@@ -4874,7 +4882,7 @@
}
]
},
"language_group": {
"language_clause": {
"type": "SEQ",
"members": [
{
@@ -4946,6 +4954,15 @@
"type": "BLANK"
}
]
}
]
},
"language_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "language_clause"
},
{
"type": "SEQ",
@@ -5137,7 +5154,7 @@
}
]
},
"localize_group": {
"localize_clause": {
"type": "SEQ",
"members": [
{
@@ -5226,6 +5243,15 @@
"type": "BLANK"
}
]
}
]
},
"localize_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "localize_clause"
},
{
"type": "SEQ",
@@ -5274,7 +5300,7 @@
}
]
},
"localtime_group": {
"localtime_clause": {
"type": "SEQ",
"members": [
{
@@ -5363,6 +5389,15 @@
"type": "BLANK"
}
]
}
]
},
"localtime_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "localtime_clause"
},
{
"type": "SEQ",
@@ -5670,7 +5705,7 @@
}
]
},
"partialdef_group": {
"partialdef_clause": {
"type": "SEQ",
"members": [
{
@@ -5754,6 +5789,15 @@
"type": "BLANK"
}
]
}
]
},
"partialdef_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "partialdef_clause"
},
{
"type": "SEQ",
@@ -6130,7 +6174,7 @@
}
]
},
"spaceless_group": {
"spaceless_clause": {
"type": "SEQ",
"members": [
{
@@ -6189,6 +6233,15 @@
"type": "BLANK"
}
]
}
]
},
"spaceless_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "spaceless_clause"
},
{
"type": "SEQ",
@@ -6424,7 +6477,7 @@
}
]
},
"timezone_group": {
"timezone_clause": {
"type": "SEQ",
"members": [
{
@@ -6496,6 +6549,15 @@
"type": "BLANK"
}
]
}
]
},
"timezone_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "timezone_clause"
},
{
"type": "SEQ",
@@ -7843,7 +7905,7 @@
}
]
},
"with_group": {
"with_clause": {
"type": "SEQ",
"members": [
{
@@ -7910,6 +7972,15 @@
"type": "BLANK"
}
]
}
]
},
"with_group": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "with_clause"
},
{
"type": "SEQ",
@@ -7965,7 +8036,55 @@
"template"
],
[
"for_scope"
"autoescape_clause"
],
[
"block_clause"
],
[
"cache_clause"
],
[
"elif_clause"
],
[
"else_clause"
],
[
"empty_clause"
],
[
"filter_clause"
],
[
"for_clause"
],
[
"if_clause"
],
[
"ifchanged_clause"
],
[
"language_clause"
],
[
"localize_clause"
],
[
"localtime_clause"
],
[
"partialdef_clause"
],
[
"spaceless_clause"
],
[
"timezone_clause"
],
[
"with_clause"
],
[
"predicate"
+493 -129
View File
@@ -204,20 +204,16 @@
]
},
{
"type": "autoescape_group",
"type": "autoescape_clause",
"named": true,
"fields": {
"tag": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "autoescape",
"named": false
},
{
"type": "endautoescape",
"named": false
}
]
}
@@ -233,13 +229,39 @@
]
}
},
{
"type": "autoescape_group",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "endautoescape",
"named": false
}
]
}
},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "autoescape_clause",
"named": true
}
]
}
},
{
"type": "binaryOperator",
"named": true,
"fields": {}
},
{
"type": "block_group",
"type": "block_clause",
"named": true,
"fields": {
"name": {
@@ -253,13 +275,35 @@
]
},
"tag": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "block",
"named": false
},
}
]
}
},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "template",
"named": true
}
]
}
},
{
"type": "block_group",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "endblock",
"named": false
@@ -272,11 +316,11 @@
"required": true,
"types": [
{
"type": "pop_block",
"type": "block_clause",
"named": true
},
{
"type": "template",
"type": "pop_block",
"named": true
}
]
@@ -343,20 +387,16 @@
}
},
{
"type": "cache_group",
"type": "cache_clause",
"named": true,
"fields": {
"tag": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "cache",
"named": false
},
{
"type": "endcache",
"named": false
}
]
}
@@ -384,6 +424,32 @@
]
}
},
{
"type": "cache_group",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "endcache",
"named": false
}
]
}
},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "cache_clause",
"named": true
}
]
}
},
{
"type": "comment_group",
"named": true,
@@ -562,6 +628,88 @@
}
}
},
{
"type": "elif_clause",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "elif",
"named": false
}
]
}
},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "predicate",
"named": true
},
{
"type": "template",
"named": true
}
]
}
},
{
"type": "else_clause",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "else",
"named": false
}
]
}
},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "template",
"named": true
}
]
}
},
{
"type": "empty_clause",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "empty",
"named": false
}
]
}
},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "template",
"named": true
}
]
}
},
{
"type": "extends",
"named": true,
@@ -878,6 +1026,36 @@
}
}
},
{
"type": "filter_clause",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "filter",
"named": false
}
]
}
},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "filter_expression",
"named": true
},
{
"type": "template",
"named": true
}
]
}
},
{
"type": "filter_expression",
"named": true,
@@ -898,30 +1076,22 @@
"named": true,
"fields": {
"tag": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "endfilter",
"named": false
},
{
"type": "filter",
"named": false
}
]
}
},
"children": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "filter_expression",
"named": true
},
{
"type": "template",
"type": "filter_clause",
"named": true
}
]
@@ -983,41 +1153,7 @@
}
},
{
"type": "for_group",
"named": true,
"fields": {
"tag": {
"multiple": true,
"required": true,
"types": [
{
"type": "empty",
"named": false
},
{
"type": "endfor",
"named": false
}
]
}
},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "for_scope",
"named": true
},
{
"type": "template",
"named": true
}
]
}
},
{
"type": "for_scope",
"type": "for_clause",
"named": true,
"fields": {
"tag": {
@@ -1056,6 +1192,36 @@
]
}
},
{
"type": "for_group",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "endfor",
"named": false
}
]
}
},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "empty_clause",
"named": true
},
{
"type": "for_clause",
"named": true
}
]
}
},
{
"type": "get_available_languages",
"named": true,
@@ -1285,25 +1451,13 @@
}
},
{
"type": "if_group",
"type": "if_clause",
"named": true,
"fields": {
"tag": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "elif",
"named": false
},
{
"type": "else",
"named": false
},
{
"type": "endif",
"named": false
},
{
"type": "if",
"named": false
@@ -1327,21 +1481,47 @@
}
},
{
"type": "ifchanged_group",
"type": "if_group",
"named": true,
"fields": {
"tag": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "else",
"type": "endif",
"named": false
},
{
"type": "endifchanged",
"named": false
},
}
]
}
},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "elif_clause",
"named": true
},
{
"type": "else_clause",
"named": true
},
{
"type": "if_clause",
"named": true
}
]
}
},
{
"type": "ifchanged_clause",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "ifchanged",
"named": false
@@ -1364,6 +1544,36 @@
]
}
},
{
"type": "ifchanged_group",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "endifchanged",
"named": false
}
]
}
},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "else_clause",
"named": true
},
{
"type": "ifchanged_clause",
"named": true
}
]
}
},
{
"type": "include",
"named": true,
@@ -1401,17 +1611,13 @@
}
},
{
"type": "language_group",
"type": "language_clause",
"named": true,
"fields": {
"tag": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "endlanguage",
"named": false
},
{
"type": "language",
"named": false
@@ -1434,6 +1640,32 @@
]
}
},
{
"type": "language_group",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "endlanguage",
"named": false
}
]
}
},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "language_clause",
"named": true
}
]
}
},
{
"type": "library",
"named": true,
@@ -1502,20 +1734,68 @@
]
}
},
{
"type": "localize_clause",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "localize",
"named": false
}
]
}
},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "template",
"named": true
}
]
}
},
{
"type": "localize_group",
"named": true,
"fields": {
"tag": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "endlocalize",
"named": false
},
}
]
}
},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "localize_clause",
"named": true
}
]
}
},
{
"type": "localtime_clause",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "localize",
"type": "localtime",
"named": false
}
]
@@ -1537,26 +1817,22 @@
"named": true,
"fields": {
"tag": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "endlocaltime",
"named": false
},
{
"type": "localtime",
"named": false
}
]
}
},
"children": {
"multiple": false,
"required": false,
"required": true,
"types": [
{
"type": "template",
"type": "localtime_clause",
"named": true
}
]
@@ -1651,17 +1927,13 @@
}
},
{
"type": "partialdef_group",
"type": "partialdef_clause",
"named": true,
"fields": {
"tag": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "endpartialdef",
"named": false
},
{
"type": "partialdef",
"named": false
@@ -1673,10 +1945,6 @@
"multiple": true,
"required": true,
"types": [
{
"type": "pop_partial",
"named": true
},
{
"type": "push_partial",
"named": true
@@ -1688,6 +1956,36 @@
]
}
},
{
"type": "partialdef_group",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "endpartialdef",
"named": false
}
]
}
},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "partialdef_clause",
"named": true
},
{
"type": "pop_partial",
"named": true
}
]
}
},
{
"type": "predicate",
"named": true,
@@ -1814,17 +2112,13 @@
}
},
{
"type": "spaceless_group",
"type": "spaceless_clause",
"named": true,
"fields": {
"tag": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "endspaceless",
"named": false
},
{
"type": "spaceless",
"named": false
@@ -1843,6 +2137,32 @@
]
}
},
{
"type": "spaceless_group",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "endspaceless",
"named": false
}
]
}
},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "spaceless_clause",
"named": true
}
]
}
},
{
"type": "static",
"named": true,
@@ -1936,17 +2256,13 @@
}
},
{
"type": "timezone_group",
"type": "timezone_clause",
"named": true,
"fields": {
"tag": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "endtimezone",
"named": false
},
{
"type": "timezone",
"named": false
@@ -1969,6 +2285,32 @@
]
}
},
{
"type": "timezone_group",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "endtimezone",
"named": false
}
]
}
},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "timezone_clause",
"named": true
}
]
}
},
{
"type": "translate",
"named": true,
@@ -2181,17 +2523,13 @@
}
},
{
"type": "with_group",
"type": "with_clause",
"named": true,
"fields": {
"tag": {
"multiple": true,
"multiple": false,
"required": true,
"types": [
{
"type": "endwith",
"named": false
},
{
"type": "with",
"named": false
@@ -2224,6 +2562,32 @@
]
}
},
{
"type": "with_group",
"named": true,
"fields": {
"tag": {
"multiple": false,
"required": true,
"types": [
{
"type": "endwith",
"named": false
}
]
}
},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "with_clause",
"named": true
}
]
}
},
{
"type": "!=",
"named": false
+46475 -97139
View File
File diff suppressed because it is too large. Load diff