Ryan Despain
275effdfc0
adding zsh expansion flagsSee https://zsh.sourceforge.io/Doc/Release/Expansion.html\#Parameter-Expansion-Flags ( #115 )
2021-12-15 08:53:04 -08:00
oxalica
4094e3a040
Handle words containing bare '#' ( #109 )
...
* Handle words containing bare '#'
Only a word beginning with a '#' starts a comment. A word can contain
'#' character without escaping as long as it is not the first character.
See: Bash Reference Manual section '3.1.3 Comments'
https://www.gnu.org/software/bash/manual/bash.html#Comments
* Regenerate
2021-11-01 09:59:27 -07:00
Martin Jambon
9d9325f8f9
Add support for 'until' loops
2021-10-16 01:44:38 -07:00
Martin Jambon
c79d2377d4
Add support for 'select' loops.
2021-10-09 02:44:05 -07:00
Andrew Helwer
af9646bad9
Fixed CRLF behavior for tests, run tests on all platforms in GitHub CI ( #106 )
...
* Fixed CRLF issues in tests
* Added GH CI to ensure tests pass on all platforms
2021-09-25 13:59:45 -07:00
Kenneth Skovhus
8ece09ca4c
Add support for case fallthrough ( #85 )
...
Fixes https://github.com/tree-sitter/tree-sitter-bash/issues/40
2020-05-29 13:09:38 -07:00
Kenneth Skovhus
f226a4b55a
Add support for empty expansions ( #82 )
...
Fixes https://github.com/tree-sitter/tree-sitter-bash/issues/57
2020-05-15 12:32:47 -07:00
Kenneth Skovhus
38e8ba4a3d
Expand function definition to support subshell and tests ( #83 )
...
Fixes https://github.com/tree-sitter/tree-sitter-bash/issues/60
2020-05-15 11:25:46 -07:00
Kenneth Skovhus
0477cc4460
Add support for ternary expression ( #81 )
...
Fixes https://github.com/tree-sitter/tree-sitter-bash/issues/64
2020-05-15 10:50:29 -07:00
Šimon Let
28e76c616d
WIP: Add '>|' redirection to grammar ( #75 )
...
* Add '>|' redirection to grammar
* add tests for >|
* generate grammar
2020-05-14 15:48:18 -07:00
Max Brunsfeld
7478c62b24
Add supertypes
2020-05-14 15:28:42 -07:00
Max Brunsfeld
de690d849a
Start adding fields
2019-12-10 13:18:29 -08:00
Nathan Sobo
1c48cd1676
Support ANSII-C quoting in strings prefixed with $
...
See
https://www.gnu.org/software/bash/manual/html_node/ANSI_002dC-Quoting.html
for details
2019-07-26 11:29:35 -06:00
Max Brunsfeld
15a3a168f0
Handle
...
Fixes #39
2019-04-18 15:46:58 -07:00
Max Brunsfeld
e9748c132b
Require a terminator at the ends of some compound statements
...
Fixes #44
2019-04-18 15:38:39 -07:00
Max Brunsfeld
53446e0e81
Handle heredocs followed by pipes or redirects
...
Fixes atom/language-shellscript#134
2019-04-18 15:25:40 -07:00
Max Brunsfeld
25f56dd856
Allow $ at the end of a bare word
...
Fixes #38
2018-11-04 15:34:33 -08:00
Max Brunsfeld
8426c3fefd
Fix handling of delimiter characters as part of bare words
...
Fixes atom/atom#18387
2018-11-04 13:14:13 -08:00
Max Brunsfeld
da116a1941
Handle heredocs w/ indented close delimiters
...
Fixes atom/language-shellscript#127
2018-10-19 13:06:56 -07:00
Max Brunsfeld
a4fb636b2d
Handle shorthand file redirect command substitutions
...
Fixes #34
2018-10-18 15:31:24 -07:00
Max Brunsfeld
48f7e22475
Handle lists of statements more consistently
2018-10-18 15:29:07 -07:00
Max Brunsfeld
4fb4e2960d
Fix handling of escaped chars in strings
2018-10-18 15:28:46 -07:00
Max Brunsfeld
bdaf31057b
Add raw (quoted) heredocs
...
Fixes #31
2018-10-18 12:55:14 -07:00
Max Brunsfeld
cdbc8863cd
Allow compound statements and redirects in more places
...
Fixes #35
2018-10-18 11:06:03 -07:00
Max Brunsfeld
246bad66dd
Add double-paren expression
...
* Use the external scanner for regexes
* Add some missing operators
Fixes #22
Fixes #32
2018-10-01 13:29:04 -07:00
Max Brunsfeld
0123b9559f
Allow semicolon before block in c-style for loop
...
Fixes #33
2018-10-01 12:48:50 -07:00
Max Brunsfeld
6ff7fe3c7e
Don't require statement terminator at EOF
...
Fixes #15
2018-08-06 11:18:33 -07:00
Max Brunsfeld
da2ba9cfdf
Allow backslashes between tokens
...
Fixes #14
2018-08-06 11:14:00 -07:00
Max Brunsfeld
3a9b32284e
Allow `!` operator in variable expansions
...
Fixes #21
2018-08-06 10:44:13 -07:00
Kenneth Skovhus
08cf72b615
[WIP] Support multiple statements ( #26 )
...
* Rename prebuild target clashing with build target
* Add test:watch target and documentation
* Support multiple statements in substitutions
* Inline the _statements rule
This removes a reduction step by the `_statements -> _statement` rule,
which avoids a reduce/reduce conflict between `_statements` and
`command`.
2018-08-06 10:39:05 -07:00
Kenneth Skovhus
9bbd80dee1
Add support for C-style for statements ( #23 )
2018-08-05 19:25:19 -07:00
Kenneth Skovhus
886a957d1e
Add support for strings ending with $ ( #24 )
2018-08-02 16:32:30 -07:00
Max Brunsfeld
44b3de2594
⬆️ tree-sitter-cli, add explicit word token
2018-06-15 14:05:05 -07:00
Max Brunsfeld
7b003599b3
Allow subshells in negated commands
...
Fixes #13
2018-05-24 15:00:53 -07:00
Max Brunsfeld
065a4ec425
Rework test expressions
...
Fixes #11
2018-05-24 11:47:12 -07:00
Max Brunsfeld
73d6705bc2
Allow other redirects between a heredoc's delimiter and body
...
Fixes #16
2018-03-29 09:54:08 -07:00
Max Brunsfeld
68e93bd898
Allow for statements without in clauses
2018-03-02 10:18:42 -08:00
Max Brunsfeld
87a832d94e
Allow regexes after '==', not just '=~'
2018-03-01 14:22:38 -08:00
Max Brunsfeld
30844a0381
Allow $'\n' (whatever that is)
2018-03-01 14:15:15 -08:00
Max Brunsfeld
c7484ad85f
Allow ;; at end of line of case item
2018-03-01 14:04:29 -08:00
Max Brunsfeld
51b212b207
Allow redirects after bracket commands
2018-03-01 10:42:20 -08:00
Max Brunsfeld
0791027596
Add regex syntax inside of expansions
2018-03-01 10:41:16 -08:00
Max Brunsfeld
f33bf06de2
Distinguish unset commands from regular commands
2018-03-01 10:12:10 -08:00
Max Brunsfeld
384d920af5
Allow $ in strings
2018-03-01 09:54:08 -08:00
Max Brunsfeld
c7e42b8e96
Add special lexing for regexes after `=~`
2018-03-01 09:53:10 -08:00
Max Brunsfeld
0d9f854862
Revert "Don't parse square bracket commands as special syntax"
...
This reverts commit c34619a1c4
.
Bracket command syntax was actually not interfering with the parsing
of words with special characters.
2018-02-28 22:46:47 -08:00
Max Brunsfeld
4920373ca4
Add special variable @, expressions in declarations
2018-02-28 17:32:48 -08:00
Max Brunsfeld
87b3276186
Generalize case statement parsing
...
* Fix handling of '|' in case items
* Don't require ;; for last case item
Fixes #8
2018-02-28 16:29:42 -08:00
Max Brunsfeld
2a5b01b885
Generalize parsing of expansion operators
2018-02-28 16:28:55 -08:00
Max Brunsfeld
86c5561ba8
Allow file redirects on while statements
2018-02-28 16:28:30 -08:00