Add support for insert_text_mode of a completion (#28171)

I wanted this for CONL (https://conl.dev )'s nascent langauge server,
and it seems like most of the support was already wired up on the LSP
side, so this surfaces it into the editor.

Release Notes:

- Added support for the `insert_text_mode` field of completions from the
language server protocol.
This commit is contained in:
Conrad Irwin 2025-04-07 10:35:11 -06:00 committed by GitHub
parent 5a7222edc5
commit a577a72f69
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 91 additions and 4 deletions

View file

@ -704,8 +704,15 @@ impl LanguageServer {
}),
insert_replace_support: Some(true),
label_details_support: Some(true),
insert_text_mode_support: Some(InsertTextModeSupport {
value_set: vec![
InsertTextMode::AS_IS,
InsertTextMode::ADJUST_INDENTATION,
],
}),
..Default::default()
}),
insert_text_mode: Some(InsertTextMode::ADJUST_INDENTATION),
completion_list: Some(CompletionListCapability {
item_defaults: Some(vec![
"commitCharacters".to_owned(),