diff --git a/docs/manual/configuring.md b/docs/manual/configuring.md index f891c7a6..d913c487 100644 --- a/docs/manual/configuring.md +++ b/docs/manual/configuring.md @@ -1,6 +1,11 @@ # 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 +configuring/keymaps.md configuring/custom-package.md configuring/custom-plugins.md configuring/overriding-plugins.md diff --git a/docs/manual/configuring/keymaps.md b/docs/manual/configuring/keymaps.md new file mode 100644 index 00000000..106da0b0 --- /dev/null +++ b/docs/manual/configuring/keymaps.md @@ -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 = "m"; + mode = "n"; + silent = true; + action = ":make"; + } + { + key = "l"; + mode = ["n" "x"]; + silent = true; + action = "cnext"; + } + { + key = "k"; + mode = ["n" "x"]; + lua = true; + action = '' + function() + require('foo').do_thing() + print('did thing') + end + ''; + } + ]; +} +``` diff --git a/docs/manual/configuring/languages/lsp.md b/docs/manual/configuring/languages/lsp.md index 6d6ed5bc..8a465753 100644 --- a/docs/manual/configuring/languages/lsp.md +++ b/docs/manual/configuring/languages/lsp.md @@ -1,6 +1,6 @@ # LSP Custom Packages/Command {#sec-languages-custom-lsp-packages} -In any of the `opt.languages..lsp.package` options you can provide +In any of the `vim.languages..lsp.package` options you can provide 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 server, and instead use the one found in your `$PATH` during runtime, for diff --git a/docs/manual/default-configs/maximal.md b/docs/manual/default-configs/maximal.md index e1f5273e..736bf2f0 100644 --- a/docs/manual/default-configs/maximal.md +++ b/docs/manual/default-configs/maximal.md @@ -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) configuration, but with every supported language enabled. -::: {.note} Running the maximal config will download _a lot_ of packages as it -is downloading language servers, formatters, and more. ::: +::: {.note} + +Running the maximal config will download _a lot_ of packages as it is +downloading language servers, formatters, and more. + +::: diff --git a/docs/manual/installation/custom-configuration.md b/docs/manual/installation/custom-configuration.md index 52f81573..3788fda6 100644 --- a/docs/manual/installation/custom-configuration.md +++ b/docs/manual/installation/custom-configuration.md @@ -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 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 standalone/nixos.md standalone/home-manager.md diff --git a/docs/manual/installation/modules/home-manager.md b/docs/manual/installation/modules/home-manager.md index 2b359af5..83e9af7f 100644 --- a/docs/manual/installation/modules/home-manager.md +++ b/docs/manual/installation/modules/home-manager.md @@ -84,8 +84,8 @@ configure **nvf**. ::: {.note} -**nvf** exposes a lot of options, most of which are not referenced in the -installation sections of the manual. You may find all available options in the -[appendix](https://notashelf.github.io/nvf/options) +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 ::: diff --git a/docs/manual/installation/modules/nixos.md b/docs/manual/installation/modules/nixos.md index bcf7472b..6309f77b 100644 --- a/docs/manual/installation/modules/nixos.md +++ b/docs/manual/installation/modules/nixos.md @@ -82,8 +82,8 @@ configure **nvf**. ::: {.note} -**nvf** exposes a lot of options, most of which are not referenced in the -installation sections of the manual. You may find all available options in the -[appendix](https://notashelf.github.io/nvf/options) +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 ::: diff --git a/docs/manual/installation/standalone/home-manager.md b/docs/manual/installation/standalone/home-manager.md index 0c1dc025..4c520b41 100644 --- a/docs/manual/installation/standalone/home-manager.md +++ b/docs/manual/installation/standalone/home-manager.md @@ -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 + +::: diff --git a/docs/manual/installation/standalone/nixos.md b/docs/manual/installation/standalone/nixos.md index 267d15b7..e10f9d36 100644 --- a/docs/manual/installation/standalone/nixos.md +++ b/docs/manual/installation/standalone/nixos.md @@ -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 + +:::