Commit graph

6352 commits

Author SHA1 Message Date
Nikita Revenco
6dbb09f1fa style: format mod.rs 2025-02-18 14:45:13 +00:00
Nikita Revenco
e6e80e2185 fix: remove unneeded panics 2025-02-18 14:27:11 +00:00
Nikita Revenco
a97ebc2ed0 style: format 2025-02-18 14:17:31 +00:00
Nikita Revenco
4fabd7927d refactor: remove unneeded macro 2025-02-18 14:08:16 +00:00
Nikita Revenco
24bd14863b feat: restore cursor when performing file operations 2025-02-18 14:04:10 +00:00
Nikita Revenco
9227267aa3 chore: remove TODO comment 2025-02-18 13:52:09 +00:00
Nikita Revenco
8eac1c2721 feat: refresh picker when directory operations are performed 2025-02-18 13:11:37 +00:00
Nikita Revenco
fac6c7c1a6 chore: appease clippy 2025-02-18 12:38:27 +00:00
Nikita Revenco
b6bbd4f18a fix: delete path, not confirmation e.g. y 2025-02-18 12:38:11 +00:00
Nikita Revenco
6a558be7b3 feat: better initial prompts when using file picker commands 2025-02-18 12:36:54 +00:00
Nikita Revenco
0e6e3e8aeb refactor: rename variable 2025-02-18 12:24:45 +00:00
Nikita Revenco
cd6584f0ab chore: appease clippy 2025-02-18 12:20:37 +00:00
Nikita Revenco
baddacfe20 docs: add file explorer keymap info 2025-02-18 12:19:20 +00:00
Nikita Revenco
382803c803 feat: add confirmation prompt when overwriting 2025-02-18 12:15:35 +00:00
Nikita Revenco
e177c48208 refactor: use Option<Result> to indicate if a status message should not be changed 2025-02-18 11:42:03 +00:00
Nikita Revenco
a099ae1dbe style: formatting 2025-02-18 11:33:01 +00:00
Nikita Revenco
eafd8ace18 style: formatting 2025-02-18 11:28:30 +00:00
Nikita Revenco
eecabdbeb5 feat: pass context to all callbacks in file operations 2025-02-18 11:16:15 +00:00
Nikita Revenco
7fd7b7274a feat: implement copy path of selected item 2025-02-18 11:11:02 +00:00
Nikita Revenco
b3d0f16276 feat: use display method on paths 2025-02-18 10:48:38 +00:00
Nikita Revenco
835cda11f1 refactor: variable renaming 2025-02-18 10:27:58 +00:00
Nikita Revenco
a96841dac1 feat: implement copying 2025-02-17 23:54:37 +00:00
Nikita Revenco
469115e5ee feat: implement delete files 2025-02-17 23:46:04 +00:00
Nikita Revenco
f59c5966f6 feat: implement creating new files and directory 2025-02-17 23:37:58 +00:00
Nikita Revenco
2eef82e4df feat: implement basic callback functions for prompt operarions 2025-02-17 23:08:17 +00:00
Nikita Revenco
7dc631de9a chore: allow macro to destructure 2025-02-17 22:24:13 +00:00
Nikita Revenco
43f40d318f chore: add TODO comments 2025-02-17 22:08:31 +00:00
Nikita Revenco
d5fb7b2999 refactor: improve the declare_key_handlers macro 2025-02-17 21:54:45 +00:00
Nikita Revenco
5d29a175f3 refactor: utility macro to declare multiple handlers with ease 2025-02-17 21:41:23 +00:00
Nikita Revenco
9a28d4fa42 feat: create operations for create, delete, copy, rename in file explorer 2025-02-17 21:22:51 +00:00
Nikita Revenco
f4e5c26112 feat: figure out how to pass custom callback function set by keymap to picker 2025-02-17 21:09:04 +00:00
Nikita Revenco
87b5bd58bc feat: add API to register additional hooks with Pickrs 2025-02-17 20:53:14 +00:00
Nikita Revenco
1b89f998e8
fix: Rust highlights (regression from the reverse-query-precedence PR) (#12795)
Co-authored-by: Nikita Revenco <154856872+NikitaRevenco@users.noreply.github.com>
2025-02-07 08:51:22 -06:00
Jonas Köhnen
c36ed6ad92
feat(themes): add ui.text.directory to gruber-darker (#12797) 2025-02-06 09:31:36 -06:00
Michael Davis
18b9eb9e06
Update tree-sitter-erlang
This is for packaging reasons, previously the license identifier in
`package.json` accidentally listed MIT instead of Apache-2.0
2025-02-05 20:22:38 -05:00
Gabriel Dinner-David
b0e1eaf50d
reverse zig highlights (#12777) 2025-02-04 20:38:15 -06:00
Drew Zemke
a36730cb21
add support for the FGA language (#12763) 2025-02-04 11:06:22 -06:00
uncenter
75abc23428
Add Tera templating language support (#12756) 2025-02-04 10:56:36 -06:00
Michael Davis
313a6479b1
LSP: Properly discard out-of-date diagnostics
Previously the `filter` caused the diagnostics to not be attached to the
document - which is good - but the out-of-date diagnostics were still
inserted into the global (editor-wide) diagnostic set. Instead we should
completely discard out-of-date diagnostics.
2025-02-04 10:39:49 -05:00
Michael Davis
62625eda46
LSP: Move diagnostic handling from Application to Editor
There is no functional change to the move - it's just moving the code
into helix-view under a new method `Editor::handle_lsp_diagnostics` -
thought there is a typo fix, the removal of an unnecessary clone (for
the document's language config) and the removal of some nesting.

Co-authored-by: Sofus Addington <sofus@addington.dk>
2025-02-04 10:39:42 -05:00
Michael Davis
16ff06370f
queries: Remove (ERROR) from all highlights
We do not highlight `(ERROR)` nodes since the highlighting is quite
noisy while typing. Also see todo comments in `syntax.rs` - we could
introduce configuration in the future to prepend `(ERROR)` to a
language's highlights query.
2025-02-04 09:35:38 -05:00
Robin Heggelund Hansen
ee33a84489
Update highlights.scm for Gren language (#12769) 2025-02-04 08:34:59 -06:00
Niklas Wallgren
1258111394
Print full error chain when failing to load grammar (#12744) 2025-02-04 08:18:54 -06:00
Michael Davis
26db54155e
DAP: Drain pending requests on recv failure
This matches <https://redirect.github.com/helix-editor/helix/pull/4852>
for the DAP transport: when there is a failure to receive a message from
the debugger we should drain all pending requests and respond to them
with the StreamClosed error.

This improves the behavior when a debugger fails to initialize, for
example starting debugpy without debugpy installed. Previously the UI
would freeze until the request timed out. Now it instantly prints a
statusline error saying that the debugger failed to start up.
2025-02-04 09:09:54 -05:00
Michael Davis
d456377821
minor: Remove double BufReader wrapper in DAP client
`reader` is already a `BufReader` so there's no need to wrap it in
another `BufReader`. This is a typo/mistake made possible by the type
erasure (a `Box<BufReader<BufReader<T: Read>>>` is also a boxed reader).
2025-02-04 08:52:09 -05:00
Michael Davis
d0d16931e3
DAP: Configure child process stderr as piped
By default this is `Stdio::inherit` which sends stderr from the child
process to Helix. Instead we should use `Stdio::piped` which allows us
to read the piped output.

We can also expect that the stderr opens now (it should similarly to
stdout), so that we always start a reader for stderr like the LSP
client.
2025-02-04 08:51:46 -05:00
dependabot[bot]
8995ccaae2
build(deps): bump the rust-dependencies group with 4 updates (#12766)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-03 17:37:46 -06:00
Michael Davis
066e938ba0
Add copy_between_registers for interactive register copying 2025-02-02 20:49:25 -05:00
Michael Davis
e882a750ea
commands: Eagerly clear autoinfo in select_register, insert_register
This causes the infobox to disappear even when you type a non-character
key like escape. For example `"<esc>` now clears the infobox where
before it was left hanging.
2025-02-02 20:45:25 -05:00
Michael Davis
ebdab86ce6
minor: Prefer stable core::num::abs_diff to polyfill
This function was made stable in Rust 1.60.0 so we no longer need to
polyfill.
2025-02-02 20:42:55 -05:00