Max Brunsfeld 675a581839 Allow special characters in bare word arguments
I've moved tokenization of bare words into the external scanner. This
way we can keep the grammar simple, but support some fancy rules that
I've inferred from experimenting with bash:

- Only allow '}' inside of a bare word if '}' isn't a valid lookahead
token (i.e. we're not inside of a variable expansion).
- Only allow ']' at the *start* of a bare word if neither ']' nor ']]'
are valid lookahead tokens (i.e. we're not inside of a square bracket
command or an array subscript).
- Parentheses seem to never be allowed in bare words. You have to quote
them.

For alphanumeric words, I fall through to the normal scanner so that it
can continue to distinguish reserved words from other words.

Fixes #5
2018-02-27 16:55:20 -08:00
2017-07-14 12:28:54 -07:00
2017-07-14 12:28:54 -07:00
2017-07-14 17:53:04 -07:00
2017-07-14 13:54:05 -07:00
2017-07-14 12:28:54 -07:00
2017-07-14 14:46:24 -07:00
2018-02-12 16:54:53 -08:00
2017-07-14 14:46:24 -07:00

tree-sitter-bash

Build Status

Bash grammar for tree-sitter.

References

Description
No description provided
Readme 11 MiB
Languages
JavaScript 70.9%
Rust 16.6%
C++ 5%
Scheme 3.3%
Shell 2.2%
Other 2%