Commit graph

1041 commits

Author SHA1 Message Date
634a18cb56
feat: add clipboard history palette 2025-10-13 19:50:04 +02:00
acb0e16621
feat: add helix mode support for clipboard history changes 2025-10-13 19:49:20 +02:00
a8fe2c30a9
feat: save/restore clipboard history to/from session metadata 2025-10-13 19:47:59 +02:00
ee34131ab2
feat: add clipboard history support for internal clipboard 2025-10-13 19:47:20 +02:00
276f721456
refactor: clarify which allocator is used in to_lower_cursel 2025-10-13 13:24:18 +02:00
b7343219c1
fix: memory leaks in operations that call cut_selection or cut_to 2025-10-13 13:24:10 +02:00
06788c4243
fix: apply expand_home to path in save_as command 2025-10-13 11:57:13 +02:00
239b7dfa82
fix: prevent use-after-free error in open_file mini mode 2025-10-13 11:57:05 +02:00
25a719382f
fix: store button click locations as signed values 2025-10-10 16:05:50 +02:00
e6cc1c35f9
fix: rendering of tab bar background 2025-10-10 15:38:49 +02:00
7f229f3486
feat: allow overriding WidgetList.render_decoration function 2025-10-10 15:38:31 +02:00
9c3482b899
fix: use create_scratch_buffer instead of open_scratch_buffer in dump_document_tree 2025-10-10 12:55:31 +02:00
42705867f1
fix: set ast dump file type asyncronosly to avoid tree-sitter slowdown 2025-10-10 12:33:30 +02:00
0910900a9f
feat: add dump_document_tree command 2025-10-10 12:06:15 +02:00
fac4eda72c
fix: formatting 2025-10-10 09:46:41 +02:00
c7b46856bb refactor: explicity publish internal helix functions for unittests only
We don't want internal functions in the mode specific extention modules becoming
shared code. To avoid this, mark the functions as private and publish only through
a structure marked clearly as for testing only.

If these functions are useful as shared code they can be moved to the editor module
or else where.
2025-10-10 09:35:44 +02:00
Igor Támara
a6f5ffcdc5 hx: add tests for some Helix mode movements 2025-10-10 09:35:44 +02:00
a5dc6d8a43 fix: build of helix_mode tests 2025-10-10 09:35:44 +02:00
Igor Támara
a64d7c3afa hx: attempt to add tests in separate file 2025-10-10 09:35:44 +02:00
Igor Támara
90c08c4287 fix: helix copy now delegates properly memory to editor 2025-10-10 07:38:25 +02:00
00bbeaedf9
feat: if buffer is dirty show save button in tabs instead of close 2025-10-09 21:12:15 +02:00
cf806b23ab
feat: add save_buffer command 2025-10-09 21:09:31 +02:00
4e38d15878
feat: close buffer if tab close icon is clicked 2025-10-09 20:52:00 +02:00
ce87dcfa2b
refactor: pass relative click position to button click handlers
This a big refactor just to clean-up type definitions used by Button and Menu.
The goals is to pass the click position as a cursor object.
2025-10-09 19:11:25 +02:00
35ccf7f1df
feat: optionally customize tab clean indicator 2025-10-09 17:11:28 +02:00
52e29b7825
feat: add optional tab padding 2025-10-09 17:11:07 +02:00
94adc72283
feat: render close icon in tabs on hover 2025-10-09 16:50:29 +02:00
e2c0325a7a
fix: incorrect tab width when file type icons are turned on 2025-10-09 15:23:37 +02:00
78b29c321e
fix: don't render color for black or white file type icons in tabs 2025-10-09 14:33:09 +02:00
455565ee26
feat: add file type icons to tabs
Optionally disable icons in tabs with `file_type_icon = false` in `status.tabs.style.config`.
2025-10-09 14:01:49 +02:00
3c55ed876b
refactor: allow mocking of root module functions for easier unittesting 2025-10-08 14:18:03 +02:00
3bb43c79c3
docs: drop 'v' from version on home screen 2025-10-08 14:17:44 +02:00
e5c89ea754
docs: add some more problematic glyphs to font test text 2025-10-07 20:55:19 +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
9ea32d46e2
feat: preparations for additionalTextEdits support in completions 2025-10-02 22:51:01 +02:00
8476f613c2
fix: check selection before insert 2025-10-02 22:49:02 +02:00
5362706b26
fix: translate columns to byte offsets when requesting completions 2025-10-02 16:28:23 +02:00
6ec8aae94a
fix: translate byte offsets to columns when applying completions 2025-10-02 16:27:47 +02:00
6ae176a8ac
refactor: add selection_pos_to_width and get_replace_selection functions 2025-10-02 16:27:16 +02:00
390fbd51ff
refactor: simplify code by using Selection.from_pos 2025-10-02 16:25:48 +02:00
10bd270d89
feat: add Match.from_pos function 2025-10-02 16:23:21 +02:00
81a1c88847
fix: force refresh on add_completion_done events for slow language servers 2025-10-02 15:00:33 +02:00
778907c513
fix: ignore empty replacement selections for completion 2025-10-02 15:00:00 +02:00
b1e5b2f80f
fix: never set completion selection to an empty range 2025-10-01 22:02:21 +02:00
b02f096fef
feat: set the initial completion query based on the cursor position 2025-10-01 21:55:12 +02:00
74b011cf7e
feat: add support for setting the initial query value in palettes 2025-10-01 21:54:46 +02:00
42b7ae46a0
fix: open competion palette after all completions are received 2025-10-01 21:29:05 +02:00