6628 Commits

Author SHA1 Message Date
Pascal Kuthe
205e7ece70
update imara-diff (#13722) 2025-06-14 16:14:27 -04:00
yuri
1315b7e2b1
Feat: inlay hint length limit (#13742) 2025-06-13 11:09:21 -05:00
Lens0021 / Leslie
52192ae29e
Add Amber language server (#13763) 2025-06-13 10:05:21 -05:00
Jonas Köhnen
fba1a6188a
Picker: Detect language before rendering preview (#13761) 2025-06-13 09:29:26 -05:00
polyface
b90d8960a8
added crystal formatter in languages.toml (#13759)
Co-authored-by: polyface <polyface@proton.me>
2025-06-13 09:20:07 -05:00
uncenter
6e4ec96101
Highlight Ecma escape sequences (#13762) 2025-06-13 09:15:40 -05:00
CalebLarsen
62f270e5d2
chore: updated c,c++ highlights (#13747) 2025-06-12 09:28:09 -05:00
idealseal
3b7aaddb13
feat: add neocmakelsp language server (#13740) 2025-06-11 09:00:46 -05:00
Nguyễn Đức Toàn
ab97585b69
feat: add tombi language server (#13723) 2025-06-10 10:35:11 -05:00
yuri
9dbfb9b4eb
Merge formatting options and config.format in range format request (#13734) 2025-06-10 09:55:46 -05:00
Caleb Larsen
091f19f67c chore: updated themes using 'comment.block.documentation' to also use 'comment.line.documentation' 2025-06-10 10:54:05 -04:00
Caleb Larsen
ae3eac8aeb fix: Rust now correctly highlights doc comments as @comment.{block,line}.documentation instead of @comment 2025-06-10 10:54:05 -04:00
dependabot[bot]
fbe9785613
build(deps): bump the rust-dependencies group with 4 updates (#13730)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-10 09:45:32 -05:00
spentbliss
7092e30f8d
feat(colorscheme): add lapis_aquamarine colorscheme (#13726)
Co-authored-by: spentbliss <spentbliss@users.noreply.github.com>
2025-06-10 09:44:30 -05:00
Samuel Ibarra
705d467932
Update languages.toml for Mojo (#13648) 2025-06-10 09:43:00 -05:00
dependabot[bot]
05a4d05646
build(deps): bump which from 7.0.3 to 8.0.0 (#13729)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-10 09:42:04 -05:00
CalebLarsen
2b26d27416
fix: re-ordered and updated python highlights (#13715) 2025-06-08 21:34:37 -04:00
Grey
e773d6cc92
feat: add luau grammars and lsp (#13702)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2025-06-08 15:21:08 -04:00
Michael Davis
633c5fbf0f
Update language loader before refreshing theme in :config-reload
Since locals are handled during parsing instead of highlighting with
tree-house, we need to call `helix_core::syntax::Loader::set_scopes`
before parsing any documents. During `:config-reload` we previously
reloaded the `Loader` and re-parsed documents and _then_ updated the
theme. So documents were parsed before `Loader::set_scopes` was called
on the new loader.

With this change the `refresh_language_config` helper is inlined into
`refresh_config`. Updating the `Editor`'s `ArcSwap` of the loader is
done before updating the theme so that the `load_configured_theme`
helper can call `set_scopes` with on the new loader.
2025-06-08 15:05:22 -04:00
Tan Kian
b75e95862c
Add Pyrefly language server (#13713) 2025-06-08 15:01:01 -04:00
Michael Davis
f4b488e380
Remove unused helix_core::graphemes::is_grapheme_boundary
This function was never used and will be superseded by
`RopeSliceExt::is_grapheme_boundary` (which accepts a byte index rather
than a character index) once we transition to Ropey v2. In the meantime
any callers should convert to byte index and use the `RopeSliceExt`
extension rather than form new dependencies on this.
2025-06-06 18:24:44 -04:00
Michael Davis
7410fe35a3
Update tree-house and bindings to v0.2.0 2025-06-06 17:14:08 -04:00
Axlefublr
637274c4d4
Add rotate_selections_{first,last} commands (#13615) 2025-06-06 15:08:41 -05:00
Michael Davis
01341cbbf6
minor: Add missing call to Vec::clear for a buffer 2025-06-06 12:23:22 -04:00
Michael Davis
b1f4717356
Allow multiple #not-kind-eq? predicates in indent queries
This fixes a regression from the switch to tree-house with one of the
custom predicates in indent queries: `#not-kind-eq?`. This predicate
should be allowed to be written multiple times in a pattern. For example
in the Go indents:

    ; Switches and selects aren't indented, only their case bodies are.
    ; Outdent all closing braces except those closing switches or selects.
    (
        (_ "}" @outdent) @outer
        (#not-kind-eq? @outer "select_statement")
        (#not-kind-eq? @outer "type_switch_statement")
        (#not-kind-eq? @outer "expression_switch_statement")
    )

So instead of an `Option<T>` of one we need a `Vec<T>` and we need to
check that all of these predicates are individually satisfied (basically
`iter().all(/* node kind is not expected kind for that capture */)`).
2025-06-06 12:14:43 -04:00
Michael Davis
25b299abc5
queries: Recognize methods as a locals scope
This fixes a bug in highlighting parameter variables in Go methods.
See <https://redirect.github.com/helix-editor/helix/issues/13674#issuecomment-2935514099>
2025-06-06 11:48:18 -04:00
Michael Davis
4dd4ba798c
Update tree-sitter-rust-format-args
Update repo name and move to latest commit which includes a license
2025-06-06 11:21:26 -04:00
Skyler Hawthorne
ca4ae7f287
set working dir of the lsp command to workspace root (#13691) 2025-06-06 10:16:36 -05:00
Matt Conway
d375f1e7f4
syntax: add grammar and highlighting for the alloy config lang (#13660) 2025-06-06 10:02:30 -05:00
Michael Davis
8d2870b94a
Reuse content buffer in JSONRPC recv for LSP and DAP
Previously `recv` for new messages from the language server or debug
adapter allocated a fresh Vec for each message. Instead we can reuse
the buffer. This resolves TODO comments.

Co-authored-by: Rolo <roloedits@gmail.com>
2025-06-06 10:19:33 -04:00
Michael Davis
f6878f62f7
Set enableDiagnostics in prisma-language-server config
Without this key `prisma-language-server` currently crashes during
initialization. See #13662.
2025-06-03 10:08:49 -04:00
Ryan Mehri
6c43dc4962
fix: trim whitespace up to the last selection on insert_newline (#13673) 2025-06-03 08:45:19 -05:00
dependabot[bot]
1ea9050a5e
build(deps): bump the rust-dependencies group with 2 updates (#13676)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-02 18:27:22 -05:00
Nik Revenco
2baff46b25
fix: Some Incorrect Rust highlights (#13657)
Co-authored-by: Nik Revenco <154856872+NikitaRevenco@users.noreply.github.com>
2025-05-31 09:43:19 -05:00
Jonas Köhnen
921ca08e1b
highlights/go: fix locals clashing with variable.other.member (#13644) 2025-05-31 09:41:19 -05:00
Jeff Bencin
17fb12bcf3
feat: Add Clarity language support (#13647) 2025-05-31 09:11:16 -05:00
Michael Davis
67f1fe20c3
Fix command line completion replacement for quoted items
With a directory with spaces in the name (for example
`mkdir -p 'Temp/Abc Def'`), completing `Temp/Ab` would create a
completion item `'Temp/AbAbc Def'`. Now it correctly completes
`'Temp/Abc Def'`
2025-05-31 09:56:54 -04:00
Michael Davis
8961ae1dc6
Consistently use helix_core::config::default_{lang,config}_loader
This avoids using any custom configuration in a user-defined
`languages.toml` config for the syntax test cases. The test cases should
only use the builtin `languages.toml` config.

Also the xtask crate reimplemented `default_lang_loader` and
`default_lang_config`. These functions are replaced with calls into
`helix_core`.
2025-05-29 09:55:26 -04:00
Tino
3366db0afb
Add Ty language server (#13643) 2025-05-29 08:34:23 -05:00
Erasin Wang
733ebcdaeb
Add file indentation style for statusline (#13632) 2025-05-29 08:20:22 -05:00
CalebLarsen
2bd7452fe0
Make signature_help more like hover, fix overflow and lack of scrolling in signature_help (#13566)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2025-05-27 10:18:12 -05:00
CalebLarsen
7dcddf98c6
Append changes to history on jumps (#13619)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2025-05-27 09:44:47 -05:00
dependabot[bot]
c9e7b0f84f
build(deps): bump the rust-dependencies group with 2 updates (#13621)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-27 08:39:15 -05:00
Axlefublr
2fbe7fc5b5
fix(doc): missing capitalization of goto_{next,prev}_tabstop (#13616) 2025-05-26 08:48:32 -05:00
Zhaith Izaliel
12523cd126
fix: fix support for grammar overlays and include predicate (#13603) (#13613) 2025-05-26 08:47:14 -05:00
Binh Tran
8d58f6ce8d
fix(highlights/ungrammar): improve UX (#13607) 2025-05-25 08:47:10 -05:00
Michael Davis
702a961517
Fix try_restore_indent on non-LF documents
On Windows for example the behavior of this function typically diverges
from the usual behavior on Unix. Instead of checking that the inserted
string starts with `'\n'` (untrue for for CRLF line endings) we need to
check that the first grapheme cluster in the string is a line ending.
(All line endings are single grapheme clusters.)
2025-05-24 11:42:29 -04:00
Nik Revenco
1023e8f964
feat: highlight rust string interpolation macros that use format_args! (#13533)
Co-authored-by: Nik Revenco <154856872+NikitaRevenco@users.noreply.github.com>
2025-05-24 10:02:32 -05:00
Saheed Adeleye
223ceec10a
Add an --insensitive/-i flag for :sort (#13560)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2025-05-24 09:55:48 -05:00
Christian Fredrik Johnsen
cb1ec1b27e fix(tutor): replace unexisting and non existing with nonexistent
Sounds more natural to me.
Just a spelling change.
2025-05-24 10:29:46 -04:00