mirror of
https://github.com/ivuorinen/tree-sitter-shellspec.git
synced 2026-02-04 21:47:42 +00:00
- Add full ShellSpec grammar extending tree-sitter-bash - Support all ShellSpec constructs: Describe, Context, It, hooks, utilities - Include Data block parsing with statements and argument styles - Add 61 comprehensive test cases covering real-world patterns - Implement optimized GitHub workflows with CI/CD automation - Configure complete development tooling (linting, formatting, pre-commit) - Add comprehensive documentation and contribution guidelines - Optimize grammar conflicts to zero warnings - Support editor integration for Neovim, VS Code, Emacs Breaking Changes: - Initial release, no previous API to break BREAKING CHANGE: Initial implementation of tree-sitter-shellspec grammar # Conflicts: # .github/workflows/codeql.yml # .github/workflows/pr-lint.yml # .pre-commit-config.yaml # Conflicts: # .github/workflows/pr-lint.yml # Conflicts: # .github/workflows/pr-lint.yml
35 lines
706 B
Bash
35 lines
706 B
Bash
#shellcheck shell=sh
|
|
|
|
Describe '%putsn directive'
|
|
Example 'outputs arguments'
|
|
foo() { %putsn value; }
|
|
When call foo
|
|
The entire output should eq "value${SHELLSPEC_LF}"
|
|
End
|
|
End
|
|
|
|
Describe '%= directive'
|
|
Example 'is alias for %putsn'
|
|
# shellcheck disable=SC2276
|
|
foo() { %= value; }
|
|
When call foo
|
|
The entire output should eq "value${SHELLSPEC_LF}"
|
|
End
|
|
End
|
|
|
|
Describe '%puts directive'
|
|
Example 'outputs arguments without last <LF>'
|
|
foo() { %puts value; }
|
|
When call foo
|
|
The entire output should eq "value"
|
|
End
|
|
End
|
|
|
|
Describe '%- directive'
|
|
Example 'is alias for %puts'
|
|
foo() { %- value; }
|
|
When call foo
|
|
The entire output should eq "value"
|
|
End
|
|
End
|