about summary refs log tree commit diff
path: root/.config/nvim/lua/plugins/cmp.lua
diff options
context:
space:
mode:
authorvenomade <venomade@venomade.com>2026-02-11 11:42:58 +0000
committervenomade <venomade@venomade.com>2026-02-11 11:42:58 +0000
commit0bd150185551b6d8835d022c15a5f6e832d51113 (patch)
tree10bf3f3443df49a44eb47b328b73b7e76b0a4924 /.config/nvim/lua/plugins/cmp.lua
parent8d688d1107c46b6dfdcaf02fa5c9c4c8a4640e65 (diff)
Asahi
Soft reset of dotfiles specific to Asahi, Sway and Neovim.
Diffstat (limited to '.config/nvim/lua/plugins/cmp.lua')
-rw-r--r--.config/nvim/lua/plugins/cmp.lua51
1 files changed, 44 insertions, 7 deletions
diff --git a/.config/nvim/lua/plugins/cmp.lua b/.config/nvim/lua/plugins/cmp.lua
index 79bf9ac..541e62c 100644
--- a/.config/nvim/lua/plugins/cmp.lua
+++ b/.config/nvim/lua/plugins/cmp.lua
@@ -12,7 +12,10 @@ return {
     local cmp = require('cmp')
     local lspkind = require('lspkind')
     cmp.setup({
-      preselect = 'none',
+      -- preselect = cmp.PreselectMode.None,
+      completion = {
+        completeopt = "menu,menuone,noinsert",
+      },
       window = {
         completion = cmp.config.window.bordered({}),
         documentation = cmp.config.window.bordered({}),
@@ -23,11 +26,10 @@ return {
         end
       },
       mapping = cmp.mapping.preset.insert({
-        -- ['<CR>'] = cmp.mapping.confirm({ select = true }),
-        ['<C-t>'] = cmp.mapping.complete(),
-        ['<CR>'] = cmp.mapping.confirm(),
-        ['<Tab>'] = cmp.mapping.select_next_item(),
-        ['<S-Tab>'] = cmp.mapping.select_prev_item(),
+        ['<Tab>'] = cmp.mapping.confirm({ select = true }),
+        ['<C-n>'] = cmp.mapping.select_next_item(),
+        ['<C-p>'] = cmp.mapping.select_prev_item(),
+        ['<C-g>'] = cmp.mapping.abort(),
       }),
       sources = cmp.config.sources(
         {
@@ -53,8 +55,43 @@ return {
 
     local capabilities = require('cmp_nvim_lsp').default_capabilities()
     vim.lsp.config('lua_ls', {
-      capabilities = capabilities
+      cmd = { '/home/venomade/.local/share/lua-language-server/bin/lua-language-server' },
+      capabilities = capabilities,
+      root_markers = {
+        ".luarc.json",
+        ".luarc.jsonc",
+        ".git",
+      },
+      settings = {
+        Lua = {
+          runtime = {
+            version = 'Lua 5.4',
+            -- luarocks path --lr-path | tr ';' '\n' | sed 's/?.*//' | sort -u
+            path = {
+              '?.lua',
+              '?/init.lua',
+              '/home/venomade/.luarocks/share/lua/5.4/?.lua',
+              '/home/venomade/.luarocks/share/lua/5.4/?/init.lua',
+              '/usr/share/lua/5.4/?.lua',
+              '/usr/share/lua/5.4/?/init.lua',
+              './stubs/?.lua',
+              './stubs/?/init.lua'
+            },
+          },
+          workspace = {
+            library = {
+              '/home/venomade/.luarocks/share/lua/5.4',
+              '/usr/share/lua/5.4',
+              './stubs'
+            },
+          },
+          diagnostics = {
+            enable = true,
+          },
+        },
+      },
     })
+
     vim.lsp.enable('lua_ls')
     vim.lsp.config('clangd', {
       capabilities = capabilities