diff --git a/grammar.js b/grammar.js index bf04d47..939f9d4 100644 --- a/grammar.js +++ b/grammar.js @@ -9,17 +9,22 @@ module.exports = grammar({ newline: $ => /\n/, identifier: $ => /[A-Za-z_][A-Za-z0-9_]*/, 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( repeat($.space), $.identifier, repeat($.space), - $.parameter_list, - ), - parameter_list: $ => seq( '(', - repeat($.argument), + optional($.arguments), ')' - ) + ), + } })