diff options
Diffstat (limited to 'common/config/nvim/lua/plugins/neodev.lua')
| -rwxr-xr-x | common/config/nvim/lua/plugins/neodev.lua | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/common/config/nvim/lua/plugins/neodev.lua b/common/config/nvim/lua/plugins/neodev.lua new file mode 100755 index 0000000..07843e1 --- /dev/null +++ b/common/config/nvim/lua/plugins/neodev.lua @@ -0,0 +1,45 @@ +local M = {} + +--- Setup and configure neodev +-- This function initializes neodev with configurations for better Lua development experience +-- @return boolean True if setup was successful, false otherwise +function M.setup() + local ok, neodev = pcall(require, 'neodev') + if not ok then + return false + end + + neodev.setup({ + --library = { plugins = { "nvim-dap-ui" }, types = true }, + --library = { plugins = { "neotest" }, types = true }, + library = { + enabled = true, -- when not enabled, neodev will not change any settings to the LSP server + -- these settings will be used for your Neovim config directory + runtime = true, -- runtime path + types = true, -- full signature, docs and completion of vim.api, vim.treesitter, vim.lsp and others + --plugins = { "neotest" }, + --{ "nvim-dap-ui" }, + --plugins = true, -- installed opt or start plugins in packpath + -- you can also specify the list of plugins to make available as a workspace library + -- plugins = { "nvim-treesitter", "plenary.nvim", "telescope.nvim" }, + plugins = { "nvim-treesitter", "plenary.nvim", "telescope.nvim", "neotest", "nvim-dap-ui" }, + }, + setup_jsonls = true, -- configures jsonls to provide completion for project specific .luarc.json files + -- for your Neovim config directory, the config.library settings will be used as is + -- for plugin directories (root_dirs having a /lua directory), config.library.plugins will be disabled + -- for any other directory, config.library.enabled will be set to false + override = function(root_dir, options) + end, + -- With lspconfig, Neodev will automatically setup your lua-language-server + -- If you disable this, then you have to set {before_init=require("neodev.lsp").before_init} + -- in your lsp start options + lspconfig = true, + -- much faster, but needs a recent built of lua-language-server + -- needs lua-language-server >= 3.6.0 + pathStrict = true, + }) + + return true +end + +return M |
