diff --git a/orgize-lsp/src/completion.rs b/orgize-lsp/src/completion.rs index 5b48c9c..3d66968 100644 --- a/orgize-lsp/src/completion.rs +++ b/orgize-lsp/src/completion.rs @@ -1,6 +1,6 @@ use tower_lsp::lsp_types::{ CompletionItem, CompletionItemKind, CompletionParams, CompletionResponse, CompletionTextEdit, - Position, Range, TextEdit, + InsertTextFormat, Position, Range, TextEdit, }; use crate::Backend; @@ -23,20 +23,23 @@ pub fn completion(params: CompletionParams, backend: &Backend) -> Option ( "ASCI export block", - "#+BEGIN_EXPORT ascii\n\n#+END_EXPORT\n", + "#+BEGIN_EXPORT ascii\n${0}\n#+END_EXPORT\n", + ), + " ("Center block", "#+BEGIN_CENTER\n${0}\n#+END_CENTER\n"), + " ("Comment block", "#+BEGIN_COMMENT\n${0}\n#+END_COMMENT\n"), + " ("Example block", "#+BEGIN_EXAMPLE\n${0}\n#+END_EXAMPLE\n"), + " ("Export block", "#+BEGIN_EXPORT\n${0}\n#+END_EXPORT\n"), + " ( + "HTML export block", + "#+BEGIN_EXPORT html\n${0}\n#+END_EXPORT\n", ), - " ("Center block", "#+BEGIN_CENTER\n\n#+END_CENTER\n"), - " ("Comment block", "#+BEGIN_COMMENT\n\n#+END_COMMENT\n"), - " ("Example block", "#+BEGIN_EXAMPLE\n\n#+END_EXAMPLE\n"), - " ("Export block", "#+BEGIN_EXPORT\n\n#+END_EXPORT\n"), - " ("HTML export block", "#+BEGIN_EXPORT html\n\n#+END_EXPORT\n"), " ( "LaTeX export block", - "#+BEGIN_EXPORT latex\n\n#+END_EXPORT\n", + "#+BEGIN_EXPORT latex\n${0}\n#+END_EXPORT\n", ), - " ("Quote block", "#+BEGIN_QUOTE\n\n#+END_QUOTE\n"), - " ("Source block", "#+BEGIN_SRC\n\n#+END_SRC\n"), - " ("Verse block", "#+BEGIN_VERSE\n\n#+END_VERSE\n"), + " ("Quote block", "#+BEGIN_QUOTE\n${0}\n#+END_QUOTE\n"), + " ("Source block", "#+BEGIN_SRC ${1}\n${0}\n#+END_SRC\n"), + " ("Verse block", "#+BEGIN_VERSE\n${0}\n#+END_VERSE\n"), _ => return None, }; @@ -44,8 +47,9 @@ pub fn completion(params: CompletionParams, backend: &Backend) -> Option