mirror of
https://github.com/elladunbar/tree-sitter-zanscript.git
synced 2025-11-05 23:29:54 -06:00
Add local highlighting maybe
This commit is contained in:
parent
eec8ac1dab
commit
159a378d3e
5 changed files with 44 additions and 19 deletions
|
|
@ -30,7 +30,7 @@ module.exports = grammar({
|
||||||
'define',
|
'define',
|
||||||
'Define',
|
'Define',
|
||||||
),
|
),
|
||||||
$.match,
|
field('find', $.match),
|
||||||
$.match,
|
$.match,
|
||||||
),
|
),
|
||||||
|
|
||||||
|
|
|
||||||
5
queries/locals.scm
Normal file
5
queries/locals.scm
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
(define find: (match) @local.definition.macro)
|
||||||
|
(((identifier) @local.reference)
|
||||||
|
(#set! reference.scope "global"))
|
||||||
|
(action name: ((identifier) @local.function)
|
||||||
|
(#set! function.scope "global"))
|
||||||
4
src/grammar.json
generated
4
src/grammar.json
generated
|
|
@ -60,8 +60,12 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"type": "FIELD",
|
||||||
|
"name": "find",
|
||||||
|
"content": {
|
||||||
"type": "SYMBOL",
|
"type": "SYMBOL",
|
||||||
"name": "match"
|
"name": "match"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "SYMBOL",
|
"type": "SYMBOL",
|
||||||
|
|
|
||||||
15
src/node-types.json
generated
15
src/node-types.json
generated
|
|
@ -141,9 +141,20 @@
|
||||||
{
|
{
|
||||||
"type": "define",
|
"type": "define",
|
||||||
"named": true,
|
"named": true,
|
||||||
"fields": {},
|
"fields": {
|
||||||
|
"find": {
|
||||||
|
"multiple": false,
|
||||||
|
"required": true,
|
||||||
|
"types": [
|
||||||
|
{
|
||||||
|
"type": "match",
|
||||||
|
"named": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
"children": {
|
"children": {
|
||||||
"multiple": true,
|
"multiple": false,
|
||||||
"required": true,
|
"required": true,
|
||||||
"types": [
|
"types": [
|
||||||
{
|
{
|
||||||
|
|
|
||||||
33
src/parser.c
generated
33
src/parser.c
generated
|
|
@ -11,9 +11,9 @@
|
||||||
#define ALIAS_COUNT 0
|
#define ALIAS_COUNT 0
|
||||||
#define TOKEN_COUNT 46
|
#define TOKEN_COUNT 46
|
||||||
#define EXTERNAL_TOKEN_COUNT 0
|
#define EXTERNAL_TOKEN_COUNT 0
|
||||||
#define FIELD_COUNT 1
|
#define FIELD_COUNT 2
|
||||||
#define MAX_ALIAS_SEQUENCE_LENGTH 6
|
#define MAX_ALIAS_SEQUENCE_LENGTH 6
|
||||||
#define PRODUCTION_ID_COUNT 3
|
#define PRODUCTION_ID_COUNT 4
|
||||||
|
|
||||||
enum ts_symbol_identifiers {
|
enum ts_symbol_identifiers {
|
||||||
sym_identifier = 1,
|
sym_identifier = 1,
|
||||||
|
|
@ -503,23 +503,28 @@ static const TSSymbolMetadata ts_symbol_metadata[] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
enum ts_field_identifiers {
|
enum ts_field_identifiers {
|
||||||
field_name = 1,
|
field_find = 1,
|
||||||
|
field_name = 2,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const char * const ts_field_names[] = {
|
static const char * const ts_field_names[] = {
|
||||||
[0] = NULL,
|
[0] = NULL,
|
||||||
|
[field_find] = "find",
|
||||||
[field_name] = "name",
|
[field_name] = "name",
|
||||||
};
|
};
|
||||||
|
|
||||||
static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = {
|
static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = {
|
||||||
[1] = {.index = 0, .length = 1},
|
[1] = {.index = 0, .length = 1},
|
||||||
[2] = {.index = 1, .length = 1},
|
[2] = {.index = 1, .length = 1},
|
||||||
|
[3] = {.index = 2, .length = 1},
|
||||||
};
|
};
|
||||||
|
|
||||||
static const TSFieldMapEntry ts_field_map_entries[] = {
|
static const TSFieldMapEntry ts_field_map_entries[] = {
|
||||||
[0] =
|
[0] =
|
||||||
{field_name, 0},
|
{field_find, 1},
|
||||||
[1] =
|
[1] =
|
||||||
|
{field_name, 0},
|
||||||
|
[2] =
|
||||||
{field_name, 1},
|
{field_name, 1},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -2954,28 +2959,28 @@ static const TSParseActionEntry ts_parse_actions[] = {
|
||||||
[93] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__expression_repeat1, 2, 0, 0),
|
[93] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__expression_repeat1, 2, 0, 0),
|
||||||
[95] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_repeat1, 2, 0, 0), SHIFT_REPEAT(59),
|
[95] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_repeat1, 2, 0, 0), SHIFT_REPEAT(59),
|
||||||
[98] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__expression_repeat1, 2, 0, 0),
|
[98] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__expression_repeat1, 2, 0, 0),
|
||||||
[100] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 5, 0, 1),
|
[100] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 5, 0, 2),
|
||||||
[102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 5, 0, 1),
|
[102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 5, 0, 2),
|
||||||
[104] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_branch, 6, 0, 0),
|
[104] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_branch, 6, 0, 0),
|
||||||
[106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_branch, 6, 0, 0),
|
[106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_branch, 6, 0, 0),
|
||||||
[108] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 4, 0, 1),
|
[108] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 4, 0, 2),
|
||||||
[110] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 4, 0, 1),
|
[110] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 4, 0, 2),
|
||||||
[112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop, 4, 0, 0),
|
[112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop, 4, 0, 0),
|
||||||
[114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop, 4, 0, 0),
|
[114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop, 4, 0, 0),
|
||||||
[116] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_branch, 4, 0, 0),
|
[116] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_branch, 4, 0, 0),
|
||||||
[118] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_branch, 4, 0, 0),
|
[118] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_branch, 4, 0, 0),
|
||||||
[120] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_action, 4, 0, 2),
|
[120] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_action, 4, 0, 3),
|
||||||
[122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_action, 4, 0, 2),
|
[122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_action, 4, 0, 3),
|
||||||
[124] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 3, 0, 1),
|
[124] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 3, 0, 2),
|
||||||
[126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 3, 0, 1),
|
[126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 3, 0, 2),
|
||||||
[128] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 3, 0, 0),
|
[128] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 3, 0, 0),
|
||||||
[130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 0),
|
[130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 0),
|
||||||
[132] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 2, 0, 0),
|
[132] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 2, 0, 0),
|
||||||
[134] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2, 0, 0),
|
[134] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2, 0, 0),
|
||||||
[136] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_repeat1, 2, 0, 0), SHIFT_REPEAT(58),
|
[136] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_repeat1, 2, 0, 0), SHIFT_REPEAT(58),
|
||||||
[139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58),
|
[139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58),
|
||||||
[141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_define, 3, 0, 0),
|
[141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_define, 3, 0, 1),
|
||||||
[143] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_define, 3, 0, 0),
|
[143] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_define, 3, 0, 1),
|
||||||
[145] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include, 2, 0, 0),
|
[145] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include, 2, 0, 0),
|
||||||
[147] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_include, 2, 0, 0),
|
[147] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_include, 2, 0, 0),
|
||||||
[149] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison, 3, 0, 0),
|
[149] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison, 3, 0, 0),
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue