fix: resolve #986 avoid wrong offset on Neovim for some postfix snippets (#966)

* fix: avoid additional text_edit

* unify redundant to_lsp_snippet

* fix: remove redundant default_postfix_snippet

* fix: with single complete

* clean import

* chore: revert move to_lsp_snippet
This commit is contained in:
Yifan Song 2024-12-18 04:27:52 +01:00 committed by GitHub
parent b1bb3196b7
commit 5f8a11bdc0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -227,13 +227,15 @@ impl CompletionContext<'_> {
let node_content = node.get().clone().into_text();
let before = TextEdit {
range: self.ctx.to_lsp_range(rng.start..self.from, &src),
new_text: node_before_before_cursor.into(),
new_text: String::new(),
};
self.completions.push(Completion {
apply: Some(eco_format!("{node_before}{node_content}{node_after}")),
apply: Some(eco_format!(
"{node_before_before_cursor}{node_before}{node_content}{node_after}"
)),
additional_text_edits: Some(vec![before]),
..base.clone()
..base
});
} else {
let before = TextEdit {