From 5875f9a7d94836708119b0a1102bb5792e8bf673 Mon Sep 17 00:00:00 2001 From: Stefan Wienert Date: Tue, 13 Jul 2021 22:48:45 +0200 Subject: [PATCH] Feat: Doctype + Multiline content with dot --- README.md | 3 - grammar.js | 35 +- package.json | 1 + src/grammar.json | 81 ++ src/node-types.json | 35 + src/parser.c | 2610 +++++++++++++++++++++++++----------------- test/corpus/pipe.txt | 20 + test/corpus/tag.txt | 12 + yarn.lock | 5 + 9 files changed, 1718 insertions(+), 1084 deletions(-) diff --git a/README.md b/README.md index 26cbd71..691fb63 100644 --- a/README.md +++ b/README.md @@ -13,14 +13,11 @@ currently missing: - [ ] Control Flow (if, each, else, case, include...) https://pugjs.org/language/conditionals.html https://pugjs.org/language/includes.html -- [ ] doctype - https://pugjs.org/language/doctype.html - [ ] inline Javascript code with "- " - [ ] output Javascript code with "= " https://pugjs.org/language/code.html - [ ] inline Javascript code with "#{...}" - [ ] Filters -- [ ] Piped Content with a dot on the tag To add tests, check out `./test/corpus/*.txt` diff --git a/grammar.js b/grammar.js index b5a14d1..e7da45e 100644 --- a/grammar.js +++ b/grammar.js @@ -2,13 +2,11 @@ module.exports = grammar({ name: "pug", externals: ($) => [$._newline, $._indent, $._dedent], rules: { - source_file: ($) => repeat(choice($.comment, $.tag)), + source_file: ($) => repeat(choice($.comment, $.tag, $.doctype)), + doctype: ($) => + seq("doctype", alias(choice("html", "strict", "xml"), $.doctype_name)), pipe_content: ($) => - seq( - "|", - optional($._content_or_javascript), - $._newline, - ), + seq("|", optional($._content_or_javascript), $._newline), tag: ($) => seq( choice($.tag_name, $.id, $.class), @@ -16,6 +14,7 @@ module.exports = grammar({ optional($.attributes), choice( seq(":", $.tag), + $._content_after_dot, seq( optional(seq(" ", $._content_or_javascript)), $._newline, @@ -23,6 +22,17 @@ module.exports = grammar({ ) ) ), + _content_after_dot: ($) => + seq( + ".", + $._newline, + $._indent, + alias( + repeat1(seq($._content_or_javascript, $._newline)), + $.children + ), + $._dedent + ), attributes: ($) => seq( "(", @@ -33,18 +43,11 @@ module.exports = grammar({ attribute: ($) => seq( $.attribute_name, - optional(repeat1(seq( - ".", - alias(/[\w@\-:]+/, $.attribute_modifier) - ))), + optional(repeat1(seq(".", alias(/[\w@\-:]+/, $.attribute_modifier)))), optional(seq("=", $.quoted_attribute_value)) ), - children: $ => seq($._indent, repeat1($._children_choice), $._dedent), - _children_choice: ($) => - choice( - $.pipe_content, - $.tag, - ), + children: ($) => seq($._indent, repeat1($._children_choice), $._dedent), + _children_choice: ($) => choice($.pipe_content, $.tag), comment: ($) => seq( "//", diff --git a/package.json b/package.json index 0e9e0b9..db4200b 100644 --- a/package.json +++ b/package.json @@ -14,6 +14,7 @@ "nan": "^2.14.1" }, "devDependencies": { + "prettier": "^2.3.2", "tree-sitter-cli": "^0.20.0" } } diff --git a/src/grammar.json b/src/grammar.json index c362be7..f96e3ff 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -13,10 +13,45 @@ { "type": "SYMBOL", "name": "tag" + }, + { + "type": "SYMBOL", + "name": "doctype" } ] } }, + "doctype": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "doctype" + }, + { + "type": "ALIAS", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "html" + }, + { + "type": "STRING", + "value": "strict" + }, + { + "type": "STRING", + "value": "xml" + } + ] + }, + "named": true, + "value": "doctype_name" + } + ] + }, "pipe_content": { "type": "SEQ", "members": [ @@ -114,6 +149,10 @@ } ] }, + { + "type": "SYMBOL", + "name": "_content_after_dot" + }, { "type": "SEQ", "members": [ @@ -160,6 +199,48 @@ } ] }, + "_content_after_dot": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "." + }, + { + "type": "SYMBOL", + "name": "_newline" + }, + { + "type": "SYMBOL", + "name": "_indent" + }, + { + "type": "ALIAS", + "content": { + "type": "REPEAT1", + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_content_or_javascript" + }, + { + "type": "SYMBOL", + "name": "_newline" + } + ] + } + }, + "named": true, + "value": "children" + }, + { + "type": "SYMBOL", + "name": "_dedent" + } + ] + }, "attributes": { "type": "SEQ", "members": [ diff --git a/src/node-types.json b/src/node-types.json index 77b6af0..0f91a07 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -50,6 +50,14 @@ "multiple": true, "required": true, "types": [ + { + "type": "content", + "named": true + }, + { + "type": "javascript", + "named": true + }, { "type": "pipe_content", "named": true @@ -66,6 +74,21 @@ "named": true, "fields": {} }, + { + "type": "doctype", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "doctype_name", + "named": true + } + ] + } + }, { "type": "pipe_content", "named": true, @@ -112,6 +135,10 @@ "type": "comment", "named": true }, + { + "type": "doctype", + "named": true + }, { "type": "tag", "named": true @@ -218,6 +245,14 @@ "type": "content", "named": true }, + { + "type": "doctype", + "named": false + }, + { + "type": "doctype_name", + "named": true + }, { "type": "id", "named": true diff --git a/src/parser.c b/src/parser.c index e08f8bd..0468974 100644 --- a/src/parser.c +++ b/src/parser.c @@ -6,71 +6,82 @@ #endif #define LANGUAGE_VERSION 13 -#define STATE_COUNT 107 +#define STATE_COUNT 124 #define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 43 +#define SYMBOL_COUNT 50 #define ALIAS_COUNT 1 -#define TOKEN_COUNT 26 +#define TOKEN_COUNT 30 #define EXTERNAL_TOKEN_COUNT 3 #define FIELD_COUNT 0 #define MAX_ALIAS_SEQUENCE_LENGTH 7 -#define PRODUCTION_ID_COUNT 2 +#define PRODUCTION_ID_COUNT 3 enum { - anon_sym_PIPE = 1, - anon_sym_COLON = 2, - anon_sym_ = 3, - anon_sym_LPAREN = 4, - anon_sym_COMMA = 5, - anon_sym_RPAREN = 6, - anon_sym_DOT = 7, - aux_sym_attribute_token1 = 8, - anon_sym_EQ = 9, - anon_sym_SLASH_SLASH = 10, - sym_tag_name = 11, - sym_class = 12, - sym_id = 13, - anon_sym_SQUOTE = 14, - aux_sym_quoted_attribute_value_token1 = 15, - anon_sym_DQUOTE = 16, - aux_sym_quoted_attribute_value_token2 = 17, - sym_javascript = 18, - sym_content = 19, - anon_sym_LBRACE_LBRACE = 20, - anon_sym_RBRACE_RBRACE = 21, - sym__comment_content = 22, - sym__newline = 23, - sym__indent = 24, - sym__dedent = 25, - sym_source_file = 26, - sym_pipe_content = 27, - sym_tag = 28, - sym_attributes = 29, - sym_attribute = 30, - sym_children = 31, - sym__children_choice = 32, - sym_comment = 33, - sym_attribute_name = 34, - sym_quoted_attribute_value = 35, - aux_sym__content_or_javascript = 36, - aux_sym_source_file_repeat1 = 37, - aux_sym_tag_repeat1 = 38, - aux_sym_attributes_repeat1 = 39, - aux_sym_attribute_repeat1 = 40, - aux_sym_children_repeat1 = 41, - aux_sym_comment_repeat1 = 42, - alias_sym_attribute_modifier = 43, + anon_sym_doctype = 1, + anon_sym_html = 2, + anon_sym_strict = 3, + anon_sym_xml = 4, + anon_sym_PIPE = 5, + anon_sym_COLON = 6, + anon_sym_ = 7, + anon_sym_DOT = 8, + anon_sym_LPAREN = 9, + anon_sym_COMMA = 10, + anon_sym_RPAREN = 11, + aux_sym_attribute_token1 = 12, + anon_sym_EQ = 13, + anon_sym_SLASH_SLASH = 14, + sym_tag_name = 15, + sym_class = 16, + sym_id = 17, + anon_sym_SQUOTE = 18, + aux_sym_quoted_attribute_value_token1 = 19, + anon_sym_DQUOTE = 20, + aux_sym_quoted_attribute_value_token2 = 21, + sym_javascript = 22, + sym_content = 23, + anon_sym_LBRACE_LBRACE = 24, + anon_sym_RBRACE_RBRACE = 25, + sym__comment_content = 26, + sym__newline = 27, + sym__indent = 28, + sym__dedent = 29, + sym_source_file = 30, + sym_doctype = 31, + sym_pipe_content = 32, + sym_tag = 33, + sym__content_after_dot = 34, + sym_attributes = 35, + sym_attribute = 36, + sym_children = 37, + sym__children_choice = 38, + sym_comment = 39, + sym_attribute_name = 40, + sym_quoted_attribute_value = 41, + aux_sym__content_or_javascript = 42, + aux_sym_source_file_repeat1 = 43, + aux_sym_tag_repeat1 = 44, + aux_sym__content_after_dot_repeat1 = 45, + aux_sym_attributes_repeat1 = 46, + aux_sym_attribute_repeat1 = 47, + aux_sym_children_repeat1 = 48, + aux_sym_comment_repeat1 = 49, + alias_sym_attribute_modifier = 50, }; static const char * const ts_symbol_names[] = { [ts_builtin_sym_end] = "end", + [anon_sym_doctype] = "doctype", + [anon_sym_html] = "doctype_name", + [anon_sym_strict] = "doctype_name", + [anon_sym_xml] = "doctype_name", [anon_sym_PIPE] = "|", [anon_sym_COLON] = ":", [anon_sym_] = " ", + [anon_sym_DOT] = ".", [anon_sym_LPAREN] = "(", [anon_sym_COMMA] = ",", [anon_sym_RPAREN] = ")", - [anon_sym_DOT] = ".", [aux_sym_attribute_token1] = "attribute_token1", [anon_sym_EQ] = "=", [anon_sym_SLASH_SLASH] = "//", @@ -90,8 +101,10 @@ static const char * const ts_symbol_names[] = { [sym__indent] = "_indent", [sym__dedent] = "_dedent", [sym_source_file] = "source_file", + [sym_doctype] = "doctype", [sym_pipe_content] = "pipe_content", [sym_tag] = "tag", + [sym__content_after_dot] = "_content_after_dot", [sym_attributes] = "attributes", [sym_attribute] = "attribute", [sym_children] = "children", @@ -102,6 +115,7 @@ static const char * const ts_symbol_names[] = { [aux_sym__content_or_javascript] = "_content_or_javascript", [aux_sym_source_file_repeat1] = "source_file_repeat1", [aux_sym_tag_repeat1] = "tag_repeat1", + [aux_sym__content_after_dot_repeat1] = "_content_after_dot_repeat1", [aux_sym_attributes_repeat1] = "attributes_repeat1", [aux_sym_attribute_repeat1] = "attribute_repeat1", [aux_sym_children_repeat1] = "children_repeat1", @@ -111,13 +125,17 @@ static const char * const ts_symbol_names[] = { static const TSSymbol ts_symbol_map[] = { [ts_builtin_sym_end] = ts_builtin_sym_end, + [anon_sym_doctype] = anon_sym_doctype, + [anon_sym_html] = anon_sym_html, + [anon_sym_strict] = anon_sym_html, + [anon_sym_xml] = anon_sym_html, [anon_sym_PIPE] = anon_sym_PIPE, [anon_sym_COLON] = anon_sym_COLON, [anon_sym_] = anon_sym_, + [anon_sym_DOT] = anon_sym_DOT, [anon_sym_LPAREN] = anon_sym_LPAREN, [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_RPAREN] = anon_sym_RPAREN, - [anon_sym_DOT] = anon_sym_DOT, [aux_sym_attribute_token1] = aux_sym_attribute_token1, [anon_sym_EQ] = anon_sym_EQ, [anon_sym_SLASH_SLASH] = anon_sym_SLASH_SLASH, @@ -137,8 +155,10 @@ static const TSSymbol ts_symbol_map[] = { [sym__indent] = sym__indent, [sym__dedent] = sym__dedent, [sym_source_file] = sym_source_file, + [sym_doctype] = sym_doctype, [sym_pipe_content] = sym_pipe_content, [sym_tag] = sym_tag, + [sym__content_after_dot] = sym__content_after_dot, [sym_attributes] = sym_attributes, [sym_attribute] = sym_attribute, [sym_children] = sym_children, @@ -149,6 +169,7 @@ static const TSSymbol ts_symbol_map[] = { [aux_sym__content_or_javascript] = aux_sym__content_or_javascript, [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1, [aux_sym_tag_repeat1] = aux_sym_tag_repeat1, + [aux_sym__content_after_dot_repeat1] = aux_sym__content_after_dot_repeat1, [aux_sym_attributes_repeat1] = aux_sym_attributes_repeat1, [aux_sym_attribute_repeat1] = aux_sym_attribute_repeat1, [aux_sym_children_repeat1] = aux_sym_children_repeat1, @@ -161,6 +182,22 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = true, }, + [anon_sym_doctype] = { + .visible = true, + .named = false, + }, + [anon_sym_html] = { + .visible = true, + .named = true, + }, + [anon_sym_strict] = { + .visible = true, + .named = true, + }, + [anon_sym_xml] = { + .visible = true, + .named = true, + }, [anon_sym_PIPE] = { .visible = true, .named = false, @@ -173,19 +210,19 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_LPAREN] = { + [anon_sym_DOT] = { .visible = true, .named = false, }, - [anon_sym_COMMA] = { + [anon_sym_LPAREN] = { .visible = true, .named = false, }, - [anon_sym_RPAREN] = { + [anon_sym_COMMA] = { .visible = true, .named = false, }, - [anon_sym_DOT] = { + [anon_sym_RPAREN] = { .visible = true, .named = false, }, @@ -265,6 +302,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_doctype] = { + .visible = true, + .named = true, + }, [sym_pipe_content] = { .visible = true, .named = true, @@ -273,6 +314,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym__content_after_dot] = { + .visible = false, + .named = true, + }, [sym_attributes] = { .visible = true, .named = true, @@ -313,6 +358,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, + [aux_sym__content_after_dot_repeat1] = { + .visible = false, + .named = false, + }, [aux_sym_attributes_repeat1] = { .visible = false, .named = false, @@ -340,9 +389,15 @@ static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE [1] = { [1] = alias_sym_attribute_modifier, }, + [2] = { + [3] = sym_children, + }, }; static const uint16_t ts_non_terminal_alias_map[] = { + aux_sym__content_after_dot_repeat1, 2, + aux_sym__content_after_dot_repeat1, + sym_children, 0, }; @@ -351,63 +406,64 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { eof = lexer->eof(lexer); switch (state) { case 0: - if (eof) ADVANCE(16); - if (lookahead == '"') ADVANCE(33); - if (lookahead == '#') ADVANCE(14); - if (lookahead == '\'') ADVANCE(30); - if (lookahead == '(') ADVANCE(20); - if (lookahead == ')') ADVANCE(22); - if (lookahead == ',') ADVANCE(21); - if (lookahead == '.') ADVANCE(23); - if (lookahead == '/') ADVANCE(9); - if (lookahead == ':') ADVANCE(18); - if (lookahead == '=') ADVANCE(25); - if (lookahead == '{') ADVANCE(10); - if (lookahead == '|') ADVANCE(17); - if (lookahead == '}') ADVANCE(11); + if (eof) ADVANCE(33); + if (lookahead == '"') ADVANCE(62); + if (lookahead == '#') ADVANCE(31); + if (lookahead == '\'') ADVANCE(59); + if (lookahead == '(') ADVANCE(44); + if (lookahead == ')') ADVANCE(46); + if (lookahead == ',') ADVANCE(45); + if (lookahead == '.') ADVANCE(43); + if (lookahead == '/') ADVANCE(10); + if (lookahead == ':') ADVANCE(40); + if (lookahead == '=') ADVANCE(48); + if (lookahead == 'd') ADVANCE(19); + if (lookahead == 'h') ADVANCE(25); + if (lookahead == 's') ADVANCE(22); + if (lookahead == 'x') ADVANCE(17); + if (lookahead == '{') ADVANCE(27); + if (lookahead == '|') ADVANCE(39); + if (lookahead == '}') ADVANCE(28); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(0) - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(27); END_STATE(); case 1: if (lookahead == '\n') SKIP(1) - if (lookahead == '{') ADVANCE(10); + if (lookahead == '{') ADVANCE(27); if (lookahead == '\t' || lookahead == '\r' || - lookahead == ' ') ADVANCE(38); - if (lookahead != 0) ADVANCE(39); + lookahead == ' ') ADVANCE(67); + if (lookahead != 0) ADVANCE(68); END_STATE(); case 2: if (lookahead == '\n') SKIP(2) if (lookahead == '\t' || lookahead == '\r' || - lookahead == ' ') ADVANCE(36); + lookahead == ' ') ADVANCE(65); if (lookahead != 0 && - lookahead != '}') ADVANCE(37); + lookahead != '}') ADVANCE(66); END_STATE(); case 3: - if (lookahead == ' ') ADVANCE(19); - if (lookahead == '#') ADVANCE(14); - if (lookahead == '(') ADVANCE(20); - if (lookahead == ')') ADVANCE(22); - if (lookahead == ',') ADVANCE(21); - if (lookahead == '.') ADVANCE(13); - if (lookahead == ':') ADVANCE(18); + if (lookahead == ' ') ADVANCE(41); + if (lookahead == '#') ADVANCE(31); + if (lookahead == '(') ADVANCE(44); + if (lookahead == ')') ADVANCE(46); + if (lookahead == ',') ADVANCE(45); + if (lookahead == '.') ADVANCE(43); + if (lookahead == ':') ADVANCE(40); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r') SKIP(3) END_STATE(); case 4: - if (lookahead == ' ') ADVANCE(19); - if (lookahead == ')') ADVANCE(22); - if (lookahead == ',') ADVANCE(21); - if (lookahead == '.') ADVANCE(23); - if (lookahead == '=') ADVANCE(25); + if (lookahead == ' ') ADVANCE(41); + if (lookahead == ')') ADVANCE(46); + if (lookahead == ',') ADVANCE(45); + if (lookahead == '.') ADVANCE(42); + if (lookahead == ':') ADVANCE(40); + if (lookahead == '=') ADVANCE(48); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r') SKIP(4) @@ -416,227 +472,376 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == ' ') SKIP(5) if (lookahead == '\t' || lookahead == '\n' || - lookahead == '\r') ADVANCE(42); - if (lookahead != 0) ADVANCE(43); + lookahead == '\r') ADVANCE(71); + if (lookahead != 0) ADVANCE(72); END_STATE(); case 6: - if (lookahead == '"') ADVANCE(33); + if (lookahead == '"') ADVANCE(62); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') ADVANCE(34); - if (lookahead != 0) ADVANCE(35); + lookahead == ' ') ADVANCE(63); + if (lookahead != 0) ADVANCE(64); END_STATE(); case 7: - if (lookahead == '\'') ADVANCE(30); + if (lookahead == '#') ADVANCE(31); + if (lookahead == '.') ADVANCE(30); + if (lookahead == '|') ADVANCE(39); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') ADVANCE(31); - if (lookahead != 0) ADVANCE(32); + lookahead == ' ') SKIP(7) + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(56); END_STATE(); case 8: - if (lookahead == ')') ADVANCE(22); + if (lookahead == '\'') ADVANCE(59); + if (lookahead == '\t' || + lookahead == '\n' || + lookahead == '\r' || + lookahead == ' ') ADVANCE(60); + if (lookahead != 0) ADVANCE(61); + END_STATE(); + case 9: + if (lookahead == ')') ADVANCE(46); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') SKIP(8) + lookahead == ' ') SKIP(9) if (lookahead == '-' || ('0' <= lookahead && lookahead <= ':') || ('@' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(24); - END_STATE(); - case 9: - if (lookahead == '/') ADVANCE(26); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(47); END_STATE(); case 10: - if (lookahead == '{') ADVANCE(40); + if (lookahead == '/') ADVANCE(49); END_STATE(); case 11: - if (lookahead == '}') ADVANCE(41); + if (lookahead == 'c') ADVANCE(23); END_STATE(); case 12: + if (lookahead == 'c') ADVANCE(24); + END_STATE(); + case 13: + if (lookahead == 'e') ADVANCE(34); + END_STATE(); + case 14: + if (lookahead == 'i') ADVANCE(12); + END_STATE(); + case 15: + if (lookahead == 'l') ADVANCE(38); + END_STATE(); + case 16: + if (lookahead == 'l') ADVANCE(36); + END_STATE(); + case 17: + if (lookahead == 'm') ADVANCE(15); + END_STATE(); + case 18: + if (lookahead == 'm') ADVANCE(16); + END_STATE(); + case 19: + if (lookahead == 'o') ADVANCE(11); + END_STATE(); + case 20: + if (lookahead == 'p') ADVANCE(13); + END_STATE(); + case 21: + if (lookahead == 'r') ADVANCE(14); + END_STATE(); + case 22: + if (lookahead == 't') ADVANCE(21); + END_STATE(); + case 23: + if (lookahead == 't') ADVANCE(26); + END_STATE(); + case 24: + if (lookahead == 't') ADVANCE(37); + END_STATE(); + case 25: + if (lookahead == 't') ADVANCE(18); + END_STATE(); + case 26: + if (lookahead == 'y') ADVANCE(20); + END_STATE(); + case 27: + if (lookahead == '{') ADVANCE(69); + END_STATE(); + case 28: + if (lookahead == '}') ADVANCE(70); + END_STATE(); + case 29: if (lookahead == '-' || - lookahead == ':') ADVANCE(12); + lookahead == ':') ADVANCE(29); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(27); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(56); END_STATE(); - case 13: + case 30: if (lookahead == '-' || - ('0' <= lookahead && lookahead <= '9')) ADVANCE(13); + ('0' <= lookahead && lookahead <= '9')) ADVANCE(30); if (lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(28); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(57); END_STATE(); - case 14: + case 31: if (lookahead == '-' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(29); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(58); END_STATE(); - case 15: - if (eof) ADVANCE(16); - if (lookahead == '#') ADVANCE(14); - if (lookahead == '.') ADVANCE(13); - if (lookahead == '/') ADVANCE(9); - if (lookahead == '|') ADVANCE(17); + case 32: + if (eof) ADVANCE(33); + if (lookahead == '#') ADVANCE(31); + if (lookahead == '.') ADVANCE(30); + if (lookahead == '/') ADVANCE(10); + if (lookahead == 'd') ADVANCE(52); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') SKIP(15) + lookahead == ' ') SKIP(32) if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(27); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(56); END_STATE(); - case 16: + case 33: ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); - case 17: + case 34: + ACCEPT_TOKEN(anon_sym_doctype); + END_STATE(); + case 35: + ACCEPT_TOKEN(anon_sym_doctype); + if (lookahead == '-' || + lookahead == ':') ADVANCE(29); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(56); + END_STATE(); + case 36: + ACCEPT_TOKEN(anon_sym_html); + END_STATE(); + case 37: + ACCEPT_TOKEN(anon_sym_strict); + END_STATE(); + case 38: + ACCEPT_TOKEN(anon_sym_xml); + END_STATE(); + case 39: ACCEPT_TOKEN(anon_sym_PIPE); END_STATE(); - case 18: + case 40: ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); - case 19: + case 41: ACCEPT_TOKEN(anon_sym_); - if (lookahead == ' ') ADVANCE(19); + if (lookahead == ' ') ADVANCE(41); END_STATE(); - case 20: + case 42: + ACCEPT_TOKEN(anon_sym_DOT); + END_STATE(); + case 43: + ACCEPT_TOKEN(anon_sym_DOT); + if (lookahead == '-' || + ('0' <= lookahead && lookahead <= '9')) ADVANCE(30); + if (lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(57); + END_STATE(); + case 44: ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); - case 21: + case 45: ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); - case 22: + case 46: ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); - case 23: - ACCEPT_TOKEN(anon_sym_DOT); - END_STATE(); - case 24: + case 47: ACCEPT_TOKEN(aux_sym_attribute_token1); if (lookahead == '-' || ('0' <= lookahead && lookahead <= ':') || ('@' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(24); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(47); END_STATE(); - case 25: + case 48: ACCEPT_TOKEN(anon_sym_EQ); END_STATE(); - case 26: + case 49: ACCEPT_TOKEN(anon_sym_SLASH_SLASH); END_STATE(); - case 27: + case 50: ACCEPT_TOKEN(sym_tag_name); + if (lookahead == 'c') ADVANCE(54); if (lookahead == '-' || - lookahead == ':') ADVANCE(12); + lookahead == ':') ADVANCE(29); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(27); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(56); END_STATE(); - case 28: + case 51: + ACCEPT_TOKEN(sym_tag_name); + if (lookahead == 'e') ADVANCE(35); + if (lookahead == '-' || + lookahead == ':') ADVANCE(29); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(56); + END_STATE(); + case 52: + ACCEPT_TOKEN(sym_tag_name); + if (lookahead == 'o') ADVANCE(50); + if (lookahead == '-' || + lookahead == ':') ADVANCE(29); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(56); + END_STATE(); + case 53: + ACCEPT_TOKEN(sym_tag_name); + if (lookahead == 'p') ADVANCE(51); + if (lookahead == '-' || + lookahead == ':') ADVANCE(29); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(56); + END_STATE(); + case 54: + ACCEPT_TOKEN(sym_tag_name); + if (lookahead == 't') ADVANCE(55); + if (lookahead == '-' || + lookahead == ':') ADVANCE(29); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(56); + END_STATE(); + case 55: + ACCEPT_TOKEN(sym_tag_name); + if (lookahead == 'y') ADVANCE(53); + if (lookahead == '-' || + lookahead == ':') ADVANCE(29); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(56); + END_STATE(); + case 56: + ACCEPT_TOKEN(sym_tag_name); + if (lookahead == '-' || + lookahead == ':') ADVANCE(29); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(56); + END_STATE(); + case 57: ACCEPT_TOKEN(sym_class); if (lookahead == '-' || - ('0' <= lookahead && lookahead <= '9')) ADVANCE(28); + ('0' <= lookahead && lookahead <= '9')) ADVANCE(57); if (lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(28); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(57); END_STATE(); - case 29: + case 58: ACCEPT_TOKEN(sym_id); if (lookahead == '-' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(29); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(58); END_STATE(); - case 30: + case 59: ACCEPT_TOKEN(anon_sym_SQUOTE); END_STATE(); - case 31: + case 60: ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token1); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') ADVANCE(31); + lookahead == ' ') ADVANCE(60); if (lookahead != 0 && - lookahead != '\'') ADVANCE(32); + lookahead != '\'') ADVANCE(61); END_STATE(); - case 32: + case 61: ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token1); if (lookahead != 0 && - lookahead != '\'') ADVANCE(32); + lookahead != '\'') ADVANCE(61); END_STATE(); - case 33: + case 62: ACCEPT_TOKEN(anon_sym_DQUOTE); END_STATE(); - case 34: + case 63: ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token2); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') ADVANCE(34); + lookahead == ' ') ADVANCE(63); if (lookahead != 0 && - lookahead != '"') ADVANCE(35); + lookahead != '"') ADVANCE(64); END_STATE(); - case 35: + case 64: ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token2); if (lookahead != 0 && - lookahead != '"') ADVANCE(35); + lookahead != '"') ADVANCE(64); END_STATE(); - case 36: + case 65: ACCEPT_TOKEN(sym_javascript); if (lookahead == '\t' || lookahead == '\r' || - lookahead == ' ') ADVANCE(36); + lookahead == ' ') ADVANCE(65); if (lookahead != 0 && lookahead != '\n' && - lookahead != '}') ADVANCE(37); + lookahead != '}') ADVANCE(66); END_STATE(); - case 37: + case 66: ACCEPT_TOKEN(sym_javascript); if (lookahead != 0 && lookahead != '\n' && - lookahead != '}') ADVANCE(37); + lookahead != '}') ADVANCE(66); END_STATE(); - case 38: + case 67: ACCEPT_TOKEN(sym_content); if (lookahead == '\t' || lookahead == '\r' || - lookahead == ' ') ADVANCE(38); + lookahead == ' ') ADVANCE(67); if (lookahead != 0 && lookahead != '\n' && - lookahead != '{') ADVANCE(39); + lookahead != '{') ADVANCE(68); END_STATE(); - case 39: + case 68: ACCEPT_TOKEN(sym_content); if (lookahead != 0 && lookahead != '\n' && - lookahead != '{') ADVANCE(39); + lookahead != '{') ADVANCE(68); END_STATE(); - case 40: + case 69: ACCEPT_TOKEN(anon_sym_LBRACE_LBRACE); END_STATE(); - case 41: + case 70: ACCEPT_TOKEN(anon_sym_RBRACE_RBRACE); END_STATE(); - case 42: + case 71: ACCEPT_TOKEN(sym__comment_content); - if (lookahead == '\n') ADVANCE(42); - if (lookahead == ' ') ADVANCE(42); + if (lookahead == '\n') ADVANCE(71); + if (lookahead == ' ') ADVANCE(71); if (lookahead == '\t' || - lookahead == '\r') ADVANCE(42); - if (lookahead != 0) ADVANCE(43); + lookahead == '\r') ADVANCE(71); + if (lookahead != 0) ADVANCE(72); END_STATE(); - case 43: + case 72: ACCEPT_TOKEN(sym__comment_content); if (lookahead != 0 && - lookahead != '\n') ADVANCE(43); + lookahead != '\n') ADVANCE(72); END_STATE(); default: return false; @@ -645,112 +850,129 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0, .external_lex_state = 1}, - [1] = {.lex_state = 15}, - [2] = {.lex_state = 15, .external_lex_state = 2}, - [3] = {.lex_state = 15, .external_lex_state = 2}, - [4] = {.lex_state = 15, .external_lex_state = 2}, - [5] = {.lex_state = 15}, - [6] = {.lex_state = 3, .external_lex_state = 3}, - [7] = {.lex_state = 3, .external_lex_state = 3}, - [8] = {.lex_state = 3, .external_lex_state = 3}, - [9] = {.lex_state = 3, .external_lex_state = 3}, - [10] = {.lex_state = 15}, - [11] = {.lex_state = 15}, - [12] = {.lex_state = 15}, - [13] = {.lex_state = 15, .external_lex_state = 4}, - [14] = {.lex_state = 15, .external_lex_state = 5}, - [15] = {.lex_state = 15, .external_lex_state = 5}, - [16] = {.lex_state = 15, .external_lex_state = 4}, - [17] = {.lex_state = 15, .external_lex_state = 5}, - [18] = {.lex_state = 15, .external_lex_state = 4}, - [19] = {.lex_state = 15, .external_lex_state = 5}, - [20] = {.lex_state = 15, .external_lex_state = 5}, - [21] = {.lex_state = 3, .external_lex_state = 3}, - [22] = {.lex_state = 15, .external_lex_state = 4}, - [23] = {.lex_state = 15, .external_lex_state = 4}, - [24] = {.lex_state = 15, .external_lex_state = 4}, - [25] = {.lex_state = 15, .external_lex_state = 4}, - [26] = {.lex_state = 4}, - [27] = {.lex_state = 4}, + [1] = {.lex_state = 32}, + [2] = {.lex_state = 3, .external_lex_state = 2}, + [3] = {.lex_state = 3, .external_lex_state = 2}, + [4] = {.lex_state = 32}, + [5] = {.lex_state = 3, .external_lex_state = 2}, + [6] = {.lex_state = 3, .external_lex_state = 2}, + [7] = {.lex_state = 32}, + [8] = {.lex_state = 7, .external_lex_state = 3}, + [9] = {.lex_state = 7, .external_lex_state = 3}, + [10] = {.lex_state = 7, .external_lex_state = 3}, + [11] = {.lex_state = 7}, + [12] = {.lex_state = 7}, + [13] = {.lex_state = 32, .external_lex_state = 4}, + [14] = {.lex_state = 3, .external_lex_state = 2}, + [15] = {.lex_state = 32, .external_lex_state = 4}, + [16] = {.lex_state = 32, .external_lex_state = 4}, + [17] = {.lex_state = 32, .external_lex_state = 4}, + [18] = {.lex_state = 32, .external_lex_state = 4}, + [19] = {.lex_state = 32, .external_lex_state = 4}, + [20] = {.lex_state = 7, .external_lex_state = 5}, + [21] = {.lex_state = 32, .external_lex_state = 4}, + [22] = {.lex_state = 7, .external_lex_state = 5}, + [23] = {.lex_state = 7, .external_lex_state = 5}, + [24] = {.lex_state = 7, .external_lex_state = 5}, + [25] = {.lex_state = 7, .external_lex_state = 5}, + [26] = {.lex_state = 32}, + [27] = {.lex_state = 32}, [28] = {.lex_state = 4}, - [29] = {.lex_state = 15}, - [30] = {.lex_state = 15, .external_lex_state = 2}, - [31] = {.lex_state = 15, .external_lex_state = 2}, - [32] = {.lex_state = 8}, - [33] = {.lex_state = 15, .external_lex_state = 2}, - [34] = {.lex_state = 15}, - [35] = {.lex_state = 15, .external_lex_state = 2}, - [36] = {.lex_state = 15, .external_lex_state = 2}, - [37] = {.lex_state = 15, .external_lex_state = 2}, - [38] = {.lex_state = 15}, - [39] = {.lex_state = 15, .external_lex_state = 2}, - [40] = {.lex_state = 15}, - [41] = {.lex_state = 15, .external_lex_state = 2}, - [42] = {.lex_state = 15}, - [43] = {.lex_state = 4}, - [44] = {.lex_state = 4}, - [45] = {.lex_state = 15}, - [46] = {.lex_state = 8}, - [47] = {.lex_state = 15}, - [48] = {.lex_state = 15}, - [49] = {.lex_state = 8}, - [50] = {.lex_state = 15}, - [51] = {.lex_state = 15}, - [52] = {.lex_state = 1, .external_lex_state = 3}, - [53] = {.lex_state = 1, .external_lex_state = 3}, - [54] = {.lex_state = 1, .external_lex_state = 3}, - [55] = {.lex_state = 15}, - [56] = {.lex_state = 1, .external_lex_state = 3}, - [57] = {.lex_state = 15}, - [58] = {.lex_state = 1, .external_lex_state = 3}, - [59] = {.lex_state = 1, .external_lex_state = 3}, - [60] = {.lex_state = 15}, - [61] = {.lex_state = 15}, - [62] = {.lex_state = 15}, - [63] = {.lex_state = 1, .external_lex_state = 3}, - [64] = {.lex_state = 1, .external_lex_state = 3}, - [65] = {.lex_state = 1, .external_lex_state = 3}, - [66] = {.lex_state = 3, .external_lex_state = 3}, - [67] = {.lex_state = 5, .external_lex_state = 2}, - [68] = {.lex_state = 3, .external_lex_state = 3}, - [69] = {.lex_state = 1}, - [70] = {.lex_state = 0}, - [71] = {.lex_state = 1}, - [72] = {.lex_state = 3, .external_lex_state = 3}, - [73] = {.lex_state = 3}, - [74] = {.lex_state = 1}, - [75] = {.lex_state = 5, .external_lex_state = 2}, - [76] = {.lex_state = 3}, - [77] = {.lex_state = 3}, - [78] = {.lex_state = 1}, - [79] = {.lex_state = 3}, - [80] = {.lex_state = 5, .external_lex_state = 2}, - [81] = {.lex_state = 3, .external_lex_state = 3}, - [82] = {.lex_state = 0}, - [83] = {.lex_state = 1, .external_lex_state = 3}, - [84] = {.lex_state = 5, .external_lex_state = 2}, - [85] = {.lex_state = 3}, - [86] = {.lex_state = 5, .external_lex_state = 2}, + [29] = {.lex_state = 4}, + [30] = {.lex_state = 32}, + [31] = {.lex_state = 32}, + [32] = {.lex_state = 32}, + [33] = {.lex_state = 32}, + [34] = {.lex_state = 32}, + [35] = {.lex_state = 32}, + [36] = {.lex_state = 32}, + [37] = {.lex_state = 32}, + [38] = {.lex_state = 32}, + [39] = {.lex_state = 4}, + [40] = {.lex_state = 32}, + [41] = {.lex_state = 7, .external_lex_state = 3}, + [42] = {.lex_state = 4, .external_lex_state = 2}, + [43] = {.lex_state = 1, .external_lex_state = 3}, + [44] = {.lex_state = 4, .external_lex_state = 2}, + [45] = {.lex_state = 4, .external_lex_state = 2}, + [46] = {.lex_state = 7, .external_lex_state = 3}, + [47] = {.lex_state = 7, .external_lex_state = 3}, + [48] = {.lex_state = 7, .external_lex_state = 3}, + [49] = {.lex_state = 7, .external_lex_state = 3}, + [50] = {.lex_state = 7, .external_lex_state = 3}, + [51] = {.lex_state = 7, .external_lex_state = 3}, + [52] = {.lex_state = 9}, + [53] = {.lex_state = 4, .external_lex_state = 2}, + [54] = {.lex_state = 9}, + [55] = {.lex_state = 7, .external_lex_state = 3}, + [56] = {.lex_state = 7, .external_lex_state = 3}, + [57] = {.lex_state = 1, .external_lex_state = 3}, + [58] = {.lex_state = 7, .external_lex_state = 3}, + [59] = {.lex_state = 4}, + [60] = {.lex_state = 9}, + [61] = {.lex_state = 1, .external_lex_state = 3}, + [62] = {.lex_state = 4}, + [63] = {.lex_state = 1, .external_lex_state = 2}, + [64] = {.lex_state = 7}, + [65] = {.lex_state = 1}, + [66] = {.lex_state = 1, .external_lex_state = 2}, + [67] = {.lex_state = 7}, + [68] = {.lex_state = 1, .external_lex_state = 2}, + [69] = {.lex_state = 7}, + [70] = {.lex_state = 1, .external_lex_state = 2}, + [71] = {.lex_state = 1, .external_lex_state = 2}, + [72] = {.lex_state = 1, .external_lex_state = 2}, + [73] = {.lex_state = 7}, + [74] = {.lex_state = 7}, + [75] = {.lex_state = 4, .external_lex_state = 2}, + [76] = {.lex_state = 1, .external_lex_state = 2}, + [77] = {.lex_state = 1}, + [78] = {.lex_state = 1, .external_lex_state = 2}, + [79] = {.lex_state = 4, .external_lex_state = 2}, + [80] = {.lex_state = 1, .external_lex_state = 2}, + [81] = {.lex_state = 7}, + [82] = {.lex_state = 4, .external_lex_state = 2}, + [83] = {.lex_state = 1, .external_lex_state = 2}, + [84] = {.lex_state = 1}, + [85] = {.lex_state = 1}, + [86] = {.lex_state = 1}, [87] = {.lex_state = 3}, - [88] = {.lex_state = 3, .external_lex_state = 3}, - [89] = {.lex_state = 3, .external_lex_state = 3}, - [90] = {.lex_state = 3, .external_lex_state = 3}, - [91] = {.lex_state = 1}, - [92] = {.lex_state = 1}, - [93] = {.lex_state = 6}, - [94] = {.lex_state = 7}, + [88] = {.lex_state = 0}, + [89] = {.lex_state = 1}, + [90] = {.lex_state = 3}, + [91] = {.lex_state = 3}, + [92] = {.lex_state = 5, .external_lex_state = 3}, + [93] = {.lex_state = 1}, + [94] = {.lex_state = 1, .external_lex_state = 3}, [95] = {.lex_state = 5, .external_lex_state = 3}, - [96] = {.lex_state = 8}, - [97] = {.lex_state = 5, .external_lex_state = 2}, - [98] = {.lex_state = 3}, - [99] = {.lex_state = 0, .external_lex_state = 3}, - [100] = {.lex_state = 0}, - [101] = {.lex_state = 2}, - [102] = {.lex_state = 0, .external_lex_state = 3}, - [103] = {.lex_state = 0}, - [104] = {.lex_state = 0}, + [96] = {.lex_state = 3}, + [97] = {.lex_state = 0}, + [98] = {.lex_state = 1}, + [99] = {.lex_state = 5, .external_lex_state = 3}, + [100] = {.lex_state = 5, .external_lex_state = 3}, + [101] = {.lex_state = 3}, + [102] = {.lex_state = 1, .external_lex_state = 2}, + [103] = {.lex_state = 5, .external_lex_state = 3}, + [104] = {.lex_state = 3}, [105] = {.lex_state = 0}, - [106] = {.lex_state = 8}, + [106] = {.lex_state = 6}, + [107] = {.lex_state = 8}, + [108] = {.lex_state = 5, .external_lex_state = 2}, + [109] = {.lex_state = 9}, + [110] = {.lex_state = 3}, + [111] = {.lex_state = 5, .external_lex_state = 3}, + [112] = {.lex_state = 9}, + [113] = {.lex_state = 0}, + [114] = {.lex_state = 0, .external_lex_state = 2}, + [115] = {.lex_state = 0}, + [116] = {.lex_state = 0}, + [117] = {.lex_state = 0, .external_lex_state = 2}, + [118] = {.lex_state = 0, .external_lex_state = 2}, + [119] = {.lex_state = 2}, + [120] = {.lex_state = 0, .external_lex_state = 4}, + [121] = {.lex_state = 0}, + [122] = {.lex_state = 0, .external_lex_state = 4}, + [123] = {.lex_state = 0, .external_lex_state = 2}, }; enum { @@ -772,10 +994,10 @@ static const bool ts_external_scanner_states[6][EXTERNAL_TOKEN_COUNT] = { [ts_external_token__dedent] = true, }, [2] = { - [ts_external_token__dedent] = true, + [ts_external_token__newline] = true, }, [3] = { - [ts_external_token__newline] = true, + [ts_external_token__dedent] = true, }, [4] = { [ts_external_token__indent] = true, @@ -789,15 +1011,19 @@ static const bool ts_external_scanner_states[6][EXTERNAL_TOKEN_COUNT] = { static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [0] = { [ts_builtin_sym_end] = ACTIONS(1), + [anon_sym_doctype] = ACTIONS(1), + [anon_sym_html] = ACTIONS(1), + [anon_sym_strict] = ACTIONS(1), + [anon_sym_xml] = ACTIONS(1), [anon_sym_PIPE] = ACTIONS(1), [anon_sym_COLON] = ACTIONS(1), + [anon_sym_DOT] = ACTIONS(1), [anon_sym_LPAREN] = ACTIONS(1), [anon_sym_COMMA] = ACTIONS(1), [anon_sym_RPAREN] = ACTIONS(1), - [anon_sym_DOT] = ACTIONS(1), [anon_sym_EQ] = ACTIONS(1), [anon_sym_SLASH_SLASH] = ACTIONS(1), - [sym_tag_name] = ACTIONS(1), + [sym_class] = ACTIONS(1), [sym_id] = ACTIONS(1), [anon_sym_SQUOTE] = ACTIONS(1), [anon_sym_DQUOTE] = ACTIONS(1), @@ -808,1121 +1034,1375 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__dedent] = ACTIONS(1), }, [1] = { - [sym_source_file] = STATE(105), - [sym_tag] = STATE(10), - [sym_comment] = STATE(10), - [aux_sym_source_file_repeat1] = STATE(10), + [sym_source_file] = STATE(116), + [sym_doctype] = STATE(4), + [sym_tag] = STATE(4), + [sym_comment] = STATE(4), + [aux_sym_source_file_repeat1] = STATE(4), [ts_builtin_sym_end] = ACTIONS(3), - [anon_sym_SLASH_SLASH] = ACTIONS(5), - [sym_tag_name] = ACTIONS(7), - [sym_class] = ACTIONS(7), - [sym_id] = ACTIONS(7), + [anon_sym_doctype] = ACTIONS(5), + [anon_sym_SLASH_SLASH] = ACTIONS(7), + [sym_tag_name] = ACTIONS(9), + [sym_class] = ACTIONS(11), + [sym_id] = ACTIONS(11), }, }; static const uint16_t ts_small_parse_table[] = { - [0] = 4, - ACTIONS(9), 1, - anon_sym_PIPE, + [0] = 9, ACTIONS(13), 1, - sym__dedent, - ACTIONS(11), 3, - sym_tag_name, - sym_class, - sym_id, - STATE(3), 4, - sym_pipe_content, - sym_tag, - sym__children_choice, - aux_sym_children_repeat1, - [18] = 4, + anon_sym_COLON, ACTIONS(15), 1, - anon_sym_PIPE, - ACTIONS(21), 1, - sym__dedent, - ACTIONS(18), 3, - sym_tag_name, - sym_class, - sym_id, - STATE(3), 4, - sym_pipe_content, - sym_tag, - sym__children_choice, - aux_sym_children_repeat1, - [36] = 4, - ACTIONS(9), 1, - anon_sym_PIPE, + anon_sym_, + ACTIONS(17), 1, + anon_sym_DOT, + ACTIONS(19), 1, + anon_sym_LPAREN, ACTIONS(23), 1, - sym__dedent, - ACTIONS(11), 3, - sym_tag_name, + sym__newline, + STATE(6), 1, + aux_sym_tag_repeat1, + STATE(27), 1, + sym__content_after_dot, + STATE(53), 1, + sym_attributes, + ACTIONS(21), 2, sym_class, sym_id, - STATE(3), 4, - sym_pipe_content, - sym_tag, - sym__children_choice, - aux_sym_children_repeat1, - [54] = 4, + [29] = 9, + ACTIONS(19), 1, + anon_sym_LPAREN, ACTIONS(25), 1, - ts_builtin_sym_end, + anon_sym_COLON, ACTIONS(27), 1, + anon_sym_, + ACTIONS(29), 1, + anon_sym_DOT, + ACTIONS(33), 1, + sym__newline, + STATE(14), 1, + aux_sym_tag_repeat1, + STATE(44), 1, + sym_attributes, + STATE(55), 1, + sym__content_after_dot, + ACTIONS(31), 2, + sym_class, + sym_id, + [58] = 6, + ACTIONS(5), 1, + anon_sym_doctype, + ACTIONS(7), 1, anon_sym_SLASH_SLASH, - ACTIONS(30), 3, + ACTIONS(9), 1, sym_tag_name, + ACTIONS(35), 1, + ts_builtin_sym_end, + ACTIONS(11), 2, sym_class, sym_id, - STATE(5), 3, + STATE(7), 4, + sym_doctype, sym_tag, sym_comment, aux_sym_source_file_repeat1, - [71] = 7, - ACTIONS(33), 1, + [81] = 9, + ACTIONS(19), 1, + anon_sym_LPAREN, + ACTIONS(29), 1, + anon_sym_DOT, + ACTIONS(37), 1, anon_sym_COLON, - ACTIONS(35), 1, + ACTIONS(39), 1, anon_sym_, - ACTIONS(37), 1, - anon_sym_LPAREN, - ACTIONS(41), 1, + ACTIONS(43), 1, sym__newline, - STATE(21), 1, + STATE(3), 1, aux_sym_tag_repeat1, - STATE(90), 1, + STATE(45), 1, sym_attributes, - ACTIONS(39), 2, + STATE(56), 1, + sym__content_after_dot, + ACTIONS(41), 2, sym_class, sym_id, - [94] = 7, - ACTIONS(37), 1, + [110] = 9, + ACTIONS(17), 1, + anon_sym_DOT, + ACTIONS(19), 1, anon_sym_LPAREN, - ACTIONS(43), 1, - anon_sym_COLON, ACTIONS(45), 1, - anon_sym_, + anon_sym_COLON, ACTIONS(47), 1, - sym__newline, - STATE(21), 1, - aux_sym_tag_repeat1, - STATE(81), 1, - sym_attributes, - ACTIONS(39), 2, - sym_class, - sym_id, - [117] = 7, - ACTIONS(37), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - anon_sym_COLON, - ACTIONS(51), 1, anon_sym_, - ACTIONS(55), 1, + ACTIONS(49), 1, sym__newline, - STATE(6), 1, + STATE(14), 1, aux_sym_tag_repeat1, - STATE(88), 1, + STATE(38), 1, + sym__content_after_dot, + STATE(42), 1, sym_attributes, - ACTIONS(53), 2, + ACTIONS(31), 2, sym_class, sym_id, - [140] = 7, - ACTIONS(37), 1, - anon_sym_LPAREN, - ACTIONS(57), 1, - anon_sym_COLON, + [139] = 6, + ACTIONS(51), 1, + ts_builtin_sym_end, + ACTIONS(53), 1, + anon_sym_doctype, + ACTIONS(56), 1, + anon_sym_SLASH_SLASH, ACTIONS(59), 1, - anon_sym_, - ACTIONS(63), 1, - sym__newline, - STATE(7), 1, - aux_sym_tag_repeat1, - STATE(89), 1, - sym_attributes, - ACTIONS(61), 2, + sym_tag_name, + ACTIONS(62), 2, sym_class, sym_id, - [163] = 4, - ACTIONS(5), 1, - anon_sym_SLASH_SLASH, + STATE(7), 4, + sym_doctype, + sym_tag, + sym_comment, + aux_sym_source_file_repeat1, + [162] = 4, ACTIONS(65), 1, - ts_builtin_sym_end, - ACTIONS(7), 3, + anon_sym_PIPE, + ACTIONS(69), 1, + sym__dedent, + ACTIONS(67), 3, sym_tag_name, sym_class, sym_id, - STATE(5), 3, + STATE(9), 4, + sym_pipe_content, sym_tag, - sym_comment, - aux_sym_source_file_repeat1, - [180] = 3, - ACTIONS(9), 1, + sym__children_choice, + aux_sym_children_repeat1, + [180] = 4, + ACTIONS(71), 1, anon_sym_PIPE, - ACTIONS(11), 3, + ACTIONS(77), 1, + sym__dedent, + ACTIONS(74), 3, sym_tag_name, sym_class, sym_id, - STATE(2), 4, + STATE(9), 4, sym_pipe_content, sym_tag, sym__children_choice, aux_sym_children_repeat1, - [195] = 3, - ACTIONS(9), 1, + [198] = 4, + ACTIONS(65), 1, anon_sym_PIPE, - ACTIONS(11), 3, + ACTIONS(79), 1, + sym__dedent, + ACTIONS(67), 3, sym_tag_name, sym_class, sym_id, - STATE(4), 4, + STATE(9), 4, sym_pipe_content, sym_tag, sym__children_choice, aux_sym_children_repeat1, - [210] = 3, - ACTIONS(69), 1, + [216] = 3, + ACTIONS(65), 1, + anon_sym_PIPE, + ACTIONS(67), 3, + sym_tag_name, + sym_class, + sym_id, + STATE(10), 4, + sym_pipe_content, + sym_tag, + sym__children_choice, + aux_sym_children_repeat1, + [231] = 3, + ACTIONS(65), 1, + anon_sym_PIPE, + ACTIONS(67), 3, + sym_tag_name, + sym_class, + sym_id, + STATE(8), 4, + sym_pipe_content, + sym_tag, + sym__children_choice, + aux_sym_children_repeat1, + [246] = 4, + ACTIONS(85), 1, sym__indent, - STATE(29), 1, + STATE(30), 1, sym_children, - ACTIONS(67), 5, + ACTIONS(83), 2, + anon_sym_doctype, + sym_tag_name, + ACTIONS(81), 4, ts_builtin_sym_end, anon_sym_SLASH_SLASH, + sym_class, + sym_id, + [263] = 4, + STATE(14), 1, + aux_sym_tag_repeat1, + ACTIONS(89), 2, + sym__newline, + anon_sym_, + ACTIONS(91), 2, + sym_class, + sym_id, + ACTIONS(87), 3, + anon_sym_COLON, + anon_sym_DOT, + anon_sym_LPAREN, + [280] = 4, + ACTIONS(85), 1, + sym__indent, + STATE(38), 1, + sym_children, + ACTIONS(96), 2, + anon_sym_doctype, sym_tag_name, + ACTIONS(94), 4, + ts_builtin_sym_end, + anon_sym_SLASH_SLASH, sym_class, sym_id, - [224] = 3, - ACTIONS(73), 1, + [297] = 4, + ACTIONS(85), 1, sym__indent, - STATE(35), 1, + STATE(40), 1, sym_children, - ACTIONS(71), 5, - sym__dedent, - anon_sym_PIPE, + ACTIONS(100), 2, + anon_sym_doctype, sym_tag_name, + ACTIONS(98), 4, + ts_builtin_sym_end, + anon_sym_SLASH_SLASH, sym_class, sym_id, - [238] = 3, - ACTIONS(73), 1, + [314] = 4, + ACTIONS(85), 1, sym__indent, - STATE(37), 1, + STATE(34), 1, sym_children, - ACTIONS(75), 5, - sym__dedent, - anon_sym_PIPE, + ACTIONS(104), 2, + anon_sym_doctype, sym_tag_name, + ACTIONS(102), 4, + ts_builtin_sym_end, + anon_sym_SLASH_SLASH, sym_class, sym_id, - [252] = 3, - ACTIONS(69), 1, + [331] = 4, + ACTIONS(85), 1, sym__indent, - STATE(38), 1, + STATE(31), 1, sym_children, - ACTIONS(77), 5, + ACTIONS(108), 2, + anon_sym_doctype, + sym_tag_name, + ACTIONS(106), 4, ts_builtin_sym_end, anon_sym_SLASH_SLASH, + sym_class, + sym_id, + [348] = 3, + ACTIONS(114), 1, + sym__indent, + ACTIONS(112), 2, + anon_sym_doctype, sym_tag_name, + ACTIONS(110), 4, + ts_builtin_sym_end, + anon_sym_SLASH_SLASH, sym_class, sym_id, - [266] = 3, - ACTIONS(73), 1, + [362] = 3, + ACTIONS(116), 1, sym__indent, - STATE(39), 1, + STATE(51), 1, sym_children, - ACTIONS(77), 5, + ACTIONS(98), 5, sym__dedent, anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [280] = 3, - ACTIONS(69), 1, + [376] = 3, + ACTIONS(122), 1, sym__indent, - STATE(40), 1, - sym_children, - ACTIONS(79), 5, + ACTIONS(120), 2, + anon_sym_doctype, + sym_tag_name, + ACTIONS(118), 4, ts_builtin_sym_end, anon_sym_SLASH_SLASH, - sym_tag_name, sym_class, sym_id, - [294] = 3, - ACTIONS(73), 1, + [390] = 3, + ACTIONS(116), 1, sym__indent, - STATE(33), 1, + STATE(46), 1, sym_children, - ACTIONS(67), 5, + ACTIONS(106), 5, sym__dedent, anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [308] = 3, - ACTIONS(73), 1, + [404] = 3, + ACTIONS(116), 1, sym__indent, - STATE(31), 1, + STATE(47), 1, sym_children, - ACTIONS(79), 5, + ACTIONS(102), 5, sym__dedent, anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [322] = 4, - STATE(21), 1, - aux_sym_tag_repeat1, - ACTIONS(81), 2, - anon_sym_COLON, - anon_sym_LPAREN, - ACTIONS(83), 2, - sym__newline, - anon_sym_, - ACTIONS(85), 2, - sym_class, - sym_id, - [338] = 3, - ACTIONS(69), 1, + [418] = 3, + ACTIONS(116), 1, sym__indent, - STATE(47), 1, + STATE(49), 1, sym_children, - ACTIONS(75), 5, - ts_builtin_sym_end, - anon_sym_SLASH_SLASH, + ACTIONS(81), 5, + sym__dedent, + anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [352] = 3, - ACTIONS(69), 1, + [432] = 3, + ACTIONS(116), 1, sym__indent, - STATE(48), 1, + STATE(55), 1, sym_children, - ACTIONS(71), 5, - ts_builtin_sym_end, - anon_sym_SLASH_SLASH, + ACTIONS(94), 5, + sym__dedent, + anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [366] = 2, - ACTIONS(90), 1, - sym__indent, - ACTIONS(88), 5, + [446] = 2, + ACTIONS(126), 2, + anon_sym_doctype, + sym_tag_name, + ACTIONS(124), 4, ts_builtin_sym_end, anon_sym_SLASH_SLASH, - sym_tag_name, sym_class, sym_id, - [377] = 2, - ACTIONS(94), 1, - sym__indent, - ACTIONS(92), 5, + [457] = 2, + ACTIONS(96), 2, + anon_sym_doctype, + sym_tag_name, + ACTIONS(94), 4, ts_builtin_sym_end, anon_sym_SLASH_SLASH, - sym_tag_name, sym_class, sym_id, - [388] = 4, - ACTIONS(96), 1, + [468] = 4, + ACTIONS(128), 1, anon_sym_, - ACTIONS(100), 1, + ACTIONS(130), 1, anon_sym_DOT, - STATE(26), 1, + STATE(28), 1, aux_sym_attribute_repeat1, - ACTIONS(98), 3, + ACTIONS(133), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_EQ, - [403] = 5, - ACTIONS(103), 1, + [483] = 5, + ACTIONS(135), 1, anon_sym_, - ACTIONS(107), 1, - anon_sym_DOT, - ACTIONS(109), 1, - anon_sym_EQ, - STATE(28), 1, - aux_sym_attribute_repeat1, - ACTIONS(105), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - [420] = 5, - ACTIONS(107), 1, + ACTIONS(137), 1, anon_sym_DOT, - ACTIONS(111), 1, - anon_sym_, - ACTIONS(115), 1, + ACTIONS(141), 1, anon_sym_EQ, - STATE(26), 1, + STATE(39), 1, aux_sym_attribute_repeat1, - ACTIONS(113), 2, + ACTIONS(139), 2, anon_sym_COMMA, anon_sym_RPAREN, - [437] = 1, - ACTIONS(79), 5, + [500] = 2, + ACTIONS(104), 2, + anon_sym_doctype, + sym_tag_name, + ACTIONS(102), 4, ts_builtin_sym_end, anon_sym_SLASH_SLASH, + sym_class, + sym_id, + [511] = 2, + ACTIONS(145), 2, + anon_sym_doctype, sym_tag_name, + ACTIONS(143), 4, + ts_builtin_sym_end, + anon_sym_SLASH_SLASH, sym_class, sym_id, - [445] = 1, - ACTIONS(117), 5, - sym__dedent, - anon_sym_PIPE, + [522] = 2, + ACTIONS(149), 2, + anon_sym_doctype, sym_tag_name, + ACTIONS(147), 4, + ts_builtin_sym_end, + anon_sym_SLASH_SLASH, sym_class, sym_id, - [453] = 1, - ACTIONS(119), 5, - sym__dedent, - anon_sym_PIPE, + [533] = 2, + ACTIONS(153), 2, + anon_sym_doctype, sym_tag_name, + ACTIONS(151), 4, + ts_builtin_sym_end, + anon_sym_SLASH_SLASH, sym_class, sym_id, - [461] = 5, - ACTIONS(121), 1, - anon_sym_RPAREN, - ACTIONS(123), 1, - aux_sym_attribute_token1, - STATE(27), 1, - sym_attribute_name, - STATE(49), 1, - aux_sym_attributes_repeat1, - STATE(87), 1, - sym_attribute, - [477] = 1, - ACTIONS(79), 5, - sym__dedent, - anon_sym_PIPE, + [544] = 2, + ACTIONS(108), 2, + anon_sym_doctype, sym_tag_name, + ACTIONS(106), 4, + ts_builtin_sym_end, + anon_sym_SLASH_SLASH, sym_class, sym_id, - [485] = 1, - ACTIONS(125), 5, + [555] = 2, + ACTIONS(157), 2, + anon_sym_doctype, + sym_tag_name, + ACTIONS(155), 4, ts_builtin_sym_end, anon_sym_SLASH_SLASH, + sym_class, + sym_id, + [566] = 2, + ACTIONS(161), 2, + anon_sym_doctype, sym_tag_name, + ACTIONS(159), 4, + ts_builtin_sym_end, + anon_sym_SLASH_SLASH, sym_class, sym_id, - [493] = 1, - ACTIONS(67), 5, - sym__dedent, - anon_sym_PIPE, + [577] = 2, + ACTIONS(165), 2, + anon_sym_doctype, + sym_tag_name, + ACTIONS(163), 4, + ts_builtin_sym_end, + anon_sym_SLASH_SLASH, + sym_class, + sym_id, + [588] = 2, + ACTIONS(100), 2, + anon_sym_doctype, sym_tag_name, + ACTIONS(98), 4, + ts_builtin_sym_end, + anon_sym_SLASH_SLASH, sym_class, sym_id, - [501] = 1, - ACTIONS(127), 5, + [599] = 5, + ACTIONS(137), 1, + anon_sym_DOT, + ACTIONS(167), 1, + anon_sym_, + ACTIONS(171), 1, + anon_sym_EQ, + STATE(28), 1, + aux_sym_attribute_repeat1, + ACTIONS(169), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [616] = 2, + ACTIONS(83), 2, + anon_sym_doctype, + sym_tag_name, + ACTIONS(81), 4, + ts_builtin_sym_end, + anon_sym_SLASH_SLASH, + sym_class, + sym_id, + [627] = 1, + ACTIONS(173), 5, sym__dedent, anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [509] = 1, - ACTIONS(71), 5, + [635] = 5, + ACTIONS(17), 1, + anon_sym_DOT, + ACTIONS(175), 1, + anon_sym_COLON, + ACTIONS(177), 1, + anon_sym_, + ACTIONS(179), 1, + sym__newline, + STATE(40), 1, + sym__content_after_dot, + [651] = 5, + ACTIONS(181), 1, + sym_content, + ACTIONS(183), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(185), 1, + sym__dedent, + STATE(57), 1, + aux_sym__content_after_dot_repeat1, + STATE(70), 1, + aux_sym__content_or_javascript, + [667] = 5, + ACTIONS(29), 1, + anon_sym_DOT, + ACTIONS(187), 1, + anon_sym_COLON, + ACTIONS(189), 1, + anon_sym_, + ACTIONS(191), 1, + sym__newline, + STATE(51), 1, + sym__content_after_dot, + [683] = 5, + ACTIONS(25), 1, + anon_sym_COLON, + ACTIONS(27), 1, + anon_sym_, + ACTIONS(29), 1, + anon_sym_DOT, + ACTIONS(33), 1, + sym__newline, + STATE(55), 1, + sym__content_after_dot, + [699] = 1, + ACTIONS(143), 5, sym__dedent, anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [517] = 1, - ACTIONS(75), 5, - ts_builtin_sym_end, - anon_sym_SLASH_SLASH, + [707] = 1, + ACTIONS(106), 5, + sym__dedent, + anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [525] = 1, - ACTIONS(75), 5, + [715] = 1, + ACTIONS(124), 5, sym__dedent, anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [533] = 1, - ACTIONS(119), 5, - ts_builtin_sym_end, - anon_sym_SLASH_SLASH, + [723] = 1, + ACTIONS(102), 5, + sym__dedent, + anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [541] = 1, - ACTIONS(129), 5, + [731] = 1, + ACTIONS(151), 5, sym__dedent, anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [549] = 1, - ACTIONS(131), 5, - ts_builtin_sym_end, - anon_sym_SLASH_SLASH, + [739] = 1, + ACTIONS(81), 5, + sym__dedent, + anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [557] = 2, - ACTIONS(133), 1, - anon_sym_, - ACTIONS(135), 4, - anon_sym_COMMA, + [747] = 5, + ACTIONS(193), 1, anon_sym_RPAREN, + ACTIONS(195), 1, + aux_sym_attribute_token1, + STATE(29), 1, + sym_attribute_name, + STATE(60), 1, + aux_sym_attributes_repeat1, + STATE(91), 1, + sym_attribute, + [763] = 5, + ACTIONS(17), 1, anon_sym_DOT, - anon_sym_EQ, - [567] = 2, - ACTIONS(137), 1, + ACTIONS(45), 1, + anon_sym_COLON, + ACTIONS(47), 1, anon_sym_, - ACTIONS(139), 4, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_DOT, - anon_sym_EQ, - [577] = 1, - ACTIONS(141), 5, - ts_builtin_sym_end, - anon_sym_SLASH_SLASH, - sym_tag_name, - sym_class, - sym_id, - [585] = 5, - ACTIONS(143), 1, + ACTIONS(49), 1, + sym__newline, + STATE(38), 1, + sym__content_after_dot, + [779] = 5, + ACTIONS(197), 1, anon_sym_RPAREN, - ACTIONS(145), 1, + ACTIONS(199), 1, aux_sym_attribute_token1, - STATE(27), 1, + STATE(29), 1, sym_attribute_name, - STATE(46), 1, + STATE(54), 1, aux_sym_attributes_repeat1, - STATE(98), 1, + STATE(110), 1, sym_attribute, - [601] = 1, - ACTIONS(71), 5, - ts_builtin_sym_end, - anon_sym_SLASH_SLASH, + [795] = 1, + ACTIONS(98), 5, + sym__dedent, + anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [609] = 1, - ACTIONS(67), 5, - ts_builtin_sym_end, - anon_sym_SLASH_SLASH, + [803] = 1, + ACTIONS(94), 5, + sym__dedent, + anon_sym_PIPE, + sym_tag_name, + sym_class, + sym_id, + [811] = 5, + ACTIONS(202), 1, + sym_content, + ACTIONS(205), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(208), 1, + sym__dedent, + STATE(57), 1, + aux_sym__content_after_dot_repeat1, + STATE(70), 1, + aux_sym__content_or_javascript, + [827] = 1, + ACTIONS(210), 5, + sym__dedent, + anon_sym_PIPE, sym_tag_name, sym_class, sym_id, - [617] = 5, - ACTIONS(123), 1, + [835] = 2, + ACTIONS(212), 1, + anon_sym_, + ACTIONS(214), 4, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_EQ, + [845] = 5, + ACTIONS(195), 1, aux_sym_attribute_token1, - ACTIONS(148), 1, + ACTIONS(216), 1, anon_sym_RPAREN, - STATE(27), 1, + STATE(29), 1, sym_attribute_name, - STATE(46), 1, + STATE(54), 1, aux_sym_attributes_repeat1, - STATE(77), 1, + STATE(96), 1, sym_attribute, - [633] = 1, - ACTIONS(127), 5, - ts_builtin_sym_end, - anon_sym_SLASH_SLASH, - sym_tag_name, - sym_class, - sym_id, - [641] = 2, - STATE(48), 1, + [861] = 5, + ACTIONS(181), 1, + sym_content, + ACTIONS(183), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(218), 1, + sym__dedent, + STATE(57), 1, + aux_sym__content_after_dot_repeat1, + STATE(70), 1, + aux_sym__content_or_javascript, + [877] = 2, + ACTIONS(220), 1, + anon_sym_, + ACTIONS(222), 4, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_EQ, + [887] = 4, + ACTIONS(183), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(224), 1, + sym_content, + ACTIONS(226), 1, + sym__newline, + STATE(76), 1, + aux_sym__content_or_javascript, + [900] = 2, + STATE(51), 1, sym_tag, - ACTIONS(7), 3, + ACTIONS(67), 3, sym_tag_name, sym_class, sym_id, - [650] = 4, - ACTIONS(150), 1, + [909] = 4, + ACTIONS(181), 1, sym_content, - ACTIONS(152), 1, + ACTIONS(183), 1, anon_sym_LBRACE_LBRACE, - ACTIONS(154), 1, - sym__newline, - STATE(64), 1, + STATE(43), 1, + aux_sym__content_after_dot_repeat1, + STATE(70), 1, aux_sym__content_or_javascript, - [663] = 4, - ACTIONS(150), 1, - sym_content, - ACTIONS(152), 1, + [922] = 4, + ACTIONS(183), 1, anon_sym_LBRACE_LBRACE, - ACTIONS(156), 1, - sym__newline, - STATE(64), 1, - aux_sym__content_or_javascript, - [676] = 4, - ACTIONS(150), 1, + ACTIONS(224), 1, sym_content, - ACTIONS(152), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(158), 1, + ACTIONS(228), 1, sym__newline, - STATE(64), 1, + STATE(76), 1, aux_sym__content_or_javascript, - [689] = 2, - STATE(35), 1, + [935] = 2, + STATE(49), 1, sym_tag, - ACTIONS(11), 3, + ACTIONS(67), 3, sym_tag_name, sym_class, sym_id, - [698] = 4, - ACTIONS(150), 1, - sym_content, - ACTIONS(152), 1, + [944] = 4, + ACTIONS(183), 1, anon_sym_LBRACE_LBRACE, - ACTIONS(160), 1, + ACTIONS(224), 1, + sym_content, + ACTIONS(230), 1, sym__newline, - STATE(64), 1, + STATE(76), 1, aux_sym__content_or_javascript, - [711] = 2, - STATE(37), 1, + [957] = 2, + STATE(40), 1, sym_tag, ACTIONS(11), 3, sym_tag_name, sym_class, sym_id, - [720] = 4, - ACTIONS(150), 1, - sym_content, - ACTIONS(152), 1, + [966] = 4, + ACTIONS(183), 1, anon_sym_LBRACE_LBRACE, - ACTIONS(162), 1, + ACTIONS(224), 1, + sym_content, + ACTIONS(232), 1, sym__newline, - STATE(64), 1, + STATE(76), 1, aux_sym__content_or_javascript, - [733] = 4, - ACTIONS(150), 1, + [979] = 4, + ACTIONS(183), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(234), 1, sym_content, - ACTIONS(152), 1, + ACTIONS(236), 1, + sym__newline, + STATE(63), 1, + aux_sym__content_or_javascript, + [992] = 4, + ACTIONS(183), 1, anon_sym_LBRACE_LBRACE, - ACTIONS(164), 1, + ACTIONS(191), 1, sym__newline, - STATE(64), 1, + ACTIONS(224), 1, + sym_content, + STATE(76), 1, aux_sym__content_or_javascript, - [746] = 2, - STATE(38), 1, + [1005] = 2, + STATE(55), 1, sym_tag, - ACTIONS(7), 3, + ACTIONS(67), 3, sym_tag_name, sym_class, sym_id, - [755] = 2, - STATE(47), 1, - sym_tag, - ACTIONS(7), 3, - sym_tag_name, - sym_class, - sym_id, - [764] = 2, - STATE(39), 1, + [1014] = 2, + STATE(38), 1, sym_tag, ACTIONS(11), 3, sym_tag_name, sym_class, sym_id, - [773] = 4, - ACTIONS(152), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(166), 1, - sym_content, - ACTIONS(168), 1, + [1023] = 2, + ACTIONS(238), 2, + anon_sym_COLON, + anon_sym_DOT, + ACTIONS(240), 2, sym__newline, - STATE(58), 1, - aux_sym__content_or_javascript, - [786] = 4, - ACTIONS(170), 1, + anon_sym_, + [1032] = 4, + ACTIONS(242), 1, sym_content, - ACTIONS(173), 1, + ACTIONS(245), 1, anon_sym_LBRACE_LBRACE, - ACTIONS(176), 1, + ACTIONS(248), 1, sym__newline, - STATE(64), 1, + STATE(76), 1, aux_sym__content_or_javascript, - [799] = 4, - ACTIONS(150), 1, + [1045] = 4, + ACTIONS(181), 1, sym_content, - ACTIONS(152), 1, + ACTIONS(183), 1, + anon_sym_LBRACE_LBRACE, + STATE(61), 1, + aux_sym__content_after_dot_repeat1, + STATE(70), 1, + aux_sym__content_or_javascript, + [1058] = 4, + ACTIONS(183), 1, anon_sym_LBRACE_LBRACE, - ACTIONS(178), 1, + ACTIONS(224), 1, + sym_content, + ACTIONS(250), 1, sym__newline, - STATE(64), 1, + STATE(76), 1, aux_sym__content_or_javascript, - [812] = 2, - ACTIONS(180), 1, + [1071] = 2, + ACTIONS(252), 2, anon_sym_COLON, - ACTIONS(182), 2, + anon_sym_DOT, + ACTIONS(254), 2, sym__newline, anon_sym_, - [820] = 3, - ACTIONS(184), 1, - sym__comment_content, - ACTIONS(186), 1, - sym__dedent, - STATE(75), 1, - aux_sym_comment_repeat1, - [830] = 2, - ACTIONS(188), 1, + [1080] = 4, + ACTIONS(183), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(224), 1, + sym_content, + ACTIONS(256), 1, + sym__newline, + STATE(76), 1, + aux_sym__content_or_javascript, + [1093] = 2, + STATE(30), 1, + sym_tag, + ACTIONS(11), 3, + sym_tag_name, + sym_class, + sym_id, + [1102] = 2, + ACTIONS(258), 2, anon_sym_COLON, - ACTIONS(190), 2, + anon_sym_DOT, + ACTIONS(260), 2, sym__newline, anon_sym_, - [838] = 3, - ACTIONS(152), 1, + [1111] = 4, + ACTIONS(179), 1, + sym__newline, + ACTIONS(183), 1, anon_sym_LBRACE_LBRACE, - ACTIONS(192), 1, + ACTIONS(224), 1, sym_content, - STATE(54), 1, + STATE(76), 1, aux_sym__content_or_javascript, - [848] = 3, - ACTIONS(194), 1, - anon_sym_SQUOTE, - ACTIONS(196), 1, - anon_sym_DQUOTE, - STATE(85), 1, - sym_quoted_attribute_value, - [858] = 3, - ACTIONS(152), 1, + [1124] = 3, + ACTIONS(183), 1, anon_sym_LBRACE_LBRACE, - ACTIONS(198), 1, + ACTIONS(262), 1, sym_content, - STATE(56), 1, + STATE(80), 1, aux_sym__content_or_javascript, - [868] = 2, - ACTIONS(200), 1, - anon_sym_COLON, - ACTIONS(202), 2, - sym__newline, - anon_sym_, - [876] = 2, - ACTIONS(204), 1, + [1134] = 3, + ACTIONS(183), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(264), 1, + sym_content, + STATE(83), 1, + aux_sym__content_or_javascript, + [1144] = 3, + ACTIONS(183), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(266), 1, + sym_content, + STATE(66), 1, + aux_sym__content_or_javascript, + [1154] = 2, + ACTIONS(268), 1, anon_sym_, - ACTIONS(206), 2, + ACTIONS(270), 2, anon_sym_COMMA, anon_sym_RPAREN, - [884] = 3, - ACTIONS(152), 1, + [1162] = 1, + ACTIONS(272), 3, + anon_sym_html, + anon_sym_strict, + anon_sym_xml, + [1168] = 3, + ACTIONS(183), 1, anon_sym_LBRACE_LBRACE, - ACTIONS(208), 1, + ACTIONS(274), 1, sym_content, - STATE(59), 1, + STATE(68), 1, aux_sym__content_or_javascript, - [894] = 3, - ACTIONS(210), 1, - sym__comment_content, - ACTIONS(213), 1, - sym__dedent, - STATE(75), 1, - aux_sym_comment_repeat1, - [904] = 2, - ACTIONS(215), 1, + [1178] = 2, + ACTIONS(276), 1, anon_sym_, - ACTIONS(217), 2, + ACTIONS(278), 2, anon_sym_COMMA, anon_sym_RPAREN, - [912] = 3, - ACTIONS(219), 1, + [1186] = 3, + ACTIONS(280), 1, anon_sym_, - ACTIONS(221), 1, + ACTIONS(282), 1, anon_sym_COMMA, - ACTIONS(223), 1, + ACTIONS(284), 1, anon_sym_RPAREN, - [922] = 3, - ACTIONS(152), 1, + [1196] = 3, + ACTIONS(286), 1, + sym__comment_content, + ACTIONS(288), 1, + sym__dedent, + STATE(99), 1, + aux_sym_comment_repeat1, + [1206] = 3, + ACTIONS(183), 1, anon_sym_LBRACE_LBRACE, - ACTIONS(225), 1, + ACTIONS(290), 1, sym_content, - STATE(52), 1, + STATE(78), 1, aux_sym__content_or_javascript, - [932] = 2, - ACTIONS(227), 1, - anon_sym_, - ACTIONS(229), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - [940] = 3, - ACTIONS(184), 1, + [1216] = 2, + ACTIONS(292), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(208), 2, + sym__dedent, + sym_content, + [1224] = 3, + ACTIONS(294), 1, sym__comment_content, - ACTIONS(231), 1, + ACTIONS(297), 1, sym__dedent, - STATE(75), 1, + STATE(95), 1, aux_sym_comment_repeat1, - [950] = 3, - ACTIONS(164), 1, - sym__newline, - ACTIONS(233), 1, - anon_sym_COLON, - ACTIONS(235), 1, + [1234] = 3, + ACTIONS(280), 1, anon_sym_, - [960] = 3, - ACTIONS(194), 1, + ACTIONS(282), 1, + anon_sym_COMMA, + ACTIONS(299), 1, + anon_sym_RPAREN, + [1244] = 3, + ACTIONS(301), 1, anon_sym_SQUOTE, - ACTIONS(196), 1, + ACTIONS(303), 1, anon_sym_DQUOTE, - STATE(76), 1, + STATE(104), 1, sym_quoted_attribute_value, - [970] = 2, - ACTIONS(239), 1, + [1254] = 3, + ACTIONS(183), 1, anon_sym_LBRACE_LBRACE, - ACTIONS(237), 2, - sym__newline, + ACTIONS(305), 1, sym_content, - [978] = 3, - ACTIONS(184), 1, + STATE(72), 1, + aux_sym__content_or_javascript, + [1264] = 3, + ACTIONS(286), 1, sym__comment_content, - ACTIONS(241), 1, + ACTIONS(307), 1, sym__dedent, - STATE(67), 1, + STATE(95), 1, aux_sym_comment_repeat1, - [988] = 2, - ACTIONS(243), 1, + [1274] = 3, + ACTIONS(286), 1, + sym__comment_content, + ACTIONS(307), 1, + sym__dedent, + STATE(103), 1, + aux_sym_comment_repeat1, + [1284] = 2, + ACTIONS(309), 1, anon_sym_, - ACTIONS(245), 2, + ACTIONS(311), 2, anon_sym_COMMA, anon_sym_RPAREN, - [996] = 3, - ACTIONS(184), 1, + [1292] = 2, + ACTIONS(315), 1, + anon_sym_LBRACE_LBRACE, + ACTIONS(313), 2, + sym__newline, + sym_content, + [1300] = 3, + ACTIONS(286), 1, sym__comment_content, - ACTIONS(186), 1, + ACTIONS(317), 1, sym__dedent, - STATE(80), 1, + STATE(95), 1, aux_sym_comment_repeat1, - [1006] = 3, - ACTIONS(219), 1, + [1310] = 2, + ACTIONS(319), 1, anon_sym_, - ACTIONS(221), 1, + ACTIONS(321), 2, anon_sym_COMMA, - ACTIONS(247), 1, anon_sym_RPAREN, - [1016] = 3, - ACTIONS(33), 1, - anon_sym_COLON, - ACTIONS(35), 1, - anon_sym_, - ACTIONS(41), 1, - sym__newline, - [1026] = 3, - ACTIONS(43), 1, - anon_sym_COLON, - ACTIONS(45), 1, - anon_sym_, - ACTIONS(47), 1, - sym__newline, - [1036] = 3, - ACTIONS(178), 1, - sym__newline, - ACTIONS(249), 1, - anon_sym_COLON, - ACTIONS(251), 1, - anon_sym_, - [1046] = 3, - ACTIONS(152), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(253), 1, - sym_content, - STATE(53), 1, - aux_sym__content_or_javascript, - [1056] = 3, - ACTIONS(152), 1, - anon_sym_LBRACE_LBRACE, - ACTIONS(255), 1, - sym_content, - STATE(65), 1, - aux_sym__content_or_javascript, - [1066] = 2, - ACTIONS(257), 1, + [1318] = 3, + ACTIONS(301), 1, + anon_sym_SQUOTE, + ACTIONS(303), 1, + anon_sym_DQUOTE, + STATE(87), 1, + sym_quoted_attribute_value, + [1328] = 2, + ACTIONS(323), 1, anon_sym_DQUOTE, - ACTIONS(259), 1, + ACTIONS(325), 1, aux_sym_quoted_attribute_value_token2, - [1073] = 2, - ACTIONS(257), 1, + [1335] = 2, + ACTIONS(323), 1, anon_sym_SQUOTE, - ACTIONS(261), 1, + ACTIONS(327), 1, aux_sym_quoted_attribute_value_token1, - [1080] = 2, - ACTIONS(263), 1, + [1342] = 2, + ACTIONS(329), 1, sym__comment_content, - ACTIONS(265), 1, + ACTIONS(331), 1, sym__newline, - [1087] = 1, - ACTIONS(143), 2, + [1349] = 1, + ACTIONS(197), 2, anon_sym_RPAREN, aux_sym_attribute_token1, - [1092] = 1, - ACTIONS(213), 2, - sym__dedent, - sym__comment_content, - [1097] = 2, - ACTIONS(219), 1, + [1354] = 2, + ACTIONS(280), 1, anon_sym_, - ACTIONS(221), 1, + ACTIONS(282), 1, anon_sym_COMMA, - [1104] = 1, - ACTIONS(267), 1, - sym__newline, - [1108] = 1, - ACTIONS(269), 1, + [1361] = 1, + ACTIONS(297), 2, + sym__dedent, + sym__comment_content, + [1366] = 1, + ACTIONS(333), 1, + aux_sym_attribute_token1, + [1370] = 1, + ACTIONS(335), 1, anon_sym_RBRACE_RBRACE, - [1112] = 1, - ACTIONS(271), 1, - sym_javascript, - [1116] = 1, - ACTIONS(273), 1, + [1374] = 1, + ACTIONS(337), 1, sym__newline, - [1120] = 1, - ACTIONS(275), 1, - anon_sym_DQUOTE, - [1124] = 1, - ACTIONS(275), 1, + [1378] = 1, + ACTIONS(339), 1, anon_sym_SQUOTE, - [1128] = 1, - ACTIONS(277), 1, + [1382] = 1, + ACTIONS(341), 1, ts_builtin_sym_end, - [1132] = 1, - ACTIONS(279), 1, - aux_sym_attribute_token1, + [1386] = 1, + ACTIONS(343), 1, + sym__newline, + [1390] = 1, + ACTIONS(345), 1, + sym__newline, + [1394] = 1, + ACTIONS(347), 1, + sym_javascript, + [1398] = 1, + ACTIONS(349), 1, + sym__indent, + [1402] = 1, + ACTIONS(339), 1, + anon_sym_DQUOTE, + [1406] = 1, + ACTIONS(351), 1, + sym__indent, + [1410] = 1, + ACTIONS(353), 1, + sym__newline, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(2)] = 0, - [SMALL_STATE(3)] = 18, - [SMALL_STATE(4)] = 36, - [SMALL_STATE(5)] = 54, - [SMALL_STATE(6)] = 71, - [SMALL_STATE(7)] = 94, - [SMALL_STATE(8)] = 117, - [SMALL_STATE(9)] = 140, - [SMALL_STATE(10)] = 163, - [SMALL_STATE(11)] = 180, - [SMALL_STATE(12)] = 195, - [SMALL_STATE(13)] = 210, - [SMALL_STATE(14)] = 224, - [SMALL_STATE(15)] = 238, - [SMALL_STATE(16)] = 252, - [SMALL_STATE(17)] = 266, - [SMALL_STATE(18)] = 280, - [SMALL_STATE(19)] = 294, - [SMALL_STATE(20)] = 308, - [SMALL_STATE(21)] = 322, - [SMALL_STATE(22)] = 338, - [SMALL_STATE(23)] = 352, - [SMALL_STATE(24)] = 366, - [SMALL_STATE(25)] = 377, - [SMALL_STATE(26)] = 388, - [SMALL_STATE(27)] = 403, - [SMALL_STATE(28)] = 420, - [SMALL_STATE(29)] = 437, - [SMALL_STATE(30)] = 445, - [SMALL_STATE(31)] = 453, - [SMALL_STATE(32)] = 461, - [SMALL_STATE(33)] = 477, - [SMALL_STATE(34)] = 485, - [SMALL_STATE(35)] = 493, - [SMALL_STATE(36)] = 501, - [SMALL_STATE(37)] = 509, - [SMALL_STATE(38)] = 517, - [SMALL_STATE(39)] = 525, - [SMALL_STATE(40)] = 533, - [SMALL_STATE(41)] = 541, - [SMALL_STATE(42)] = 549, - [SMALL_STATE(43)] = 557, - [SMALL_STATE(44)] = 567, - [SMALL_STATE(45)] = 577, - [SMALL_STATE(46)] = 585, - [SMALL_STATE(47)] = 601, - [SMALL_STATE(48)] = 609, - [SMALL_STATE(49)] = 617, - [SMALL_STATE(50)] = 633, - [SMALL_STATE(51)] = 641, - [SMALL_STATE(52)] = 650, - [SMALL_STATE(53)] = 663, - [SMALL_STATE(54)] = 676, - [SMALL_STATE(55)] = 689, - [SMALL_STATE(56)] = 698, - [SMALL_STATE(57)] = 711, - [SMALL_STATE(58)] = 720, - [SMALL_STATE(59)] = 733, - [SMALL_STATE(60)] = 746, - [SMALL_STATE(61)] = 755, - [SMALL_STATE(62)] = 764, - [SMALL_STATE(63)] = 773, - [SMALL_STATE(64)] = 786, - [SMALL_STATE(65)] = 799, - [SMALL_STATE(66)] = 812, - [SMALL_STATE(67)] = 820, - [SMALL_STATE(68)] = 830, - [SMALL_STATE(69)] = 838, - [SMALL_STATE(70)] = 848, - [SMALL_STATE(71)] = 858, - [SMALL_STATE(72)] = 868, - [SMALL_STATE(73)] = 876, - [SMALL_STATE(74)] = 884, - [SMALL_STATE(75)] = 894, - [SMALL_STATE(76)] = 904, - [SMALL_STATE(77)] = 912, - [SMALL_STATE(78)] = 922, - [SMALL_STATE(79)] = 932, - [SMALL_STATE(80)] = 940, - [SMALL_STATE(81)] = 950, - [SMALL_STATE(82)] = 960, - [SMALL_STATE(83)] = 970, - [SMALL_STATE(84)] = 978, - [SMALL_STATE(85)] = 988, - [SMALL_STATE(86)] = 996, - [SMALL_STATE(87)] = 1006, - [SMALL_STATE(88)] = 1016, - [SMALL_STATE(89)] = 1026, - [SMALL_STATE(90)] = 1036, - [SMALL_STATE(91)] = 1046, - [SMALL_STATE(92)] = 1056, - [SMALL_STATE(93)] = 1066, - [SMALL_STATE(94)] = 1073, - [SMALL_STATE(95)] = 1080, - [SMALL_STATE(96)] = 1087, - [SMALL_STATE(97)] = 1092, - [SMALL_STATE(98)] = 1097, - [SMALL_STATE(99)] = 1104, - [SMALL_STATE(100)] = 1108, - [SMALL_STATE(101)] = 1112, - [SMALL_STATE(102)] = 1116, - [SMALL_STATE(103)] = 1120, - [SMALL_STATE(104)] = 1124, - [SMALL_STATE(105)] = 1128, - [SMALL_STATE(106)] = 1132, + [SMALL_STATE(3)] = 29, + [SMALL_STATE(4)] = 58, + [SMALL_STATE(5)] = 81, + [SMALL_STATE(6)] = 110, + [SMALL_STATE(7)] = 139, + [SMALL_STATE(8)] = 162, + [SMALL_STATE(9)] = 180, + [SMALL_STATE(10)] = 198, + [SMALL_STATE(11)] = 216, + [SMALL_STATE(12)] = 231, + [SMALL_STATE(13)] = 246, + [SMALL_STATE(14)] = 263, + [SMALL_STATE(15)] = 280, + [SMALL_STATE(16)] = 297, + [SMALL_STATE(17)] = 314, + [SMALL_STATE(18)] = 331, + [SMALL_STATE(19)] = 348, + [SMALL_STATE(20)] = 362, + [SMALL_STATE(21)] = 376, + [SMALL_STATE(22)] = 390, + [SMALL_STATE(23)] = 404, + [SMALL_STATE(24)] = 418, + [SMALL_STATE(25)] = 432, + [SMALL_STATE(26)] = 446, + [SMALL_STATE(27)] = 457, + [SMALL_STATE(28)] = 468, + [SMALL_STATE(29)] = 483, + [SMALL_STATE(30)] = 500, + [SMALL_STATE(31)] = 511, + [SMALL_STATE(32)] = 522, + [SMALL_STATE(33)] = 533, + [SMALL_STATE(34)] = 544, + [SMALL_STATE(35)] = 555, + [SMALL_STATE(36)] = 566, + [SMALL_STATE(37)] = 577, + [SMALL_STATE(38)] = 588, + [SMALL_STATE(39)] = 599, + [SMALL_STATE(40)] = 616, + [SMALL_STATE(41)] = 627, + [SMALL_STATE(42)] = 635, + [SMALL_STATE(43)] = 651, + [SMALL_STATE(44)] = 667, + [SMALL_STATE(45)] = 683, + [SMALL_STATE(46)] = 699, + [SMALL_STATE(47)] = 707, + [SMALL_STATE(48)] = 715, + [SMALL_STATE(49)] = 723, + [SMALL_STATE(50)] = 731, + [SMALL_STATE(51)] = 739, + [SMALL_STATE(52)] = 747, + [SMALL_STATE(53)] = 763, + [SMALL_STATE(54)] = 779, + [SMALL_STATE(55)] = 795, + [SMALL_STATE(56)] = 803, + [SMALL_STATE(57)] = 811, + [SMALL_STATE(58)] = 827, + [SMALL_STATE(59)] = 835, + [SMALL_STATE(60)] = 845, + [SMALL_STATE(61)] = 861, + [SMALL_STATE(62)] = 877, + [SMALL_STATE(63)] = 887, + [SMALL_STATE(64)] = 900, + [SMALL_STATE(65)] = 909, + [SMALL_STATE(66)] = 922, + [SMALL_STATE(67)] = 935, + [SMALL_STATE(68)] = 944, + [SMALL_STATE(69)] = 957, + [SMALL_STATE(70)] = 966, + [SMALL_STATE(71)] = 979, + [SMALL_STATE(72)] = 992, + [SMALL_STATE(73)] = 1005, + [SMALL_STATE(74)] = 1014, + [SMALL_STATE(75)] = 1023, + [SMALL_STATE(76)] = 1032, + [SMALL_STATE(77)] = 1045, + [SMALL_STATE(78)] = 1058, + [SMALL_STATE(79)] = 1071, + [SMALL_STATE(80)] = 1080, + [SMALL_STATE(81)] = 1093, + [SMALL_STATE(82)] = 1102, + [SMALL_STATE(83)] = 1111, + [SMALL_STATE(84)] = 1124, + [SMALL_STATE(85)] = 1134, + [SMALL_STATE(86)] = 1144, + [SMALL_STATE(87)] = 1154, + [SMALL_STATE(88)] = 1162, + [SMALL_STATE(89)] = 1168, + [SMALL_STATE(90)] = 1178, + [SMALL_STATE(91)] = 1186, + [SMALL_STATE(92)] = 1196, + [SMALL_STATE(93)] = 1206, + [SMALL_STATE(94)] = 1216, + [SMALL_STATE(95)] = 1224, + [SMALL_STATE(96)] = 1234, + [SMALL_STATE(97)] = 1244, + [SMALL_STATE(98)] = 1254, + [SMALL_STATE(99)] = 1264, + [SMALL_STATE(100)] = 1274, + [SMALL_STATE(101)] = 1284, + [SMALL_STATE(102)] = 1292, + [SMALL_STATE(103)] = 1300, + [SMALL_STATE(104)] = 1310, + [SMALL_STATE(105)] = 1318, + [SMALL_STATE(106)] = 1328, + [SMALL_STATE(107)] = 1335, + [SMALL_STATE(108)] = 1342, + [SMALL_STATE(109)] = 1349, + [SMALL_STATE(110)] = 1354, + [SMALL_STATE(111)] = 1361, + [SMALL_STATE(112)] = 1366, + [SMALL_STATE(113)] = 1370, + [SMALL_STATE(114)] = 1374, + [SMALL_STATE(115)] = 1378, + [SMALL_STATE(116)] = 1382, + [SMALL_STATE(117)] = 1386, + [SMALL_STATE(118)] = 1390, + [SMALL_STATE(119)] = 1394, + [SMALL_STATE(120)] = 1398, + [SMALL_STATE(121)] = 1402, + [SMALL_STATE(122)] = 1406, + [SMALL_STATE(123)] = 1410, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0), - [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [15] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_children_repeat1, 2), SHIFT_REPEAT(63), - [18] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_children_repeat1, 2), SHIFT_REPEAT(9), - [21] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_children_repeat1, 2), - [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [25] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), - [27] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(95), - [30] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(8), - [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(61), - [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32), - [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(21), - [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(57), - [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(60), - [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6), - [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(62), - [59] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7), - [63] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [65] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [67] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag, 5), - [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [71] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag, 4), - [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [75] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag, 3), - [77] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag, 2), - [79] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag, 6), - [81] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_tag_repeat1, 2), - [83] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tag_repeat1, 2), - [85] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tag_repeat1, 2), SHIFT_REPEAT(21), - [88] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 3), - [90] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [92] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2), - [94] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [96] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_repeat1, 2), - [98] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_attribute_repeat1, 2), - [100] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_attribute_repeat1, 2), SHIFT_REPEAT(106), - [103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 1), - [105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 1), - [107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(106), - [109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(70), - [111] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 2), - [113] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 2), - [115] = {.entry = {.count = 1, .reusable = false}}, SHIFT(82), - [117] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pipe_content, 2), - [119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag, 7), - [121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), - [123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 4), - [127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_children, 3), - [129] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pipe_content, 3), - [131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 6), - [133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_name, 1), - [135] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_name, 1), - [137] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_repeat1, 2, .production_id = 1), - [139] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_attribute_repeat1, 2, .production_id = 1), - [141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 5), - [143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attributes_repeat1, 2), - [145] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attributes_repeat1, 2), SHIFT_REPEAT(43), - [148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [152] = {.entry = {.count = 1, .reusable = false}}, SHIFT(101), - [154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [170] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__content_or_javascript, 2), SHIFT_REPEAT(64), - [173] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__content_or_javascript, 2), SHIFT_REPEAT(101), - [176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__content_or_javascript, 2), - [178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [180] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attributes, 2), - [182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attributes, 2), - [184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [188] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attributes, 4), - [190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attributes, 4), - [192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [200] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attributes, 3), - [202] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attributes, 3), - [204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_quoted_attribute_value, 2), - [206] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_quoted_attribute_value, 2), - [208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [210] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comment_repeat1, 2), SHIFT_REPEAT(99), - [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comment_repeat1, 2), - [215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 4), - [217] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 4), - [219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [221] = {.entry = {.count = 1, .reusable = false}}, SHIFT(96), - [223] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68), - [225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_quoted_attribute_value, 3), - [229] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_quoted_attribute_value, 3), - [231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [233] = {.entry = {.count = 1, .reusable = false}}, SHIFT(55), - [235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__content_or_javascript, 3), - [239] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__content_or_javascript, 3), - [241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3), - [245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3), - [247] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), - [249] = {.entry = {.count = 1, .reusable = false}}, SHIFT(51), - [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [257] = {.entry = {.count = 1, .reusable = false}}, SHIFT(73), - [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [277] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [5] = {.entry = {.count = 1, .reusable = false}}, SHIFT(88), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(74), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(117), + [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(52), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(64), + [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(123), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(14), + [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [35] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(73), + [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3), + [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(69), + [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [51] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), + [53] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(88), + [56] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(108), + [59] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(2), + [62] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(2), + [65] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [71] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_children_repeat1, 2), SHIFT_REPEAT(71), + [74] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_children_repeat1, 2), SHIFT_REPEAT(5), + [77] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_children_repeat1, 2), + [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [81] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag, 4), + [83] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tag, 4), + [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [87] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_tag_repeat1, 2), + [89] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tag_repeat1, 2), + [91] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tag_repeat1, 2), SHIFT_REPEAT(14), + [94] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag, 2), + [96] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tag, 2), + [98] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag, 3), + [100] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tag, 3), + [102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag, 5), + [104] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tag, 5), + [106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag, 6), + [108] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tag, 6), + [110] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 3), + [112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 3), + [114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [118] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2), + [120] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 2), + [122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [124] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__content_after_dot, 5, .production_id = 2), + [126] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__content_after_dot, 5, .production_id = 2), + [128] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_repeat1, 2), + [130] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_attribute_repeat1, 2), SHIFT_REPEAT(112), + [133] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_attribute_repeat1, 2), + [135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 1), + [137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(112), + [139] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 1), + [141] = {.entry = {.count = 1, .reusable = false}}, SHIFT(97), + [143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag, 7), + [145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tag, 7), + [147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 6), + [149] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 6), + [151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_children, 3), + [153] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_children, 3), + [155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_doctype, 2), + [157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_doctype, 2), + [159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 4), + [161] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 4), + [163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 5), + [165] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 5), + [167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 2), + [169] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 2), + [171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(105), + [173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pipe_content, 2), + [175] = {.entry = {.count = 1, .reusable = false}}, SHIFT(81), + [177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(119), + [185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [187] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), + [189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attributes_repeat1, 2), + [199] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attributes_repeat1, 2), SHIFT_REPEAT(59), + [202] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__content_after_dot_repeat1, 2), SHIFT_REPEAT(70), + [205] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__content_after_dot_repeat1, 2), SHIFT_REPEAT(119), + [208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__content_after_dot_repeat1, 2), + [210] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pipe_content, 3), + [212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_name, 1), + [214] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_name, 1), + [216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_repeat1, 2, .production_id = 1), + [222] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_attribute_repeat1, 2, .production_id = 1), + [224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [238] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attributes, 4), + [240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attributes, 4), + [242] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__content_or_javascript, 2), SHIFT_REPEAT(76), + [245] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__content_or_javascript, 2), SHIFT_REPEAT(119), + [248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__content_or_javascript, 2), + [250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [252] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attributes, 3), + [254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attributes, 3), + [256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [258] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attributes, 2), + [260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attributes, 2), + [262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 4), + [270] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 4), + [272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_quoted_attribute_value, 3), + [278] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_quoted_attribute_value, 3), + [280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [282] = {.entry = {.count = 1, .reusable = false}}, SHIFT(109), + [284] = {.entry = {.count = 1, .reusable = false}}, SHIFT(79), + [286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [292] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__content_after_dot_repeat1, 2), + [294] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comment_repeat1, 2), SHIFT_REPEAT(118), + [297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comment_repeat1, 2), + [299] = {.entry = {.count = 1, .reusable = false}}, SHIFT(75), + [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_quoted_attribute_value, 2), + [311] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_quoted_attribute_value, 2), + [313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__content_or_javascript, 3), + [315] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__content_or_javascript, 3), + [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3), + [321] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3), + [323] = {.entry = {.count = 1, .reusable = false}}, SHIFT(101), + [325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [341] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), + [353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), }; #ifdef __cplusplus diff --git a/test/corpus/pipe.txt b/test/corpus/pipe.txt index a6a18f4..20f6255 100644 --- a/test/corpus/pipe.txt +++ b/test/corpus/pipe.txt @@ -72,3 +72,23 @@ div (children (pipe_content (content) (javascript) (content))))) +======================== +Multiline with dot +========================= + +div. + Content here + more + content here, + +--- + +(source_file + (tag + (tag_name) + (children + (content) + (content) + (content) + ) +)) diff --git a/test/corpus/tag.txt b/test/corpus/tag.txt index 7337615..f67d164 100644 --- a/test/corpus/tag.txt +++ b/test/corpus/tag.txt @@ -125,4 +125,16 @@ some-tag (attributes (attribute (attribute_name))))))) +======================== +Doctype html +======================== +doctype html +doctype strict + +--- + +(source_file + (doctype (doctype_name)) + (doctype (doctype_name)) +) diff --git a/yarn.lock b/yarn.lock index 631a4d4..33561d4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,6 +7,11 @@ nan@^2.14.1: resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19" integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ== +prettier@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.3.2.tgz#ef280a05ec253712e486233db5c6f23441e7342d" + integrity sha512-lnJzDfJ66zkMy58OL5/NY5zp70S7Nz6KqcKkXYzn2tMVrNxvbqaBpg7H3qHaLxCJ5lNMsGuM8+ohS7cZrthdLQ== + tree-sitter-cli@^0.20.0: version "0.20.0" resolved "https://registry.yarnpkg.com/tree-sitter-cli/-/tree-sitter-cli-0.20.0.tgz#feaaa11c7ecf44a6e236aa1e2963b85d045d33cc"