mirror of
https://github.com/nix-community/nixvim.git
synced 2025-06-21 00:25:42 +02:00
docs: rename modules
-> platforms
This commit is contained in:
parent
c477b7865e
commit
cd68b680cd
8 changed files with 10 additions and 10 deletions
70
docs/platforms/standalone.md
Normal file
70
docs/platforms/standalone.md
Normal file
|
@ -0,0 +1,70 @@
|
|||
# Standalone Usage
|
||||
|
||||
## Options
|
||||
|
||||
When used standalone, nixvim's options are available directly, without any prefix/namespace.
|
||||
This is unlike the other modules which typically use a `programs.nixvim.*` prefix.
|
||||
|
||||
There are **no** standalone-specific options available.
|
||||
|
||||
## Using in another configuration
|
||||
|
||||
Here is an example on how to integrate into a NixOS or Home-manager configuration when using flakes.
|
||||
|
||||
The example assumes your standalone config is the `default` package of a flake, and you've named the input "`nixvim-config`".
|
||||
```nix
|
||||
{ inputs, system, ... }:
|
||||
{
|
||||
# NixOS
|
||||
environment.systemPackages = [ inputs.nixvim-config.packages.${system}.default ];
|
||||
# home-manager
|
||||
home.packages = [ inputs.nixvim-config.packages.${system}.default ];
|
||||
}
|
||||
```
|
||||
|
||||
## Extending an existing configuration
|
||||
|
||||
Given a `<nixvim>` derivation obtained from `makeNixvim` or `makeNixvimWithModule` it is possible to create a new derivation with additional options.
|
||||
|
||||
This is done through the `<nixvim>.extend` function. This function takes a Nixvim module that is merged with the options used to build `<nixvim>`.
|
||||
|
||||
This function is recursive, meaning that it can be applied an arbitrary number of times.
|
||||
|
||||
### Example
|
||||
|
||||
```nix
|
||||
{makeNixvim}: let
|
||||
first = makeNixvim { extraConfigLua = "-- first stage"; };
|
||||
second = first.extend {extraConfigLua = "-- second stage";};
|
||||
third = second.extend {extraConfigLua = "-- third stage";};
|
||||
in
|
||||
third
|
||||
```
|
||||
|
||||
This will generate a `init.lua` that will contain the comments from each stages:
|
||||
|
||||
```lua
|
||||
-- first stage
|
||||
-- second stage
|
||||
-- third stage
|
||||
```
|
||||
|
||||
## Accessing options used in an existing configuration
|
||||
|
||||
The `config` used to produce a standalone nixvim derivation can be accessed as an attribute on the derivation, similar to `<nixvim>.extend`.
|
||||
|
||||
This may be useful if you want unrelated parts of your NixOS or home-manager configuration to use the same value as something in your nixvim configuration.
|
||||
|
||||
## Accessing nixvim options
|
||||
|
||||
Given a nixvim derivation it is possible to access the module options using `<derivation>.options`.
|
||||
This can be useful to configure `nixd` for example:
|
||||
|
||||
```nix
|
||||
plugins.lsp.servers.nixd = {
|
||||
enable = true;
|
||||
settings = {
|
||||
options.nixvim.expr = ''(builtins.getFlake "/path/to/flake").packages.${system}.neovimNixvim.options'';
|
||||
};
|
||||
};
|
||||
```
|
12
docs/platforms/wrapper-options.md
Normal file
12
docs/platforms/wrapper-options.md
Normal file
|
@ -0,0 +1,12 @@
|
|||
# Platform-specific options
|
||||
|
||||
All of Nixvim's options are available within `programs.nixvim.*` when Nixvim is used via wrapper modules,
|
||||
such as our NixOS, home-manager, or nix-darwin modules.
|
||||
|
||||
When Nixvim is used standalone (without a wrapper module), its options are available at the "top-level".
|
||||
See [Standalone Usage](./standalone.md) for more info.
|
||||
|
||||
There are a few wrapper specific options that are documented below:
|
||||
|
||||
@WRAPPER_OPTIONS@
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue