From 0914b7d4e92298497f6c040ca4c9fc5d82e6c116 Mon Sep 17 00:00:00 2001 From: Sonny Piers Date: Sat, 1 Jun 2024 12:50:47 +0300 Subject: [PATCH] lsp: Use snippet for object completion --- blueprintcompiler/completions.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/blueprintcompiler/completions.py b/blueprintcompiler/completions.py index 0a43388..a5310c6 100644 --- a/blueprintcompiler/completions.py +++ b/blueprintcompiler/completions.py @@ -101,7 +101,12 @@ def object_completer(lsp, ast_node, match_variables): ns = ast_node.root.gir.namespaces.get(match_variables[0]) if ns is not None: for c in ns.classes.values(): - yield Completion(c.name, CompletionItemKind.Class, docs=c.doc) + yield Completion( + c.name, + CompletionItemKind.Class, + docs=c.doc, + snippet=f"{c.name} {{\n $0\n}}", + ) @completer( @@ -112,7 +117,12 @@ def gtk_object_completer(lsp, ast_node, match_variables): ns = ast_node.root.gir.namespaces.get("Gtk") if ns is not None: for c in ns.classes.values(): - yield Completion(c.name, CompletionItemKind.Class, docs=c.doc) + yield Completion( + c.name, + CompletionItemKind.Class, + docs=c.doc, + snippet=f"{c.name} {{\n $0\n}}", + ) @completer(