Complete grammar for unquoted arguments

This commit is contained in:
Uy Ha 2021-04-08 00:17:56 +02:00
parent 98412845cd
commit 263fb2a5ff

View file

@ -9,17 +9,22 @@ module.exports = grammar({
newline: $ => /\n/, newline: $ => /\n/,
identifier: $ => /[A-Za-z_][A-Za-z0-9_]*/, identifier: $ => /[A-Za-z_][A-Za-z0-9_]*/,
argument: $ => /[^ ()#\"\\]+/, argument: $ => /[^ ()#\"\\]+/,
seperation: $ => choice($.space, $.line_ending),
arguments: $ => seq($.argument, repeat($._seperated_arguments)),
_seperated_arguments: $ => prec.left(1, seq(
repeat1($.seperation),
optional($.argument)
)),
command_invocation: $ => seq( command_invocation: $ => seq(
repeat($.space), repeat($.space),
$.identifier, $.identifier,
repeat($.space), repeat($.space),
$.parameter_list,
),
parameter_list: $ => seq(
'(', '(',
repeat($.argument), optional($.arguments),
')' ')'
) ),
} }
}) })