| author | |
| committer | |
| log | ac6a00196705a795ac82a59eeacd7eee59587cee |
| tree | d10cac04a5b4b7f9fd6c419ab70f5895be7ff8c9 |
| parent | 926f53011d593219726d6432324071a2d589df96 |
| parent | ab7dc1a69776f3bde087126d89f6e6eac17d56e0 |
3 files changed, 36 insertions(+), 17 deletions(-)
lib/mkNeovim.nix+15-13| ... | @@ -4,7 +4,9 @@ | ... | @@ -4,7 +4,9 @@ |
| 4 | # TODO: apply overlays here | 4 | # TODO: apply overlays here |
| 5 | overlays, | 5 | overlays, |
| 6 | inputs, | 6 | inputs, |
| 7 | }: user: system: let | 7 | }: |
| 8 | user: system: | ||
| 9 | let | ||
| 8 | darwin = nixpkgs.lib.strings.hasSuffix "-darwin" system; | 10 | darwin = nixpkgs.lib.strings.hasSuffix "-darwin" system; |
| 9 | 11 | ||
| 10 | host = { | 12 | host = { |
| ... | @@ -15,15 +17,15 @@ | ... | @@ -15,15 +17,15 @@ |
| 15 | userDir = ../users + "/${user}"; | 17 | userDir = ../users + "/${user}"; |
| 16 | userConfig = import (userDir + "/user.nix"); | 18 | userConfig = import (userDir + "/user.nix"); |
| 17 | in | 19 | in |
| 18 | (inputs.nvf.lib.neovimConfiguration { | 20 | (inputs.nvf.lib.neovimConfiguration { |
| 19 | pkgs = nixpkgs.legacyPackages.${system}; | 21 | pkgs = nixpkgs.legacyPackages.${system}; |
| 20 | modules = builtins.filter (f: f != null) [ | 22 | modules = builtins.filter (f: f != null) [ |
| 21 | (../users + ("/" + user + "/vim.nix")) | 23 | (../users + ("/" + user + "/vim.nix")) |
| 22 | ../modules/neovim | 24 | ../modules/neovim |
| 23 | ]; | 25 | ]; |
| 24 | extraSpecialArgs = { | 26 | extraSpecialArgs = { |
| 25 | inherit host; | 27 | inherit host; |
| 26 | flake = self; | 28 | flake = self; |
| 27 | user = userConfig; | 29 | user = userConfig; |
| 28 | }; | 30 | }; |
| 29 | }).neovim | 31 | }).neovim |
modules/neovim/default.nix+20-2| ... | @@ -1,4 +1,9 @@ | ... | @@ -1,4 +1,9 @@ |
| 1 | { config, lib, ... }: | 1 | { |
| 2 | config, | ||
| 3 | pkgs, | ||
| 4 | lib, | ||
| 5 | ... | ||
| 6 | }: | ||
| 2 | { | 7 | { |
| 3 | # based on default options from upstream: | 8 | # based on default options from upstream: |
| 4 | # https://github.com/NotAShelf/nvf/blob/main/configuration.nix | 9 | # https://github.com/NotAShelf/nvf/blob/main/configuration.nix |
| ... | @@ -8,7 +13,7 @@ | ... | @@ -8,7 +13,7 @@ |
| 8 | # | 13 | # |
| 9 | # override level 999 is used to not conflict with mkDefault as used by nvf. | 14 | # override level 999 is used to not conflict with mkDefault as used by nvf. |
| 10 | # which allows user configurations to disable/override anything here. | 15 | # which allows user configurations to disable/override anything here. |
| 11 | vim = lib.mkOverride 999 { | 16 | config.vim = lib.mkOverride 999 { |
| 12 | theme = { | 17 | theme = { |
| 13 | enable = true; | 18 | enable = true; |
| 14 | }; | 19 | }; |
| ... | @@ -70,8 +75,21 @@ | ... | @@ -70,8 +75,21 @@ |
| 70 | zig.enable = true; | 75 | zig.enable = true; |
| 71 | # sort-lines: off | 76 | # sort-lines: off |
| 72 | 77 | ||
| 78 | ts.format.enable = false; # deno fmt is enabled elsewhere | ||
| 73 | nix.format.type = "nixfmt"; # looks so much nicer | 79 | nix.format.type = "nixfmt"; # looks so much nicer |
| 74 | }; | 80 | }; |
| 81 | formatter.conform-nvim = { | ||
| 82 | enable = true; | ||
| 83 | setupOpts.formatters_by_ft = { | ||
| 84 | typescript = [ "deno_fmt" ]; | ||
| 85 | typescriptreact = [ "deno_fmt" ]; | ||
| 86 | javascript = [ "deno_fmt" ]; | ||
| 87 | javascriptreact = [ "deno_fmt" ]; | ||
| 88 | }; | ||
| 89 | setupOpts.formatters.deno_fmt = { | ||
| 90 | command = lib.meta.getExe pkgs.deno; | ||
| 91 | }; | ||
| 92 | }; | ||
| 75 | filetree = { | 93 | filetree = { |
| 76 | neo-tree = { | 94 | neo-tree = { |
| 77 | enable = false; | 95 | enable = false; |
users/chloe/vim.nix+1-2| ... | @@ -1,5 +1,6 @@ | ... | @@ -1,5 +1,6 @@ |
| 1 | _: { | 1 | _: { |
| 2 | vim = { | 2 | vim = { |
| 3 | languages.astro.enable = true; | ||
| 3 | options = { | 4 | options = { |
| 4 | tabstop = 2; | 5 | tabstop = 2; |
| 5 | softtabstop = 2; | 6 | softtabstop = 2; |
| ... | @@ -13,7 +14,6 @@ _: { | ... | @@ -13,7 +14,6 @@ _: { |
| 13 | foldenable = true; | 14 | foldenable = true; |
| 14 | linebreak = true; | 15 | linebreak = true; |
| 15 | }; | 16 | }; |
| 16 | |||
| 17 | binds = { | 17 | binds = { |
| 18 | hardtime-nvim.setupOpts = { | 18 | hardtime-nvim.setupOpts = { |
| 19 | restriction_mode = "block"; | 19 | restriction_mode = "block"; |
| ... | @@ -33,7 +33,6 @@ _: { | ... | @@ -33,7 +33,6 @@ _: { |
| 33 | }; | 33 | }; |
| 34 | }; | 34 | }; |
| 35 | }; | 35 | }; |
| 36 | |||
| 37 | keymaps = | 36 | keymaps = |
| 38 | let | 37 | let |
| 39 | mkKeymap = mode: key: action: desc: { | 38 | mkKeymap = mode: key: action: desc: { |