Skip to content
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

Refactor tree-sitter related functionality #330

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Commits on Nov 25, 2023

  1. Extract nvim-treesitter deprecations

    nvim-treesitter is transitioning to being just a parsers manager,
    with plugins being encouraged to move to independent initialization and
    implementation.
    
    This commit extracts nvim-treesitter plugin dependencies, copying those
    too big to reimplement. Additionally, tree-sitter engine is reworked to
    be an async library. When buffer's filetype is set, a parser is
    initialized, a throttled reparser is attached to parser's on_bytes
    event, and schedule_wrapped match extractor is attached to parser tree
    change event. The latter extracts matches and stores them in a per-buffer
    dictionary.
    
    All requests to the treesitter backend now fetch data from the
    aforementioned dictionary. Extra precautions are taken in get_matches
    request, which now returns no matches if the buffer is known to have
    changed with a parser that haven't caught up yet.
    Slotos committed Nov 25, 2023
    Configuration menu
    Copy the full SHA
    34d3362 View commit details
    Browse the repository at this point in the history