Commit graph

136 commits

Author SHA1 Message Date
3ebe68a384
refactor: implement find_all_ranges mode .case_folded 2025-11-25 21:43:12 +01:00
37428bd698
refactor: add unicode.case_folded_write 2025-11-25 21:42:51 +01:00
e35a0555f1
feat: port to_upper and to_lower to uucode 2025-11-25 21:14:59 +01:00
2ff0521040
refactor: move all zg LetterCasing usage to Buffer.unicode 2025-11-25 17:16:53 +01:00
86ec27893d
feat: implement case insensitive search (part 1) 2025-11-25 15:53:12 +01:00
4a0150d68f
refactor: add Cursor.from_pos and Seleciton.from_range
And use them to clean-up all root.pos_to_width call sites.
2025-11-25 14:37:05 +01:00
be41027d75
refactor: make Selection.from_pos infallible 2025-11-25 13:32:31 +01:00
8b9cc87cab
fix: add back german quotes to char_pairs 2025-11-18 10:55:36 +01:00
Igor Támara
b4b44ec906 refactor: additional characters for smart_insert 2025-11-18 10:50:47 +01:00
Igor Támara
56ea0138a5 feat: goto_bracket goes to the pair bracket under cursor
Uses simple matching nesting, as a complement to tree-sitter approach.

Flow mode shorcut ctrl+shit+\ ala Code
2025-11-17 18:43:42 +01:00
5e292e75b5
fix: store redo metadata along with undo metadata and restore it on redo
This commit refactors undo storage and handling significantly.

The undo/redo chaining in Buffer is much simpler and clearer.

The metadata generated by Editor now contains the pre and post change
states. The pre-state is restored on undo and the post-state is restored
on redo.

closes #348
2025-11-04 15:32:43 +01:00
8d0f333ad8
refactor: simplify Buffer.write_state 2025-11-03 22:14:15 +01:00
30b1329d10
refactor: move auto_save flag from Editor to Buffer 2025-11-03 22:13:54 +01:00
1f3419ec94
feat: add Selection.merge and Selection.expand functions 2025-11-03 18:29:51 +01:00
5fccffc4b6
feat: add Cursor.within predicate function 2025-11-03 18:29:32 +01:00
1d1d828097
fix: move cursor to the beginning of an egc in Cursor.clamp_to_buffer
closes #317
2025-11-03 16:25:22 +01:00
a0fa079a13
fix: remove workaround for Buffer.store_to_file_const bug on non-linux platforms
This bug was fixed in the previous commit.
2025-10-30 18:06:43 +01:00
ab4d1cdfa5
fix: always use std.Io.Writer.writeAll to avoid write underflow 2025-10-30 18:04:37 +01:00
b556c1da61
fix: add workaround for Buffer.store_to_file_const bug on non-linux platforms 2025-10-30 16:54:10 +01:00
02deaab3a7
fix: always call reload_file when re-openning an hidden non-ephemeral buffer
This is less confusing than just restoring the buffer as is. If the file has
changed on disk the usual expectation is to load the new contents on re-opening
the file.

closes #339
2025-10-28 16:34:44 +01:00
b463622f05
fix: allow Buffer.Manager.delete_buffer calls on dead buffers 2025-10-10 12:34:00 +02:00
5cfe2f6be4
feat: add some braile spinners to unicode.zig
Might be useful somewhere...
2025-10-07 20:56:55 +02:00
78cc4b2d24
fix(wsl): save without copying file mode if statFile fails 2025-10-07 10:25:55 +02:00
22e36481d6
fix: don't leak buffer names when deleting buffers
This commit also refactors the Buffer.Manager to make similar issues
easier to avoid in future.
2025-10-06 22:28:52 +02:00
Igor Támara
f201728457 hx: Fix closing other buffers and improve user messages 2025-10-06 21:16:33 +02:00
Igor Támara
d3e601e774 Show feedback to user when trying to quit with dirty buffers 2025-10-06 21:16:33 +02:00
Igor Támara
552417091d feat: add helix mode close other buffers and reload all
* x and x! have expected behaviour in Helix mode
2025-10-06 21:16:33 +02:00
65eb6bc7ad
feat: add Selection.from_pos function 2025-10-02 16:22:55 +02:00
2f89dcba8d
fix: improve Buffer writer impl 2025-09-29 22:29:45 +02:00
f90d486eae
fix: update Buffer.store_to_string for zig-0.15 2025-09-26 21:05:16 +02:00
8f1375745d
fix: simplify and update Buffer.get_byte_pos for zig-0.15 2025-09-26 21:04:42 +02:00
2867fc9a8e
fix: update Buffer.get_line function for zig-0.15 2025-09-26 21:03:57 +02:00
0f560ed3bc
fix: Buffer.rebalance on zig-0.15 2025-09-26 15:36:25 +02:00
dfdb82ca20
refactor: move write_range to Buffer 2025-09-26 15:04:17 +02:00
705ff49ae8
fix: remove bogus assert in Buffer drain function 2025-09-26 13:17:04 +02:00
bf0d4402ea
refactor: lots more writergate fixes - first successful build 2025-09-25 22:01:29 +02:00
e6b39c274c
refactor: lots and lots of writergate changes 2025-09-24 22:30:18 +02:00
96e8100373
Merge branch 'master' into zig-0.15 2025-09-24 18:33:33 +02:00
935b178d89
feat: add Buffer.Node.byte_offset_to_line_and_col and testcase 2025-09-17 22:17:00 +02:00
f958aa3039
Merge branch 'master' into zig-0.15 2025-09-13 16:16:51 +02:00
3d90b199ad
fix: do not return zero width codepoints from egc_at
Skip them and return the next non-zero width codepoint. This makes more sense and
prevents endless loops in code that scans by egc width using egc_at, like
Cursor.move_right_until for example.
2025-09-13 15:45:17 +02:00
8903ca86b1
Merge branch 'master' into zig-0.15 2025-09-12 01:05:35 +02:00
fda9338a06
fix: clamp to end of last line if the cursor is past the end of the buffer
closes #289
2025-09-09 09:24:18 +02:00
15990b9dce
Merge branch 'master' into zig-0.15 2025-08-27 00:04:58 +02:00
76ef0aff3a
fix: minor off-by-one bug in View.is_visible 2025-08-25 21:32:58 +02:00
55a862eac0
Merge branch 'master' into zig-0.15.0 2025-08-22 13:12:37 +02:00
38236bd93a
refactor: Buffer.Manager.get_buffer_for_file can be const 2025-08-13 14:40:59 +02:00
54a43264bb
Merge branch 'master' into zig-0.15.0 2025-08-08 21:58:15 +02:00
68a5de5aa7
refactor: move lsp_version field to Buffer 2025-08-08 21:02:16 +02:00
dd2601b627
feat: store/restore buffer dirty state 2025-08-08 13:16:17 +02:00