This commit is contained in:
Ching Pei Yang 2025-05-07 11:55:10 +00:00 committed by GitHub
commit 4937b522ed
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 79 additions and 10 deletions

View file

@ -1,6 +1,11 @@
# Configuring nvf {#ch-configuring} # Configuring nvf {#ch-configuring}
This section gives a general overview of how to configure nvf. If something
specific you are looking for isn't covered here, try searching it in the
[options reference](#ch-options)
```{=include=} chapters ```{=include=} chapters
configuring/keymaps.md
configuring/custom-package.md configuring/custom-package.md
configuring/custom-plugins.md configuring/custom-plugins.md
configuring/overriding-plugins.md configuring/overriding-plugins.md

View file

@ -0,0 +1,35 @@
# Custom keymaps {#ch-keymaps}
Some plugin modules provide keymap options for convenience. If a keymap is not
provided by such options, you can easily add custom keymaps yourself via
`vim.keymaps`:
```nix
{...}: {
config.vim.keymaps = [
{
key = "<leader>m";
mode = "n";
silent = true;
action = ":make<CR>";
}
{
key = "<leader>l";
mode = ["n" "x"];
silent = true;
action = "<cmd>cnext<CR>";
}
{
key = "<leader>k";
mode = ["n" "x"];
lua = true;
action = ''
function()
require('foo').do_thing()
print('did thing')
end
'';
}
];
}
```

View file

@ -1,6 +1,6 @@
# LSP Custom Packages/Command {#sec-languages-custom-lsp-packages} # LSP Custom Packages/Command {#sec-languages-custom-lsp-packages}
In any of the `opt.languages.<language>.lsp.package` options you can provide In any of the `vim.languages.<language>.lsp.package` options you can provide
your own LSP package, or provide the command to launch the language server, as a your own LSP package, or provide the command to launch the language server, as a
list of strings. You can use this to skip automatic installation of a language list of strings. You can use this to skip automatic installation of a language
server, and instead use the one found in your `$PATH` during runtime, for server, and instead use the one found in your `$PATH` during runtime, for

View file

@ -7,5 +7,9 @@ $ nix run github:notashelf/nvf#maximal -- test.nix
It is the same fully configured Neovim as with the [Nix](#sec-default-nix) It is the same fully configured Neovim as with the [Nix](#sec-default-nix)
configuration, but with every supported language enabled. configuration, but with every supported language enabled.
::: {.note} Running the maximal config will download _a lot_ of packages as it ::: {.note}
is downloading language servers, formatters, and more. :::
Running the maximal config will download _a lot_ of packages as it is
downloading language servers, formatters, and more.
:::

View file

@ -61,6 +61,14 @@ build independently from your system configuration while also possibly sharing
it with others. The next two chapters will detail specific usage of such a setup it with others. The next two chapters will detail specific usage of such a setup
for a package output in the context of NixOS or Home-Manager installation. for a package output in the context of NixOS or Home-Manager installation.
::: {.note}
Once you have nvf installed, head over to [](#ch-configuring) for an overview of
how to configure nvf, or [](#ch-options) for the full reference of all available
options
:::
```{=include=} chapters ```{=include=} chapters
standalone/nixos.md standalone/nixos.md
standalone/home-manager.md standalone/home-manager.md

View file

@ -84,8 +84,8 @@ configure **nvf**.
::: {.note} ::: {.note}
**nvf** exposes a lot of options, most of which are not referenced in the Now that you have nvf installed, head over to [](#ch-configuring) for an
installation sections of the manual. You may find all available options in the overview of how to configure nvf, or [](#ch-options) for the full reference of
[appendix](https://notashelf.github.io/nvf/options) all available options
::: :::

View file

@ -82,8 +82,8 @@ configure **nvf**.
::: {.note} ::: {.note}
**nvf** exposes a lot of options, most of which are not referenced in the Now that you have nvf installed, head over to [](#ch-configuring) for an
installation sections of the manual. You may find all available options in the overview of how to configure nvf, or [](#ch-options) for the full reference of
[appendix](https://notashelf.github.io/nvf/options) all available options
::: :::

View file

@ -53,3 +53,11 @@ the default theme enabled. You may use other options inside `config.vim` in
}; };
} }
``` ```
::: {.note}
Now that you have nvf installed, head over to [](#ch-configuring) for an
overview of how to configure nvf, or [](#ch-options) for the full reference of
all available options
:::

View file

@ -58,4 +58,13 @@ the default theme enabled. You may use other options inside `config.vim` in
}; };
}; };
}; };
}``` }
```
::: {.note}
Now that you have nvf installed, head over to [](#ch-configuring) for an
overview of how to configure nvf, or [](#ch-options) for the full reference of
all available options
:::