# HG changeset patch # User Cezary Drożak # Date 1687939972 -7200 # Wed Jun 28 10:12:52 2023 +0200 # Node ID 8b37d53b9bde1efe75679e156347abd02d264667 # Parent c9b3a57e4c01e042804e5c83b3f722b4993065c6 feat: add escaped newlines to extras diff --git a/tcl/corpus/terminators.txt b/tcl/corpus/terminators.txt --- a/tcl/corpus/terminators.txt +++ b/tcl/corpus/terminators.txt @@ -29,3 +29,26 @@ (command name: (word) arguments: (word_list (word)))) + +=== +Escaped newlines +=== + +set \ + aList \ + [list \ + one \ + two \ + ] + +--- + +(source_file + (command + name: (word) + arguments: (word_list + (word) + (command_substitution + (command + name: (word) + arguments: (word_list (word) (word))))))) diff --git a/tcl/grammar.js b/tcl/grammar.js --- a/tcl/grammar.js +++ b/tcl/grammar.js @@ -12,7 +12,7 @@ word: $ => $._word_content, - extras: _ => [' '], + extras: _ => [/\s/, /\\\n/], inline: $ => [$._terminator], diff --git a/types/tree-sitter-dsl.d.ts b/types/tree-sitter-dsl.d.ts --- a/types/tree-sitter-dsl.d.ts +++ b/types/tree-sitter-dsl.d.ts @@ -56,7 +56,7 @@ extras?: ( $: RuleProxy, baseExtras: SymbolRule[], - ) => (SymbolRule | string)[] + ) => (SymbolRule | string | RegExp)[] conflicts?: ( $: RuleProxy, baseConflicts: SymbolRule[][],