281b9e47a1
refactor: add reflow support for markdown list entries
2026-01-31 22:31:16 +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
05959d99be
fix: start diffz parsing with new line
2026-01-30 22:15:40 +01:00
Miguel Granero
705c9b2727
feat: do not show git blame on modified lines
2026-01-30 22:15:40 +01:00
Miguel Granero
674c1b0a83
fix: correct diff parsing for better gutter representation of changes
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
211648b2c9
refactor: add some more explicit error handling to Editor.copy_selection
...
This removes NoSpaceLeft as a possible error case, which should be impossible.
2026-01-30 09:14:28 +01:00
94aa462a8d
refactor: allow updating of completions
2026-01-29 20:59:49 +01:00
725862a394
feat: add toggle_inline_vcs_blame keybind
2026-01-29 16:01:46 +01:00
38e681f7bf
fix: apply completion de-duplication fix to completion_palette too
2026-01-29 16:01:20 +01:00
4847a1f584
feat: add support for absolute paths to LSP and formatter binaries
...
Also, refactor binary resolving functions into the bin_path module.
closes #474
2026-01-29 15:28:52 +01:00
d24f335465
fix: reset cursor color and state before every frame
...
closes #20
2026-01-29 14:43:59 +01:00
f094c7ec27
refactor: simplify Editor cursor handling
2026-01-29 14:43:26 +01:00
8421f56828
fix: ignore spurious click events in Editor
...
closes #471
2026-01-29 12:39:04 +01:00
721370d1ba
fix: completion de-duplication should not require LSP to send sort text
...
fixes #472
2026-01-28 21:38:59 +01:00
6603e60951
refactor: minor simplification
2026-01-28 18:13:55 +01:00
Miguel Granero
9ab1b78a53
feat: fix blame by offsetting current line with changes
...
Reappied.
see #468
2026-01-28 18:07:03 +01:00
640904addd
fix: handle replacement completion ranges in Editor.replicate_selection
2026-01-28 17:49:22 +01:00
d123e87b52
docs: output a message on how to manually restart if restart fails
...
closes #19
2026-01-28 10:42:30 +01:00
42eb56493c
fix: better support multicursor completion
...
closes #467
2026-01-27 22:21:49 +01:00
1b9c718ba7
refactor: add Editor.has_secondary_cursors()
2026-01-27 20:28:59 +01:00
52ec22a18c
docs: improve config file documentation
...
Add a header and show default values.
2026-01-27 17:40:46 +01:00
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
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