27 Commits

Author SHA1 Message Date
5273fd743a LEVENSHTEIN FREAKING WORKS FOR TREE DIFFING
Some checks failed
NeoVim tests / code-quality (push) Failing after 1m16s
2025-10-11 14:35:54 -06:00
8a14b6b824 restructure tree visit algorithm
Some checks failed
NeoVim tests / code-quality (push) Failing after 1m20s
2025-10-11 09:03:49 -06:00
fdb2a49638 Working better now (but see notes)
Some checks failed
NeoVim tests / code-quality (push) Failing after 1m18s
Even so, some things can get screwy if the component tree sets
suspicious `key`s. Like:

```lua
{
  'String 1',                    -- auto-assigned key = idx(1)
  h(Component, { key = 1 }, {}), -- conflicting key(1)
  'String 2',                    -- auto-assigned key = idx(3)
  h(Component, { key = 2 }, {}), -- key = 2
}
```

In this example, there are two elements competing for key `1`, which
causes weird render issues.
2025-10-09 22:49:01 -06:00
8fa2784bf7 WIP: react-like renderer
Some checks failed
NeoVim tests / code-quality (push) Failing after 1m23s
2025-10-08 23:48:18 -06:00
72b6886838 range: extmarks/tsquery; renderer: text-change
All checks were successful
NeoVim tests / code-quality (push) Successful in 1m18s
2025-10-02 20:01:40 -06:00
6f86bfaa42 ensure normal-mode before running g@...
All checks were successful
NeoVim tests / code-quality (push) Successful in 1m21s
2025-06-04 23:00:22 -06:00
35b6e123ac Fix issue caused by last commit
All checks were successful
NeoVim tests / plenary-tests (push) Successful in 10s
It seems that closures are not interacting well with the global nature
of operatorfunc's. That is just a hunch, and this feels like a hack, but
it fixes the issue.
2025-05-17 07:33:58 -06:00
237bc9ba5e (range) use g@ for Range.from_motion
All checks were successful
NeoVim tests / plenary-tests (push) Successful in 9s
2025-05-09 21:34:44 -06:00
c760c495b7 update lua API to 1-based indices; add renderer
All checks were successful
NeoVim tests / plenary-tests (push) Successful in 11s
2025-05-04 15:44:09 -06:00
7fb60add94 move away from vim.opt_global to vim.go
All checks were successful
NeoVim tests / plenary-tests (push) Successful in 9s
2025-03-19 22:29:33 -06:00
79499e898c cleanup some vim.cmd calls
All checks were successful
NeoVim tests / plenary-tests (push) Successful in 9s
2025-03-12 23:12:28 -06:00
5c244cfc0a support repeated Range:replace calls/empty ranges
- Range:replace now updates its bounds to reflect the replacement
- Support the notion of an empty range
2024-11-12 07:48:23 -07:00
121e0c0f7a rebrand to u.nvim
All checks were successful
NeoVim tests / plenary-tests (push) Successful in 8s
2024-10-23 17:01:12 -06:00
f3e352ceda (repeat) refactor slightly 2024-10-23 16:50:58 -06:00
6d49d1a0e4 fix undo tracking 2024-10-22 08:08:29 -06:00
3c948ac985 (bug) indicies past EOL should not error 2024-10-16 08:05:13 -06:00
8bbb2ba9c8 better Range:highlight(..) handling 2024-10-14 17:48:14 -06:00
03c5500966 (State) add track_winview() 2024-10-12 14:08:39 -06:00
e45d51cdf5 remove print 2024-10-12 00:00:06 -06:00
c2ba91893f add Range:highlight() 2024-10-11 23:50:23 -06:00
3bf3836bd7 remove use of feedkeys 2024-10-11 22:56:10 -06:00
bdd1d949de switch more APIs away from feedkeys 2024-10-11 18:22:35 -06:00
e717c0a7d5 Range: add option user_defined 2024-10-04 22:41:58 -06:00
a98eeb71c1 preserve " register in Range.from_text_object 2024-09-28 09:23:29 -06:00
d317fcf82d add get_editor_dimensions 2024-09-07 08:36:40 -06:00
b9edc4d8ff bugfixes; update README.md 2024-09-06 22:37:13 -06:00
61460f0180 initial commit 2024-09-01 14:09:07 -06:00