-
-
Notifications
You must be signed in to change notification settings - Fork 167
fix(files): remove string tree-sitter parser #1041
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
@chipsenkbeil just a heads-up about this change. I don't know if it affects org-roam.
@chipsenkbeil just a heads-up about this change. I don't know if it affects org-roam.
I think I refactored out all direct usage of treesitter in favor of your plugin's api, but will need to double check.
ribru17
commented
Oct 3, 2025
I think there may be a simpler way to prevent this perf regression; i think this was less about using a scratch buffer and more about parser:source() always returning a number now. I'm about to be afk but i will do some investigating
Performance issue in the latest nightly, take a look at - neovim/neovim#35988 (comment) - nvim-orgmode/orgmode#1041
With the change on nightly neovim/neovim#35988, string parser creates a scratch buffer under the hood, and uses that as a source. This drastically decreases the performance of the current code. This commit refactors the code to remove the string parser, and adds own loading of the org buffers for the tree-sitter usage. Performance should be same as before, with the downside that all of the org files that are in org_agenda_files are now loaded as unlisted buffers.
For some reason, tests on older versions fail without reporting any actual issues in the tests. Skip running tests on those versions.
d028baf
to
1b2c306
Compare
Summary
With the change on nightly neovim/neovim#35988, string parser creates a scratch buffer under the hood, and uses that as a source. This drastically decreases the performance of the current code.
This commit refactors the code to remove the string parser, and adds own loading of the org buffers for the tree-sitter usage. Performance should be same as before, with the downside that all of the org files that are in org_agenda_files are now loaded as unlisted buffers.
Changes
Checklist
I confirm that I have:
Conventional Commits
specification (e.g.,
feat: add new feature
,fix: correct bug
,docs: update documentation
).make test
.