From 6a94b71a7c49ebada9329a1bda6f6279c7a3cc2e Mon Sep 17 00:00:00 2001
From: Patrick Auernig <patrick.auernig@mykolab.com>
Date: Sat, 21 Oct 2023 17:16:25 +0200
Subject: [PATCH] Add neodev for better completion within lua config

---
 lazy-lock.json                       |  1 +
 lua/.luarc.json                      |  3 +++
 lua/valeth/plugins/lsp/init.lua      |  4 ----
 lua/valeth/plugins/lsp/lspconfig.lua | 13 +++++++++++++
 4 files changed, 17 insertions(+), 4 deletions(-)
 create mode 100644 lua/.luarc.json

diff --git a/lazy-lock.json b/lazy-lock.json
index afae64f..66f27e9 100644
--- a/lazy-lock.json
+++ b/lazy-lock.json
@@ -20,6 +20,7 @@
   "mason-lspconfig.nvim": { "branch": "main", "commit": "e7b64c11035aa924f87385b72145e0ccf68a7e0a" },
   "mason-nvim-dap.nvim": { "branch": "main", "commit": "f0cd12f7a8a310c58cecebddb6b219ffad1cfd0f" },
   "mason.nvim": { "branch": "main", "commit": "cd7835b15f5a4204fc37e0aa739347472121a54c" },
+  "neodev.nvim": { "branch": "main", "commit": "da1562e1e3df0e994ddc52cb4ba22376a5d7f2fc" },
   "neogit": { "branch": "master", "commit": "eb9d6b8f0840e4f2fa775bca7ec4a5df8b42ed6d" },
   "nvim-autopairs": { "branch": "master", "commit": "f6c71641f6f183427a651c0ce4ba3fb89404fa9e" },
   "nvim-cmp": { "branch": "main", "commit": "5dce1b778b85c717f6614e3f4da45e9f19f54435" },
diff --git a/lua/.luarc.json b/lua/.luarc.json
new file mode 100644
index 0000000..23b9ee2
--- /dev/null
+++ b/lua/.luarc.json
@@ -0,0 +1,3 @@
+{
+    "workspace.checkThirdParty": false
+}
\ No newline at end of file
diff --git a/lua/valeth/plugins/lsp/init.lua b/lua/valeth/plugins/lsp/init.lua
index 68ed079..04aebf3 100644
--- a/lua/valeth/plugins/lsp/init.lua
+++ b/lua/valeth/plugins/lsp/init.lua
@@ -21,10 +21,6 @@ spec.config = function()
         }
     })
 
-    local lsp_config = require("lspconfig")
-
-    lsp_config.lua_ls.setup(lsp_zero.nvim_lua_ls())
-
     lsp_zero.setup()
 
     vim.diagnostic.config({
diff --git a/lua/valeth/plugins/lsp/lspconfig.lua b/lua/valeth/plugins/lsp/lspconfig.lua
index d096b4a..b4b31a1 100644
--- a/lua/valeth/plugins/lsp/lspconfig.lua
+++ b/lua/valeth/plugins/lsp/lspconfig.lua
@@ -4,6 +4,7 @@ local spec = {
 
 spec.dependencies = {
     "nvim-telescope/telescope.nvim",
+    "folke/neodev.nvim",
 }
 
 spec.config = function()
@@ -31,6 +32,18 @@ spec.config = function()
         end
     })
 
+    require("neodev").setup()
+
+    lsp_config.lua_ls.setup {
+        settings = {
+            Lua = {
+                completion = {
+                    callSnippet = "Replace"
+                }
+            }
+        }
+    }
+
     lsp_config.rust_analyzer.setup {
         settings = {
             ["rust-analyzer"] = {