wrapper/rc: explicitly add tabstop & shiftwidth to vim.options

Defaults are taken from Neovim's :help tags for those options to avoid intrusive/confusing behaviour.
This commit is contained in:
NotAShelf 2024-12-12 20:16:27 +03:00
parent 73660af2e3
commit a0a57757a0
No known key found for this signature in database
GPG key ID: AF26552424E53993

View file

@ -126,16 +126,14 @@ in {
example = {"some_variable" = 42;}; example = {"some_variable" = 42;};
description = '' description = ''
An attribute set containing global variable values A freeform attribute set containing global variable values for setting vim
for storing vim variables as early as possible. If variables as early as possible. If populated, this option will set vim variables
populated, this option will set vim variables in the in the built {option}`luaConfigRC` as the first item.
built luaConfigRC as the first item.
::: {.note} ::: {.note}
`{foo = "bar";}` will set `vim.g.foo` to "bar", where `{foo = "bar";}` will set `vim.g.foo` to "bar", where the type of `bar` in the
the type of `bar` in the resulting Lua value will be resulting Lua value will be inferred from the type of the value in the
inferred from the type of the value in the `{name = value;}` `{name = value;}` pair passed to the option.
pair passed to the option.
::: :::
''; '';
}; };
@ -212,21 +210,39 @@ in {
default = true; default = true;
description = "Enable word wrapping."; description = "Enable word wrapping.";
}; };
tabstop = mkOption {
type = int;
default = 8; # Neovim default
description = ''
Number of spaces that a `<Tab>` in the file counts for. Also see
the {command}`:retab` command, and the {option}`softtabstop` option.
'';
};
shiftwidth = mkOption {
type = int;
default = 8; # Neovim default
description = ''
Number of spaces to use for each step of (auto)indent. Used for
{option}`cindent`, `>>`, `<<`, etc.
When zero the {option}`tabstop` value will be used.
'';
};
}; };
}; };
example = {visualbell = true;}; example = {visualbell = true;};
description = '' description = ''
An attribute set containing vim options to be set A freeform attribute set containing vim options to be set as early as possible.
as early as possible. If populated, this option will If populated, this option will set vim options in the built {option}`luaConfigRC`
set vim options in the built luaConfigRC after `basic` after `basic` and before `pluginConfigs` DAG entries.
and before `pluginConfigs` DAG entries.
::: {.note} ::: {.note}
`{foo = "bar";}` will set `vim.o.foo` to "bar", where `{foo = "bar";}` will set `vim.o.foo` to "bar", where the type of `bar` in the
the type of `bar` in the resulting Lua value will be resulting Lua value will be inferred from the type of the value in the
inferred from the type of the value in the`{name = value;}` `{name = value;}` pair passed to the option.
pair passed to the option.
::: :::
''; '';
}; };