diff --git a/lua/lazyvim/plugins/extras/coding/neogen.lua b/lua/lazyvim/plugins/extras/coding/neogen.lua new file mode 100644 index 00000000..88f7dd54 --- /dev/null +++ b/lua/lazyvim/plugins/extras/coding/neogen.lua @@ -0,0 +1,35 @@ +return { + "danymat/neogen", + cmd = "Neogen", + keys = { + { + "cn", + function() + require("neogen").generate() + end, + desc = "Generate Annotations (Neogen)", + }, + }, + opts = function(_, opts) + if opts.snippet_engine ~= nil then + return + end + + local map = { + ["LuaSnip"] = "luasnip", + ["nvim-snippy"] = "snippy", + ["vim-vsnip"] = "vsnip", + } + + for plugin, engine in pairs(map) do + if LazyVim.has(plugin) then + opts.snippet_engine = engine + return + end + end + + if vim.snippet then + opts.snippet_engine = "nvim" + end + end, +}