diff options
author | Freya Murphy <freya@freyacat.org> | 2025-06-25 00:00:37 -0400 |
---|---|---|
committer | Freya Murphy <freya@freyacat.org> | 2025-06-25 00:00:37 -0400 |
commit | ec64ebc186833c3a4512ca98a9e579de8ab7f800 (patch) | |
tree | 207461aa6fc3fbe78e3ee0fd04b8a6238edea40f | |
parent | remove unused firefox extensions (diff) | |
download | dotfiles-nix-ec64ebc186833c3a4512ca98a9e579de8ab7f800.tar.gz dotfiles-nix-ec64ebc186833c3a4512ca98a9e579de8ab7f800.tar.bz2 dotfiles-nix-ec64ebc186833c3a4512ca98a9e579de8ab7f800.zip |
fix neovim lsps, add lua_ls
-rw-r--r-- | home/neovim/config.nix | 9 | ||||
-rw-r--r-- | home/neovim/init.lua | 22 | ||||
-rw-r--r-- | hosts/shinji/default.nix | 1 | ||||
-rw-r--r-- | modules/development/default.nix | 4 |
4 files changed, 18 insertions, 18 deletions
diff --git a/home/neovim/config.nix b/home/neovim/config.nix index a0c66dd..be74ddc 100644 --- a/home/neovim/config.nix +++ b/home/neovim/config.nix @@ -60,6 +60,15 @@ in jdtls = {}; kotlin_language_server = {}; } + // optionalAttrs config.development.lua { + lua_ls = { + Lua = { + diagnostics = { + globals = ["vim"]; + }; + }; + }; + } // optionalAttrs config.development.rust { rust_analyzer = {}; } diff --git a/home/neovim/init.lua b/home/neovim/init.lua index 2be7fee..a26363f 100644 --- a/home/neovim/init.lua +++ b/home/neovim/init.lua @@ -12,20 +12,6 @@ local function bind(key, action, opts) vim.keymap.set('n', key, action, opts) end -local function join(left, right) - if not left then return right end - if not right then return left end - for k,v in pairs(right) do - local lv, rv = left[k], right[k] - if type(rv) == "table" then - left[k] = join(lv, rv) - else - left[k] = rv - end - end - return left -end - --[[ VIM ]]-- vim.opt.tabstop = config.tabwidth @@ -318,12 +304,12 @@ require('todo-comments').setup() --[[ LSP SERVER ]]-- local lspconfig = require('lspconfig') -local capabilities = require('cmp_nvim_lsp').default_capabilities() +local capabilities = require('cmp_nvim_lsp').default_capabilities() -for lsp,config in pairs(config.lsps) do - local config = join(capabilities, config) +for lsp,settings in pairs(config.lsps) do lspconfig[lsp].setup { - capabilities = config, + capabilities = capabilities, + settings = settings, } end diff --git a/hosts/shinji/default.nix b/hosts/shinji/default.nix index 74f3052..5c39012 100644 --- a/hosts/shinji/default.nix +++ b/hosts/shinji/default.nix @@ -50,6 +50,7 @@ }; development = { c = true; + lua = true; rust = true; web = true; }; diff --git a/modules/development/default.nix b/modules/development/default.nix index 24c885d..c5666a5 100644 --- a/modules/development/default.nix +++ b/modules/development/default.nix @@ -10,6 +10,7 @@ in { options.development = { c = mkEnableOption "Enable c/c++ development tools."; java = mkEnableOption "Enable java/kotlin development tools."; + lua = mkEnableOption "Enable lua development tools."; rust = mkEnableOption "Enable rust development tools."; web = mkEnableOption "Enable web development tools."; zig = mkEnableOption "Enable zig development tools."; @@ -26,6 +27,9 @@ in { nasm pkg-config ]) + ++ (optionals cfg.lua [ + lua-language-server + ]) ++ (optionals cfg.rust [ rustc rustfmt |