Files
tree-sitter-shellspec/.serena/memories/suggested_commands.md
Ismo Vuorinen c8ba576b4e feat: implement complete tree-sitter-shellspec grammar with comprehensive testing
- 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
2026-01-04 15:32:39 +02:00

1.6 KiB

Suggested Commands

Development Commands

NPM Scripts (Preferred)

# Quick development cycle
npm run dev

# Generate parser from grammar
npm run generate
npm run build

# Run tests
npm test

# Interactive grammar testing
npm run web

# Clean and rebuild
npm run clean
npm run rebuild

Tree-sitter Direct Commands

# Generate the parser from grammar.js
tree-sitter generate

# Test the grammar against test files
tree-sitter test

# Parse a specific file to debug
tree-sitter parse <file>

# Web UI for testing grammar
tree-sitter web-ui

# Clean generated files
rm -rf src/parser.c src/grammar.json src/node-types.json

Linting and Formatting

# Comprehensive linting (preferred)
npm run lint

# Specific linters
npm run lint:yaml
npm run lint:markdown

# Run pre-commit hooks manually
npm run precommit

# Direct linter commands
yamllint .
markdownlint . --config .markdownlint.json --fix
shellcheck **/*.sh

Git and Version Control

# Standard git workflow
git add .
git commit -m "message"
git push

# Pre-commit hooks run automatically on commit

System Commands (Darwin/macOS)

  • ls - list files
  • find - find files/directories
  • grep - search text patterns
  • cd - change directory
  • pwd - print working directory
  • which - locate command

Node.js/npm Commands

# Install dependencies
npm install

# Using nvm (available at /Users/ivuorinen/.local/share/nvm/nvm.sh)
nvm use

Test Development

# Run specific test patterns (if needed)
tree-sitter test --debug

# Parse sample files for debugging
echo "Describe 'test' ... End" | tree-sitter parse