Commit graph

97 commits

Author SHA1 Message Date
36c975dc20
fix: prevent different match types from cancelling each other out 2025-11-10 14:12:53 +01:00
f6234e6048
refactor: remove pointless dupe call in move_to_char 2025-11-02 21:35:32 +01:00
223260887d
feat: add underlining keybinds ctrl+_, ctrl+= and ctrl+plus
ctrl+_ => select char to underline with
ctrl+= => underline with '='
ctrl+plus => underline with '=' preserving spaces

closes #350
2025-11-02 21:32:52 +01:00
f727c4882f
refactor: make get_char.options.start optional 2025-11-02 20:40:03 +01:00
b5e591c172
refactor: move_to_char to use new get_char mini mode 2025-11-02 20:28:07 +01:00
28688b49de
refactor: move_to_char mini mode into a reusable get_char mini mode 2025-11-02 20:26:55 +01:00
Igor Támara
8246f2b0ba feat: [hx] r to replace with a character
If no selection, the character under the cursor is replaced, if
selection, each character is replaced by the typed character.
2025-10-30 22:40:53 +01:00
Igor Támara
e76c47e1a6 feat: bar status shows extend or select when on helix mode 2025-10-29 20:58:40 +01: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
3c55ed876b
refactor: allow mocking of root module functions for easier unittesting 2025-10-08 14:18:03 +02:00
bf0d4402ea
refactor: lots more writergate fixes - first successful build 2025-09-25 22:01:29 +02:00
bcef17a466
fix: make sure we don't destroy file_path before navigating in open_file mini mode 2025-09-24 13:59:56 +02:00
30a457158c
feat: add goto_offset mini mode and command 2025-09-17 22:18:20 +02:00
933126e2a0
feat: add support for {row}:{column} syntax in goto mini mode 2025-09-17 20:39:45 +02:00
59921d8e10
feat: restore cursor column when cancelling goto mini mode
This commit refactors the numeric_input mini mode to make the input value
type generic. This allows the goto mini mode to store the origin column
along with the row. Also, this will allow more complex numeric_input modes,
for example a goto mini mode that supports column and row.
2025-09-17 10:04:27 +02:00
4037d67fe9
feat: add support for session local tab_width setting 2025-08-12 12:53:45 +02:00
63a527726a
feat: add support for arguments to mini/numeric_input modes 2025-08-12 12:04:36 +02:00
3e0e75c9c8
feat: add interactive and non-interactive commands to set the current buffer's tab_width 2025-08-11 14:29:23 +02:00
1632061144
refactor: goto minimode into a reusable numeric input minimode 2025-08-11 14:07:11 +02:00
ab0a8f3c2c
feat: show file type icon in open_file completion 2025-08-09 22:20:17 +02:00
1f74ef2559
feat(file_browser): complete into subdirs when there is only one match 2025-08-05 08:28:33 +02:00
261acbc681
feat: use case insenstive matching for file_browser completion 2025-08-05 08:18:49 +02:00
ac9517365d
refactor: clean-up open_file.select 2025-08-04 21:06:54 +02:00
4ee3dd4bba
feat: allow open_file to open directories too
Also, add the full project path to the path entry box.
2025-08-04 20:44:19 +02:00
efdad96054
refactor: improve create pattern to avoid leaks 2025-07-19 00:03:30 +02:00
e39d9ed4b3
fix: render control codes in mini buffer input with unicode control code symbols
closes #236
2025-04-28 16:46:36 +02:00
a1632da329
fix: paste in goto mode 2025-04-21 13:54:22 +02:00
a3a6830043
refactor: re-intruduce move_to_char direction indicator 2025-04-08 10:39:02 +02:00
Levi
fb985a703a
feat: Helix & Vim mode: adding more commands (#218)
* Helix mode: select_left

* select_to_char_right implementation

* Vim select_to_char_left

* Helix select_to_char_left

* Helix & Vim: select_end

* select_to_char_left: Avoid panic with no selection

* select_left_helix: handling panic and shrinking code

* Correcting helix left and right select

* Helix mode: select_left

* select_to_char_right implementation

* Vim select_to_char_left

* Helix select_to_char_left

* Helix & Vim: select_end

* select_to_char_left: Avoid panic with no selection

* select_left_helix: handling panic and shrinking code

* Correcting helix left and right select

* Enable_selection on init_command

* move_to_char modification

* move_or_select

---------

Co-authored-by: CJ van den Berg <cj@vdbonline.com>
2025-04-08 10:28:29 +02:00
b410687339
feat: close results pane if find_in_files mode is cancelled 2025-03-26 12:21:54 +01:00
90bacba8d5
Merge branch 'master' into zig-0.14 2025-02-19 21:36:09 +01:00
d7e162892a
refactor: use an enum to select move_to_char direction instead of a bool 2025-02-14 20:23:19 +01:00
53045123c6
build: update to zig 0.14.0-dev.3039 2025-02-04 22:59:18 +01:00
2f7bee1bef
feat(task): add project tasks 2025-01-25 20:32:01 +01:00
1d947ab499
refactor: improve capsulation and safety of tui module public api 2025-01-23 16:45:04 +01:00
4145460012
refactor: simplify Plane/Widget usage 2025-01-23 16:12:56 +01:00
aa1e0674cc
feat(buffers): move buffer lifetime management to new Buffer.Manager module 2025-01-21 21:42:36 +01:00
ff0987c108
fix: unicode input in mini modes and palettes
closes: #81
2024-12-17 18:35:47 +01:00
3be04c0303
fix: overflow in find_in_files on large input 2024-12-17 17:04:33 +01:00
a5849a7dab
refactor: eliminate generic InvalidArgument errors
InvalidArgument is too generic and makes tracking the source of the
error potentially difficult.
2024-12-12 17:02:11 +01:00
038ed4da2b
refactor: simplify getting the active editor and selection 2024-12-11 20:54:53 +01:00
4b3904d5f2
feat: add find_in_files_query command 2024-12-11 20:50:05 +01:00
3b8982ac26
feat: move all keybind mode related options to keybind config 2024-12-03 23:04:10 +01:00
94fb5119ef
feat: make mode/namespace loading more dynamic and add fallback handling 2024-12-01 00:10:59 +01:00
a9e5c5b262
fix: editor paste 2024-11-22 13:43:15 +01:00
279789d4fa
fix: paste in mini and overlay modes 2024-11-22 12:39:22 +01:00
150374afae
feat: add argument metadata to (most) commands that take parameters 2024-11-21 17:34:11 +01:00
22edc62874
fix: error code in move_to_char 2024-11-20 20:11:11 +01:00
3af2b09891
feat: generate hints for dynamic keybindings 2024-11-19 18:08:14 +01:00