Skip to content

Conversation

@purarue
Copy link

@purarue purarue commented Sep 18, 2025

No description provided.

kiyoon and others added 30 commits September 4, 2024 11:13
details:
- This plugin no longer depends on nvim-treesitter nor it's modules
  system.
- A bunch of code previously owned by nvim-treesitter has been moved to
  this plugin and been refactored.
- The user interface has changed in the following ways:
  - keymaps are no longer an option provided via the `setup` function.
    Users are expected to create them using `vim.keymap.set`
  - User commands have been removed for now.
- Python dependant tests (consistency_tests) have been removed
- Check nvim-treesitter#523 for more info
details:
- `is_in_range` not working as intended
- make `make-range!` into a real directive
- remove fallback captures for `make-range!`
- force reinstalling parsers
Also stop advertising as generic API and point to nvim-next instead.
remove unused functions; keep internal functions local
rely on type annotations for argument checking
* actually run tests on `main`
* fix running duplicate tests
* fix parser installation
* add working cache (note: `hash_files` only works for files in the
  workspace!)
* fix typos
Problem: Parsed form inserts implicit whitespace

Solution: Compose argument manually
This reduces notification spam and mirrors the behavior of builtin
textobjects. It also allows moving the query checks out of shared for
cheaper checks at definition time rather than runtime (in order to only
override builtin mappings when queries are available).
fix(select): avoid the returned range could be nil

refactor(range): remove `Range:from_node`

fix(move): range could be nil

refactor(range): remove redundant fields

refactor(range): remove methods no longer needed

refactor(shared): make `textobject_at_point` return a `Range6`

refactor(shared): make `get_capture_ranges_recursively` return `Range6[]`

refactor(shared): make `best_range_at_point` handle `Range6`

refactor(range): remove `is_in_range` and `contains`

refactor: remove some usage of `Range`

refactor(shared): get bufnr without relying on `textobject_at_point`

feat(range): add temporary `Range6` converter functions

refactor(range): drop metadata
refactor(select): fix the function name according to its actual function

fix(select): split `previous_position` from `next_position`

refactor(select): rewrite `include_surrounding_whitespace`

refactor(select): remove custom `getline`

fix(select): empty line should be considered as a single character

refactor(move): use more consistenty variables
ofseed and others added 20 commits September 4, 2024 11:13
…-treesitter#671)

* refactor(move): extract parameters from opts fields

refactor(move): drop the unused field

* refactor(move): convert ternary to if-else for type assertion

refactor(swap): more consistent parameter naming

* refactor(repeatable_move): extract the `MoveFunction` interface

docs(repeatable_move): annotate function parameters
This commit also removes all uses of `#make-range!` as it is no longer
necessary.
This patch adapts the julia queries to the breaking changes in
tree-sitter/tree-sitter-julia#153.

fixes nvim-treesitter#716
…d; no longer requires { expr = true } (nvim-treesitter#795)

Should fix
nvim-treesitter#775


https://github.com/user-attachments/assets/afecce63-6db3-42c8-977b-e1a209ae9c68

Not sure if this fix is already being addressed in another way or
refactor process, but just in case, the move_repeatable function was
failing when no string was being returned (nil in this case) due to {
expr = true } keymap options.
@purarue purarue closed this Sep 18, 2025
@purarue
Copy link
Author

purarue commented Sep 18, 2025

ahh - so that is why I saw these kinda PRs on the repo, opened against the wrong target, my bad

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.