diff --git a/.github/workflows/cachix.yml b/.github/workflows/cachix.yml index 4aa0b215..cac8ee51 100644 --- a/.github/workflows/cachix.yml +++ b/.github/workflows/cachix.yml @@ -35,7 +35,6 @@ jobs: - name: Install Nix uses: DeterminateSystems/nix-installer-action@main - - uses: DeterminateSystems/magic-nix-cache-action@main - uses: cachix/cachix-action@v15 with: diff --git a/docs/release-notes/rl-0.8.md b/docs/release-notes/rl-0.8.md index 361b7cda..3ceef93f 100644 --- a/docs/release-notes/rl-0.8.md +++ b/docs/release-notes/rl-0.8.md @@ -145,3 +145,7 @@ - Add `vim.languages.zig.dap` support through pkgs.lldb dap adapter. Code Inspiration from `vim.languages.clang.dap` implementation. + +[nezia1](https://github.com/nezia1) + +- Add support for [nixd](https://github.com/nix-community/nixd) language server. diff --git a/modules/extra/deprecations.nix b/modules/extra/deprecations.nix index 8d27d7ac..5efe2ae2 100644 --- a/modules/extra/deprecations.nix +++ b/modules/extra/deprecations.nix @@ -4,6 +4,7 @@ inherit (lib.nvim.config) batchRenameOptions; renamedVimOpts = batchRenameOptions ["vim"] ["vim" "options"] { + # 2024-12-01 colourTerm = "termguicolors"; mouseSupport = "mouse"; cmdHeight = "cmdheight"; @@ -15,6 +16,9 @@ autoIndent = "autoindent"; wordWrap = "wrap"; showSignColumn = "signcolumn"; + + # 2025-02-07 + scrollOff = "scrolloff"; }; in { imports = concatLists [ @@ -93,9 +97,15 @@ in { # 2024-12-02 (mkRenamedOptionModule ["vim" "enableEditorconfig"] ["vim" "globals" "editorconfig"]) + + # 2025-02-06 + (mkRemovedOptionModule ["vim" "disableArrows"] '' + Top-level convenience options are now in the process of being removed from nvf as + their behaviour was abstract, and confusing. Please use 'vim.options' or 'vim.luaConfigRC' + to replicate previous behaviour. + '') ] - # 2024-12-01 # Migrated via batchRenameOptions. Further batch renames must be below this line. renamedVimOpts ]; diff --git a/modules/neovim/init/basic.nix b/modules/neovim/init/basic.nix index b4677de9..47bfe500 100644 --- a/modules/neovim/init/basic.nix +++ b/modules/neovim/init/basic.nix @@ -16,12 +16,6 @@ cfg = config.vim; in { options.vim = { - disableArrows = mkOption { - type = bool; - default = false; - description = "Set to prevent arrow keys from moving cursor"; - }; - hideSearchHighlight = mkOption { type = bool; default = false; diff --git a/modules/neovim/mappings/config.nix b/modules/neovim/mappings/config.nix index 4d7f2417..230df030 100644 --- a/modules/neovim/mappings/config.nix +++ b/modules/neovim/mappings/config.nix @@ -26,34 +26,6 @@ in { config = { vim.keymaps = mkMerge [ - ( - mkIf cfg.disableArrows [ - { - key = ""; - mode = ["n" "i"]; - action = ""; - noremap = false; - } - { - key = ""; - mode = ["n" "i"]; - action = ""; - noremap = false; - } - { - key = ""; - mode = ["n" "i"]; - action = ""; - noremap = false; - } - { - key = ""; - mode = ["n" "i"]; - action = ""; - noremap = false; - } - ] - ) ( pipe cfg.maps [ diff --git a/modules/plugins/languages/nix.nix b/modules/plugins/languages/nix.nix index 4056a415..d6ca6d32 100644 --- a/modules/plugins/languages/nix.nix +++ b/modules/plugins/languages/nix.nix @@ -59,6 +59,40 @@ } ''; }; + + nixd = { + package = pkgs.nixd; + internalFormatter = true; + lspConfig = '' + lspconfig.nixd.setup{ + capabilities = capabilities, + ${ + if cfg.format.enable + then useFormat + else noFormat + }, + cmd = ${packageToCmd cfg.lsp.package "nixd"}, + ${optionalString cfg.format.enable '' + settings = { + nixd = { + ${optionalString (cfg.format.type == "alejandra") + '' + formatting = { + command = {"${cfg.format.package}/bin/alejandra", "--quiet"}, + }, + ''} + ${optionalString (cfg.format.type == "nixfmt") + '' + formatting = { + command = {"${cfg.format.package}/bin/nixfmt"}, + }, + ''} + }, + }, + ''} + } + ''; + }; }; defaultFormat = "alejandra";