nvim-treesitter / nvim-treesitter/nvim-treesitter-textobjects
Question: is it expected that inner function objects include braces?
Nobody has claimed this yet.
- Dominant language
- Tree-sitter Query
- Stars
- 2.8k
- Forks
- 271
- Avg merge
- 8d 8h
- Merged PRs (30d)
- 1
Description
(Thanks for the plugin: it is a snap to set up and easy to work with so far.)
I was surprised to see that by default, an inner function object in, for example, Go and Javascript includes the braces. I'm guessing that this is expected behavior and probably a result of how treesitter itself works. But I wanted to confirm that before going further.
I ask because my most common use for inner function objects is that I want to change, delete, or yank all the code in the function body, but in those cases I don't normally want to include the braces. So, I'll need to consider whether it's possible to tweak treesitter's results.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by examining how inner function objects are selected for Go and JavaScript and how Tree-sitter represents their bodies. Confirm whether including braces is expected, then determine whether selections can exclude them; done means documenting the behavior or identifying a concrete way to change it.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, javascript, neovim
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100