Commit graph

1642 commits

Author SHA1 Message Date
d974d510b1
refactor: rename is_non_word_char 2026-02-04 10:09:16 +01:00
7520289442
fix: always update tab views when splits arrangement has changed
closes #485
2026-02-04 09:54:07 +01:00
cc2aabf7dd
feat: allow moving tabs to empty splits 2026-02-04 09:53:18 +01:00
2d2d8a915b
refactor: make tabs.find_next/previous_tab_buffer also return view 2026-02-03 21:31:47 +01:00
09bb80b268
feat: add more accessible keybinds for key hints overlay
closes #21
2026-02-03 21:01:59 +01:00
75fa4408fa
fix: guess completion insertion range by back scanning for trigger chars or word breaks
closes #484
2026-02-03 19:37:51 +01:00
59de78723e
refactor: import Selection directly into completion_dropdown 2026-02-03 19:26:41 +01:00
87e0e06aaf
fix: refresh hover when menus modify their contents
This fixes hover and scroll in palettes and dropdowns.

close #486
2026-02-03 18:45:44 +01:00
d5166e2f68
fix: override cursor focus rendering during dropdown completion 2026-02-03 16:54:00 +01:00
7c61b2dac6
fix: replace tabs in snippets if we are indenting with spaces 2026-02-03 16:38:37 +01:00
56238c776d
fix: clamp cursor to buffer in indent command 2026-02-03 16:20:47 +01:00
5cf52171f2
fix: use word-at-cursor for inserting completion if LSP does not provide a range
This is not perfect in every situation, but seems to be enough to use basic
completion with LSPs that do not send full insert/replace range
information.

closes #475, #484
2026-02-03 16:15:42 +01:00
d298e1ed4c
fix: don't cancel completions in update_completion
This is not needed anymore.
2026-02-03 15:17:24 +01:00
2296930f4d
fix: re-trigger completion if we run out of suggestion matches 2026-02-03 15:15:58 +01:00
8767dc9dc1
fix: do not set completion refresh pending for duplicate requests 2026-02-03 14:46:12 +01:00
b14ff8ac52
refactor: only count scored dropdown entries as matches 2026-02-03 11:37:06 +01:00
41c1e54cac
refactor: add match_count to overlay/dropdown 2026-02-02 21:56:55 +01:00
152eed7847
refactor: adapt mainview module to Buffer text caching API 2026-02-02 21:35:21 +01:00
23504b62cd
refactor: adapt editor module to Buffer text caching API 2026-02-02 21:34:59 +01:00
7ab1480f29
refactor: add log message when enabling or disabling format on save 2026-02-02 17:34:30 +01:00
44356e5d30
fix: forward focus_in/_out events to all mainview widgets 2026-02-02 17:20:12 +01:00
c9dc713537
refactor: display regular tab save state icon in auto_save_mode on_focus_change
As on_focus_change does not save really often the icon showing the save state
may still be very usefull.
2026-02-02 17:20:12 +01:00
6312d44d15
refactor: display regular file state icon in auto_save_mode on_focus_change
As on_focus_change does not save really often the icon showing the save
state may still be very usefull.
2026-02-02 17:20:12 +01:00
70b60a15fa
feat: add auto_save_mode option with new on_input_idle and on_focus_change modes
The original auto_save mode is now called on_document_change. The new
default is on_focus_change.

closes #481
2026-02-02 17:19:40 +01:00
e4ce2fb8e3
fix: crash on long buffer name in filestate widget
And in project state restore.

closes #478
2026-02-01 21:26:32 +01:00
4898f02570
feat: store the last used reflow_width in the editor session 2026-02-01 20:35:09 +01:00
ec71a7041b
feat: reflow current line if there is no selection 2026-02-01 20:20:34 +01:00
a3ea183ba1
fix: completion dropdown must dupe completion data
Because it might be erased by the next completion response.

closes #477
2026-02-01 20:14:16 +01:00
9f775c9ec8
feat: add integer arg support to reflow command 2026-02-01 19:51:48 +01:00
01cbdf8545
fix: every_keystroke completion mode should fallback to automatic when active
This prevents `every_keystroke` mode from re-triggering on every keystroke if a completion
suggestions are already available. Instead it will now filter the returned suggestions
normally. This dramatically reduces load on the LSP.

closes #479
2026-02-01 18:12:51 +01:00
f35e522260
refactor: log number of returned completion if log_execution is on 2026-02-01 17:59:29 +01:00
7cf45d5878
refactor: simplify add_completion_done 2026-02-01 17:59:04 +01:00
99e3e6aeae
fix: update_completion should also update completion query text
Also, resize dropdown based on new completion suggestions.
2026-02-01 17:57:32 +01:00
97745a992a
fix: refresh inital completion cursor position on re-triggers 2026-02-01 17:56:47 +01:00
e45f2ced71
fix: do not constantly re-trigger completion when already completing 2026-02-01 17:56:07 +01:00
485f06f576
refactor: split up completion_dropdown.handle_event function 2026-02-01 17:02:13 +01:00
6adc0b5887
feat: add basic reflow command and keybind (alt+q) 2026-01-31 22:11:53 +01:00
9fb9b45c4d
fix: error.InvalidSwapTabsArgument when using save as on an ephemeral buffer 2026-01-31 20:49:53 +01:00
4858821ebb
feat: add configuration options for editor scrolling parameters 2026-01-31 20:21:30 +01:00
Miguel Granero
705c9b2727 feat: do not show git blame on modified lines 2026-01-30 22:15:40 +01:00
f65082bea9
fix: make sure completion replacment always reaches at least to the cursor
Seems like sometimes LSPs may lag and not include the last entered char in
the selection.
2026-01-30 14:48:02 +01:00
7a3b8e3fce
fix: remove completion de-duplication
Now that requests cannot overlap any duplicates are actually from the LSP.
Deduplication was not working correctly for some LSPs so we just remove it
now.
2026-01-30 14:37:13 +01:00
8c8388c0c2
refactor: simplify completion selection functions 2026-01-30 14:20:06 +01:00
afe39f118b
refactor: execute update_completion async 2026-01-30 13:59:58 +01:00
96137de780
refactor: update completions only if query has changed 2026-01-30 13:59:34 +01:00
a21db7b220
refactor: cancel completion if lsp returns no suggestions 2026-01-30 13:58:00 +01:00
29ac7849c7
refactor: move get_replacement_selection to completion_dropdown 2026-01-30 13:55:23 +01:00
d4eb0d046c
refactor: fix completion updates 2026-01-30 13:22:47 +01:00
b314a4c8c0
refactor: just sort completion list instead of filtering it
Also, fix sorting order of equally ranked entries.
2026-01-30 11:22:49 +01:00
518af3ab45
refactor: major re-work of completion to edit via buffer instead of query
This means completion no longer changes the buffer in anyway until a
completion menu entry is actually selected. This simplifies (or eliminates)
many edge cases and greatly improves multi-cursor support.
2026-01-30 11:20:48 +01:00