diff --git a/lua/cp/snippets.lua b/lua/cp/snippets.lua index b20a847..da8d91f 100644 --- a/lua/cp/snippets.lua +++ b/lua/cp/snippets.lua @@ -70,12 +70,23 @@ int main() {{ ), } - local user_snippets = {} - for _, snippet in pairs(config.snippets or {}) do - table.insert(user_snippets, snippet) + local default_map = {} + for _, snippet in pairs(default_snippets) do + default_map[snippet.trigger] = snippet + end + + local user_map = {} + for _, snippet in pairs(config.snippets or {}) do + user_map[snippet.trigger] = snippet + end + + local merged_map = vim.tbl_extend("force", default_map, user_map) + + local all_snippets = {} + for _, snippet in pairs(merged_map) do + table.insert(all_snippets, snippet) end - local all_snippets = vim.list_extend(default_snippets, user_snippets) ls.add_snippets("cpp", all_snippets) end diff --git a/readme.md b/readme.md index 79f326a..e195627 100644 --- a/readme.md +++ b/readme.md @@ -28,6 +28,7 @@ https://private-user-images.githubusercontent.com/62671086/489116291-391976d1-c2 ## TODO +- finer-tuned problem limits (i.e. per-problem codeforces time, memory) - better highlighting - test case management - USACO support