Commit graph

1579 commits

Author SHA1 Message Date
2609ce4fbc
refactor: remove obsolete json config file writing support
json config files can still be read, but no longer written.
2026-01-27 17:39:24 +01:00
32f4bcec3a
fix: do not render vcs blame and diagnostics on the same line
Prefer diagnostics
2026-01-27 15:50:46 +01:00
032b1ae14a
feat: add separate config option for vcs blame alignment 2026-01-27 15:45:56 +01:00
049cecdae6 feat: add commit summary to blame message 2026-01-26 22:31:18 +01:00
ab8d317bbc feat: add toggle_inline_vcs_blame command 2026-01-26 22:31:18 +01:00
0714957357 feat: add config option to toggle inline vcs blame 2026-01-26 22:31:18 +01:00
87b5c7e2a5 fix: git blame causes underline at cursor 2026-01-26 22:31:18 +01:00
ed45b68de8 fix: blame background style with highlight_current_line enabled 2026-01-26 22:31:18 +01:00
c7df7e43d7 refactor: simplify editor.render_blame 2026-01-26 22:31:18 +01:00
7d1809ba57 refactor: switch git blame to incremental output mode
Also, move blame parser and related structures to a new module VcsBlame.

This includes a full parser re-write to take advantage of the slightly
more efficient incremental output format.
2026-01-26 22:31:18 +01:00
Miguel Granero
cb73153fd0 feat: fix blame by offsetting current line with changes 2026-01-26 22:31:18 +01:00
Miguel Granero
90a817066a feat: add git blame with inline display (wip) 2026-01-26 22:31:18 +01:00
3402a54a2e
fix: don't remove secondary cursors when cancelling dropdown completion 2026-01-26 21:41:29 +01:00
fa68164b5e
feat: add more modes to linenumstate status bar widget
There are now four modes.

- default (Ln ln, Col col)
- compact (ln:col)
- total (ln:col/total)
- percent (pct% ln:col)

The mode can be configured in the 'bottom_bar' (or 'top_bar') configuration
option by appending values to the 'linenumber' widget. The format is now as
follows:

'linenumber:{width},{Leader},{DigitStyle},{Mode}'

All values are optional and can be left empty for defaults.

width - minimum width of numeric fields
Leader - 'space' or 'zero'
DigitStyle - 'ascii', 'digital', 'subscript' or 'superscript'
Mode - 'default', 'compact', 'total' or 'percent'

e.g: linenumber:2,zero,,percent

see #470
2026-01-26 15:59:22 +01:00
68b3fe1624
fix: deduplicate completion results
Some LSPs may return duplicate results for some queries, so we no
force de-duplication when loading the completion palettes.

closes #469
2026-01-26 12:36:11 +01:00
8cf18d7481
fix: use scroll_dest instead of the current view position for scroll step calcuation
If we use the current view position to calculate the destination for a scroll
event, then we may effectively lose the difference between view.pos and
scroll_dest if we are still animating a scroll when the new event arrives.
This can happen when scroll events are received really quickly which can
happen with some devices like touchpads or fast scroll wheels.

Now we use the scroll_dest which means that we extend the destination for
animated scrolling instead of overwriting it.
2026-01-25 16:47:24 +01:00
16e26e7e7e
feat: add experimental every_keystroke completion trigger mode 2026-01-23 16:00:53 +01:00
c334a0e1ee
fix: force normalization of all paths on windows
closes #442
2026-01-22 17:33:10 +01:00
3995946471
feat: add option to disable sgr pixel mode support
Defaults to enabled.

closes #440
2026-01-22 16:15:53 +01:00
6d86807e21
refactor: improve type safety of Buffer.Ref values in messages 2026-01-22 15:12:57 +01:00
9b02a8f6e9
refactor: use enum type for buffer references 2026-01-22 14:32:44 +01:00
5438f19015
feat: add alternate select (open in split) to find_in_files mode 2026-01-22 13:37:40 +01:00
03c6e4def0
feat: add show_bottom_bar_grip config option 2026-01-22 13:29:35 +01:00
c04bbe4062
fix: reset background style when rendering status bar grip 2026-01-22 13:06:02 +01:00
Danylo Kondratiev
6cff13f74e feat: [helix] add switch_to_lowercase 2026-01-22 11:42:49 +01:00
Danylo Kondratiev
9dcb5ef978 refactor: replace select_char_if_no_selection with .enable_selection() 2026-01-22 11:42:49 +01:00
faecc90159
refactor: reduce code duplication in close_split/view functions 2026-01-21 23:22:50 +01:00
89ca00ddef
fix: move_page_up and related functions should cancel the selection 2026-01-21 20:25:48 +01:00
d8fa1b28aa
feat: add toggle_completion_insert_mode command 2026-01-21 17:43:32 +01:00
3051cc3b86
refactor: implement completion_insert_mode .insert 2026-01-21 17:40:37 +01:00
d0abaaee2a
refactor: move completion replacement logic to editor 2026-01-21 17:35:09 +01:00
331538de36
fix: detection of case in find mode should use case folding
It was using is_lowercase, which only returns true for lowercase
alpha characters and not other caseless symbols line numeric digits.

Now we check that case_fold is a no-op instead. This has semantics
that better match user expectations as case folding is also used in
the actual search.

closes #460
2026-01-21 10:13:58 +01:00
6c478a97a0
fix: close the correct view when last tab in view is closed 2026-01-20 21:52:58 +01:00
d600e3c353
refactor: keep tab ordering stable when moving tabs between splits 2026-01-20 21:30:47 +01:00
6ce8a2f61d
refactor: try to prevent dangling splits 2026-01-20 21:13:44 +01:00
4f68898f96
refactor: create a split when moving a tab past the last right split 2026-01-20 21:12:47 +01:00
7e8f06396e
refactor: force update tabbar when adding or removing splits 2026-01-20 20:51:23 +01:00
531ec11425
refactor: move tab to end of tab bar if dropped on drop target 2026-01-20 20:29:05 +01:00
8dcbed86aa
refactor: add tab bar drop target to allow dropping tabs in other splits 2026-01-20 20:23:48 +01:00
d891af6553
refactor: allow changing the hover mouse cursor for buttons 2026-01-20 20:13:01 +01:00
a532665afb
fix: make create_scratch_buffer work correctly across splits 2026-01-20 16:16:32 +01:00
dd0e108f76
fix: call create_scratch_buffer syncronously in run_task to improve error handling 2026-01-20 16:15:37 +01:00
f34285d2aa
fix: properly handle closing editors in unfocused splits 2026-01-20 14:42:50 +01:00
0992f08a94
refactor: clean-up some unused stuff 2026-01-20 14:42:25 +01:00
6029c705e6
fix: improve active and focused tab state tracking 2026-01-20 13:48:40 +01:00
95cb63c42a
refactor: render unfocused tabs with style from theme 2026-01-20 13:48:06 +01:00
18f4d9cef3
refactor: add tab bar theme variables for unfocused tabs 2026-01-20 13:46:49 +01:00
abe15a973d
refactor: add mainview get_active_view and get_view_count functions 2026-01-20 13:36:40 +01:00
a1fbd9cf7b
fix: navigate to tab after moving it if it was active before move 2026-01-20 10:49:59 +01:00
45a8f008dd
fix: don't hide terminal cursor when an unfocused primary cursor is off screen 2026-01-19 22:58:43 +01:00