Commit graph

2762 commits

Author SHA1 Message Date
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
079e9bee22
docs: fix config file path in online help
see neurocyte/flow-website#22
2026-01-26 16:17:31 +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
8a1c5f5fba
feat: add uuidgen keybind 2026-01-23 16:01:19 +01:00
16e26e7e7e
feat: add experimental every_keystroke completion trigger mode 2026-01-23 16:00:53 +01:00
775d08b88d
build: add last common base commit info to version info 2026-01-22 18:01:10 +01:00
c334a0e1ee
fix: force normalization of all paths on windows
closes #442
2026-01-22 17:33:10 +01:00
07f1446616
build: fix gui build 2026-01-22 16:47:53 +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
2ee92d2548
refactor: move TypedInt to a module 2026-01-22 15:34:19 +01:00
6d86807e21
refactor: improve type safety of Buffer.Ref values in messages 2026-01-22 15:12:57 +01:00
0abfabc365
build: update thespian for enum cborExtract support 2026-01-22 14:55:59 +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
c85d52dac0
feat: enable highlight_references on idle by default 2026-01-21 23:07:49 +01:00
89ca00ddef
fix: move_page_up and related functions should cancel the selection 2026-01-21 20:25:48 +01:00
f24ecdaed3
feat: add ctrl+k r keybind for toggle_completion_insert_mode 2026-01-21 18:48:24 +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
9729bae7be
feat: add completion_insert_mode configuration option 2026-01-21 17:35:39 +01:00
d0abaaee2a
refactor: move completion replacement logic to editor 2026-01-21 17:35:09 +01:00
77379a58cf
refactor: fix previous commit 2026-01-21 12:19:56 +01:00
95735ada9a
refactor: clean-up build script warnings 2026-01-21 12:15:20 +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
ee37dc8730
fix: windows build 2026-01-21 09:39:41 +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
dac695f010
refactor: add generic renderer.request_mouse_cursor function 2026-01-20 20:12:38 +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
a7d4fc5729
refactor: add command.fmtbuf
This is useful for recursive command calling to avoid overwriting the
global command arguments buffer.
2026-01-20 16:13:40 +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