4
4
5
5
--- @class blink.cmp.Snippet
6
6
--- @field prefix string
7
- --- @field body string
7
+ --- @field body string[]
8
8
--- @field description ? string
9
9
10
10
local registry = {
@@ -49,7 +49,9 @@ function registry:get_snippets_for_ft(filetype)
49
49
local snippets = vim .json .decode (contents )
50
50
for _ , key in ipairs (vim .tbl_keys (snippets )) do
51
51
local snippet = utils .read_snippet (snippets [key ], key )
52
- loaded_snippets = vim .tbl_deep_extend (' force' , {}, loaded_snippets , snippet )
52
+ for snippet_name , snippet_def in pairs (snippet ) do
53
+ loaded_snippets [snippet_name ] = snippet_def
54
+ end
53
55
end
54
56
end
55
57
end
@@ -59,7 +61,9 @@ function registry:get_snippets_for_ft(filetype)
59
61
local snippets = vim .json .decode (contents )
60
62
for _ , key in ipairs (vim .tbl_keys (snippets )) do
61
63
local snippet = utils .read_snippet (snippets [key ], key )
62
- loaded_snippets = vim .tbl_deep_extend (' force' , {}, loaded_snippets , snippet )
64
+ for key , snippet in pairs (snippet ) do
65
+ loaded_snippets [key ] = snippet
66
+ end
63
67
end
64
68
end
65
69
end
@@ -107,7 +111,7 @@ function registry:snippet_to_completion_item(snippet)
107
111
kind = vim .lsp .protocol .CompletionItemKind .Snippet ,
108
112
label = snippet .prefix ,
109
113
insertTextFormat = vim .lsp .protocol .InsertTextFormat .Snippet ,
110
- insertText = snippet .body ,
114
+ insertText = table.concat ( snippet .body , ' \n ' ) ,
111
115
description = snippet .description ,
112
116
}
113
117
end
0 commit comments