diff --git a/users/profiles/neovim/coc/default.nix b/users/profiles/neovim/coc/default.nix new file mode 100644 index 0000000..ce8ca3a --- /dev/null +++ b/users/profiles/neovim/coc/default.nix @@ -0,0 +1,40 @@ +{ pkgs, config, ... }: +{ + target = "${config.xdg.configHome}/nvim/coc-settings.json"; + text = '' + { + "coc.preferences.formatOnSaveFiletypes": [ + "css", + "markdown", + "javascript", + "typescript" + ], + "prettier.useTabs": true, + "rust-analyzer.cargo.loadOutDirsFromCheck": true, + "rust-analyzer.procMacro.enable": true, + "clangd.checkUpdates": true, + "svelte.plugin.svelte.format.enable": false, + "python.analysis.extraPaths": [ + "/usr/share/gdb/python", + "/usr/share/pwndbg/" + ], + "languageserver": { + "zls" : { + "command": "zls", + "filetypes": ["zig"] + }, + "dlang" : { + "command": "serve-d", + "rootPatterns": ["dub.json", "dub.sdl"], + "filetypes": ["d"] + }, + "nix": { + "command": "${pkgs.rnix-lsp}/bin/rnix-lsp", + "filetypes": [ + "nix" + ] + } + } + } + ''; +} diff --git a/users/profiles/neovim/default.nix b/users/profiles/neovim/default.nix index f162fd8..bc90dd4 100644 --- a/users/profiles/neovim/default.nix +++ b/users/profiles/neovim/default.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ pkgs, config, ... }@inputs: { programs.neovim = { @@ -57,4 +57,5 @@ set shortmess+=c ''; }; + home.file."coc-settings" = (import ./coc { inherit pkgs config; }); }