+
+
Type: lazy attribute set of raw value
+
Additional arguments passed to each module in addition to ones
+like lib, config,
+and pkgs, modulesPath.
+
This option is also available to all submodules. Submodules do not
+inherit args from their parent module, nor do they provide args to
+their parent module or sibling submodules. The sole exception to
+this is the argument name which is provided by
+parent modules to a submodule and contains the attribute name
+the submodule is bound to, or a unique generated name if it is
+not bound to an attribute.
+
Some arguments are already passed by default, of which the
+following cannot be changed with this option:
+
+-
+
lib: The nixpkgs library.
+
+-
+
config: The results of all options after merging the values from all modules together.
+
+-
+
options: The options declared in all modules.
+
+-
+
specialArgs: The specialArgs argument passed to evalModules.
+
+-
+
All attributes of specialArgs
+Whereas option values can generally depend on other option values
+thanks to laziness, this does not apply to imports, which
+must be computed statically before anything else.
+For this reason, callers of the module system can provide specialArgs
+which are available during import resolution.
+For NixOS, specialArgs includes
+modulesPath, which allows you to import
+extra modules from the nixpkgs package tree without having to
+somehow make the module aware of the location of the
+nixpkgs or NixOS directories.
+{ modulesPath, ... }: {
+ imports = [
+ (modulesPath + "/profiles/minimal.nix")
+ ];
+}
+
+
+
+
For NixOS, the default value for this option includes at least this argument:
+
+pkgs: The nixpkgs package set according to
+the nixpkgs.pkgs option.
+
+
+
+
+
+
+
Type: list of (absolute path or string)
+
Additional runtime paths that will be appended to the active
+runtimepath of the Neovim. This can be used to add additional
+lookup paths for configs, plugins, spell languages and other
+things you would generally place in your $HOME/.config/nvim.
+
This is meant as a declarative alternative to throwing files into
+~/.config/nvim and having the Neovim wrapper pick them up.
+
For more details on vim.o.runtimepath, and what paths to use, please see
+the official documentation.
+
+
Default: [ ]
+
Example:
[
+ # Absolute path, as a string. This is the impure option.
+ "$HOME/.config/nvim-extra"
+
+ # Relative path inside your configuration. If your config
+ # is version controlled, then this is pure and reproducible.
+ ./nvim
+
+ # Source type path. This pure and reproducible.
+ # See `:doc builtins.path` inside a Nix repl for more options.
+ (builtins.path {
+ path = ./runtime; # this must be a relative path
+ name = "nvim-runtime"; # name is arbitrary
+ })
+]
+
+
+
+
+
+
Type: boolean
+
Whether to enable complementary Neovim plugin for avante.nvim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of avante-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: string
+
Since auto-suggestions are a high-frequency operation and therefore expensive,
+currently designating it as copilot provider is dangerous because:
+https://github.com/yetone/avante.nvim/issues/1048
+Of course, you can reduce the request frequency by increasing suggestion.debounce.
+
+
Default: "claude"
+
+
+
+
+
Type: boolean
+
Whether to enable automatically apply diff after LLM response..
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable automatically set the highlight group for the current line..
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable automatically set the keymap for the current line..
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable auto suggestions..
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Claude Text Editor Tool Mode..
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Cursor Planning Mode..
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable token counting..
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable remove unchanged lines when applying a code block..
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable pasting image from clipboard.
+This will be determined automatically based whether img-clip is available or not.
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
The provider used in the applying phase of Cursor Planning Mode, defaults to nil,
+Config.provider will be used as the provider for the applying phase when nil.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Automatically jumps to the next change.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: signed integer
+
Override the 'timeoutlen' setting while hovering over a diff (see :help timeoutlen).
+Helps to avoid entering operator-pending mode with diff mappings starting with c.
+Disable by setting to -1.
+
+
Default: 500
+
Example: -1
+
+
+
+
+
Type: boolean
+
Whether to enable dual_boost mode..
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: string
+
The first provider to generate response.
+
+
Default: "openai"
+
+
+
+
+
Type: string
+
The prompt to generate response based on the two reference outputs.
+
+
Default: ''
+ Based on the two reference outputs below, generate a response that incorporates
+ elements from both but reflects your own judgment and unique perspective.
+ Do not provide any explanation, just give the response directly. Reference Output 1:
+ [{{provider1_output}}], Reference Output 2: [{{provider2_output}}''
+
+
+
+
+
Type: string
+
The second provider to generate response.
+
+
Default: "claude"
+
+
+
+
+
Type: signed integer
+
Timeout in milliseconds.
+
+
Default: 60000
+
+
+
+
+
Type: boolean
+
Whether to enable hints.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: null or (attribute set)
+
Define or override the default keymaps for cancel actions.
+
+
Default: null
+
+
+
+
+
Type: null or (attribute set)
+
Define or override the default keymaps for diff.
+
+
Default: null
+
+
+
+
+
Type: null or (attribute set)
+
Define or override the default keymaps for jump actions.
+
+
Default: null
+
+
+
+
+
+
Type: null or (attribute set)
+
Define or override the default keymaps for submit actions.
+
+
Default: null
+
+
+
+
+
Type: null or (attribute set)
+
Define or override the default keymaps for suggestion actions.
+
+
Default: null
+
+
+
+
+
Type: null or string
+
The provider used in Aider mode or in the planning phase of Cursor Planning Mode.
+
+
Default: null
+
+
+
+
+
Type: null or (attribute set)
+
Define settings for builtin and custom providers.
+
+
Default: null
+
Example:
```nix
+ openai = {
+ endpoint = "https://api.openai.com/v1";
+ model = "gpt-4o"; # your desired model (or use gpt-4o, etc.)
+ timeout = 30000; # Timeout in milliseconds, increase this for reasoning models
+ extra_request_body = {
+ temperature = 0;
+ max_completion_tokens = 8192; # Increase this to include reasoning tokens (for reasoning models)
+ reasoning_effort = "medium"; # low|medium|high, only used for reasoning models
+ };
+ };
+ ollama = {
+ endpoint = "http://127.0.0.1:11434";
+ timeout = 30000; # Timeout in milliseconds
+ extra_request_body = {
+ options = {
+ temperature = 0.75;
+ num_ctx = 20480;
+ keep_alive = "5m";
+ };
+ };
+ };
+ groq = {
+ __inherited_from = "openai";
+ api_key_name = "GROQ_API_KEY";
+ endpoint = "https://api.groq.com/openai/v1/";
+ model = "llama-3.3-70b-versatile";
+ disable_tools = true;
+ extra_request_body = {
+ temperature = 1;
+ max_tokens = 32768; # remember to increase this value, otherwise it will stop generating halfway
+ };
+ };
+```
+
+
+
+
+
+
Type: signed integer
+
Suggestion debounce in milliseconds.
+
+
Default: 600
+
+
+
+
+
Type: signed integer
+
Suggestion throttle in milliseconds.
+
+
Default: 600
+
+
+
+
+
Type: string
+
The border type on the ask window.
+
+
Default: "rounded"
+
+
+
+
+
Type: boolean
+
Open the 'AvanteAsk' prompt in a floating window.
+
+
Default: false
+
+
+
+
+
Type: one of "ours", "theirs"
+
Which diff to focus after applying.
+
+
Default: "ours"
+
+
+
+
+
Type: boolean
+
Start insert mode when opening the ask window.
+
+
Default: true
+
+
+
+
+
Type: string
+
The border type on the edit window.
+
+
Default: "rounded"
+
+
+
+
+
Type: boolean
+
Start insert mode when opening the edit window.
+
+
Default: true
+
+
+
+
+
+
+
Type: one of "right", "left", "top", "bottom"
+
The position of the sidebar.
+
+
Default: "right"
+
+
+
+
+
+
+
+
Type: signed integer
+
Default % based on available width.
+
+
Default: 30
+
+
+
+
+
Type: boolean
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable ChatGPT AI assistant. Requires the environment variable OPENAI_API_KEY to be set.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: "aa"
+
+
+
+
+
Type: null or string
+
+
Default: "ac"
+
+
+
+
+
Type: null or string
+
+
Default: "ad"
+
+
+
+
+
Type: null or string
+
[ChatGPT] Edit with instructions
+
+
Default: "ae"
+
+
+
+
+
Type: null or string
+
+
Default: "ax"
+
+
+
+
+
Type: null or string
+
+
Default: "af"
+
+
+
+
+
Type: null or string
+
[ChatGPT] Grammar correction
+
+
Default: "ag"
+
+
+
+
+
Type: null or string
+
+
Default: "ak"
+
+
+
+
+
Type: null or string
+
[ChatGPT] Optimize code
+
+
Default: "ao"
+
+
+
+
+
Type: null or string
+
[ChatGPT] Code reability analysis
+
+
Default: "al"
+
+
+
+
+
Type: null or string
+
+
Default: "ar"
+
+
+
+
+
Type: null or string
+
+
Default: "as"
+
+
+
+
+
Type: null or string
+
+
Default: "at"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of chatgpt
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable complementary neovim plugin for codecompanion.nvim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of codecompanion-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: null or (luaInline)
+
An adapter is what connects Neovim to an LLM.
+
+
Default: null
+
+
+
+
+
Type: signed integer
+
Height of the action palette.
+
+
Default: 10
+
+
+
+
+
Type: boolean
+
Whether to enable showing default
+actions in the action palette.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable showing default
+prompt library in the action palette.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: string
+
Prompt used for interactive LLM calls.
+
+
Default: "Prompt "
+
+
+
+
+
Type: one of "default", "telescope", "mini_pick"
+
Provider used for the action palette.
+
+
Default: "default"
+
+
+
+
+
Type: signed integer
+
Width of the action palette.
+
+
Default: 95
+
+
+
+
+
+
Type: string
+
The icon to represent a pinned buffer.
+
+
Default: " "
+
+
+
+
+
Type: string
+
The icon to represent a watched buffer.
+
+
Default: "👀 "
+
+
+
+
+
Type: string
+
Message to appear in chat buffer.
+
+
Default: "Welcome to CodeCompanion ✨! Press ? for options."
+
+
+
+
+
Type: string
+
The separator between the
+different messages in the chat buffer.
+
+
Default: "─"
+
+
+
+
+
+
Type: boolean
+
Whether to enable references in the chat buffer.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable LLM settings to appear at the top of the chat buffer.
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable the token count for each response.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable opening the chat buffer in insert mode.
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: signed integer
+
Close an open chat buffer if the
+total columns of your display are less than...
+
+
Default: 240
+
+
+
+
+
Type: boolean
+
Whether to enable a diff view
+to see the changes made by the LLM.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: one of "vertical", "horizontal"
+
Type of split for default provider.
+
+
Default: "vertical"
+
+
+
+
+
Type: one of "default", "mini_diff"
+
The preferred kind of provider.
+
+
Default: "default"
+
+
+
+
+
Type: one of "vertical", "horizontal", "buffer"
+
Customize how output is created in new buffer.
+
+
Default: "vertical"
+
+
+
+
+
Type: string
+
Specify which language an LLM should respond in.
+
+
Default: "English"
+
+
+
+
+
Type: one of "DEBUG", "INFO", "ERROR", "TRACE"
+
Change the level of logging.
+
+
Default: "ERROR"
+
+
+
+
+
Type: boolean
+
Whether to enable code being sent to the LLM.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: null or (attribute set)
+
A prompt library is a collection of prompts
+that can be used in the action palette.
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Adapter used for the chat strategy.
+
+
Default: null
+
+
+
+
+
Type: null or (attribute set)
+
Define or override the default keymaps.
+
+
Default: null
+
+
+
+
+
Type: null or (luaInline)
+
The chat buffer places user and LLM responses under a H2 header.
+These can be customized in the configuration.
+
+
Default: null
+
+
+
+
+
Type: null or (luaInline)
+
Slash Commands (invoked with /) let you dynamically
+insert context into the chat buffer,
+such as file contents or date/time.
+
+
Default: null
+
+
+
+
+
+
Type: null or (luaInline)
+
Define your own variables
+to share specific content.
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Adapter used for the inline strategy.
+
+
Default: null
+
+
+
+
+
Type: string
+
Accept the suggested change.
+
+
Default: "ga"
+
+
+
+
+
Type: string
+
Reject the suggested change.
+
+
Default: "gr"
+
+
+
+
+
Type: null or (luaInline)
+
Define your own variables
+to share specific content.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Whether to enable nvim-cmp integration for GitHub Copilot.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable GitHub Copilot AI assistant.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Jump to next suggestion
+
+
Default: "]]"
+
+
+
+
+
Type: null or string
+
Jump to previous suggestion
+
+
Default: "[["
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
+
Default: "gr"
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
+
Default: null
+
+
+
+
+
Type: null or string
+
+
Default: null
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of Copilot
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: string
+
The command that will be executed to initiate nodejs for GitHub Copilot.
+Recommended to leave as default.
+
+
Default: "\${pkgs.nodejs-slim.out}/bin/node"
+
+
+
+
+
Type: boolean
+
Whether to enable Completion Panel.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: one of "bottom", "top", "left", "right"
+
+
Default: "bottom"
+
+
+
+
+
Type: floating point number
+
+
Default: 0.4
+
+
+
+
+
Type: boolean
+
Whether to enable Suggestions.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable NeoCodeium AI completion.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
+
+
+
+
+
Type: null or string
+
+
+
+
+
+
+
Type: null or string
+
+
+
+
+
+
+
Type: null or string
+
+
+
+
+
+
+
Type: null or string
+
+
+
+
+
+
+
Type: null or string
+
Cycle or complete (reverse)
+
+
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of NeoCodeium
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: null or string
+
Path to custom windsurf server binary
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Whether to enable suggestions debounce
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Whether to disable suggestions in special buftypes like nofile
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Whether to start windsurf server. Can be manually enabled with :NeoCodeium enable
+
+
Default: null
+
+
+
+
+
Type: null or (attribute set of boolean)
+
Filetypes to disable suggestions in.
+You can still enable disabled buffer with :NeoCodeium enable_buffer
+
+
Default: null
+
Example:
{
+ gitcommit = false;
+ help = false;
+}
+
+
+
+
+
Type: null or (luaInline)
+
Function that returns true if a buffer should be enabled and false if disabled.
+You can still enable disabled buffer with :NeoCodeium enable_buffer
+
+
Default: null
+
+
+
+
+
Type: null or one of "trace", "debug", "info", "warn", "error"
+
+
Default: null
+
Example: "warn"
+
+
+
+
+
Type: null or boolean
+
When true, autosuggestions are disabled. Use require'neocodeium'.cycle_or_complete() to show suggestions manually
+
+
Default: null
+
+
+
+
+
Type: null or signed integer
+
Maximum number of lines parsed from loaded buffers (current buffer always fully parsed).
+Set to 0 to disable parsing non-current buffers.
+Set to -1 to parse all lines
+
+
Default: null
+
Example: 10000
+
+
+
+
+
Type: null or (list of string)
+
List of directories and files to detect workspace root directory for Windsurf Chat
+
+
Default: null
+
Example:
[
+ ".git"
+ "package.json"
+]
+
+
+
+
+
Type: null or string
+
API URL to use (for Enterprise mode)
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Portal URL to use (for registering a user and downloading the binary)
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Whether to show the number of suggestions label in the line number column
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Whether to disable non-important messages
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Whether to enable single line mode. Multi-line suggestions collapse into a single line
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Label indicating that there is multi-line suggestion
+
+
Default: null
+
Example: "..."
+
+
+
+
+
Type: boolean
+
Whether to enable Supermaven AI assistant.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of Supermaven
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: null or 8 bit unsigned integer; between 0 and 255 (both inclusive)
+
The cterm color of the suggestion
+
+
Default: null
+
Example: 244
+
+
+
+
+
Type: null or string
+
The hex color of the suggestion
+
+
Default: null
+
Example: "#ffffff"
+
+
+
+
+
Type: null or (luaInline)
+
Condition function to check for stopping supermaven.
+
A returned true means to stop supermaven
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Disable inline completion for use with cmp
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Disable built-in keymaps for more manual control
+
+
Default: null
+
+
+
+
+
Type: null or (attribute set of boolean)
+
+
Default: null
+
Example:
{
+ markdown = true;
+}
+
+
+
+
+
Type: null or string
+
The key to accept a suggestion
+
+
Default: null
+
Example: "<Tab>"
+
+
+
+
+
Type: null or string
+
The key to accept a word
+
+
Default: null
+
Example: "<C-j>"
+
+
+
+
+
Type: null or string
+
The key to clear a suggestion
+
+
Default: null
+
Example: "<C-]>"
+
+
+
+
+
Type: null or one of "off", "trace", "debug", "info", "warn", "error"
+
The log level. Set to "off" to disable completely
+
+
Default: null
+
Example: "info"
+
+
+
+
+
Type: list of (submodule)
+
A list of Neovim autogroups, which are used to organize and manage related
+autocommands together. Groups allow multiple autocommands to be cleared
+or redefined collectively, preventing duplicate definitions.
+
Each autogroup consists of a name and a boolean indicating whether to clear
+existing autocommands.
+
+
Default: [ ]
+
+
+
+
+
Type: boolean
+
Whether to clear existing autocommands in this group before defining new ones.
+This helps avoid duplicate autocommands.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to enable this autocommand group.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: string
+
The name of the autocommand group.
+
+
Example: "MyAutoCmdGroup"
+
+
+
+
+
Type: list of (submodule)
+
A list of Neovim autocommands to be registered.
+
Each entry defines an autocommand, specifying events, patterns, a callback or Vim
+command, an optional group, a description, and execution settings.
+
+
Default: [ ]
+
+
+
+
+
Type: null or (luaInline)
+
Lua function to be called when the event(s) are triggered.
+
+
Default: null
+
Example:
lib.generators.mkLuaInline ''
+ function()
+ print("Saving a Lua file...")
+ end
+'''
+
+
+
+
+
+
Type: null or string
+
Vim command to be executed when the event(s) are triggered.
+Cannot be defined if the callback option is already defined.
+
+
Default: null
+
+
+
+
+
Type: null or string
+
A description for the autocommand.
+
+
Default: null
+
Example: "Notify when saving a Lua file"
+
+
+
+
+
Type: boolean
+
Whether to enable this autocommand.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: null or (list of string)
+
The event(s) that trigger the autocommand.
+
+
Default: null
+
Example:
[
+ "BufRead"
+ "BufWritePre"
+]
+
+
+
+
+
Type: null or string
+
An optional autocommand group to manage related autocommands.
+
+
Default: null
+
Example: "MyAutoCmdGroup"
+
+
+
+
+
Type: boolean
+
Whether to allow nested autocommands to trigger.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to run the autocommand only once.
+
+
Default: false
+
+
+
+
+
Type: null or (list of string)
+
The file pattern(s) that determine when the autocommand applies.
+
+
Default: null
+
Example:
[
+ "*.lua"
+ "*.vim"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable blink.cmp.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable friendly-snippets for blink to source from automatically.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Previous item [blink.cmp]
+
+
Default: ""
+
+
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of blink.cmp
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: open submodule of attribute set of list of (string or (luaInline))
+
blink.cmp cmdline keymap
+
+
Default: { }
+
+
+
+
+
Type: one of "inherit", "default", "none", "super-tab", "enter", "cmdline"
+
+
Default: "none"
+
+
+
+
+
Type: null or (list of string)
+
List of sources to enable for cmdline. Null means use default source list.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Show documentation whenever an item is selected
+
+
Default: true
+
+
+
+
+
Type: signed integer
+
Delay before auto show triggers
+
+
Default: 200
+
+
+
+
+
+
Type: one of "lua", "prefer_rust", "rust", "prefer_rust_with_warning"
+
fuzzy matcher implementation for Blink.
+
+"lua": slower, Lua native fuzzy matcher implementation
+- `"rust": use the SIMD fuzzy matcher, 'frizbee'
+"prefer_rust": use the rust implementation, but fall back to lua
+"prefer_rust_with_warning": use the rust implementation, and fall back to lua
+if it is not available after emitting a warning.
+
+
+
Default: "prefer_rust"
+
+
+
+
+
Type: boolean
+
Auto-downloads prebuilt binaries.
+
::: .{warning}
+Do not enable this option, as it does not work on Nix!
+:::
+
+
Default: false
+
+
+
+
+
Type: open submodule of attribute set of list of (string or (luaInline))
+
+
Default: { }
+
Example:
```nix
+vim.autocomplete.blink-cmp.setupOpts.keymap = {
+ preset = "none";
+
+ "<Up>" = ["select_prev" "fallback"];
+ "<C-n>" = [
+ (lib.generators.mkLuaInline '''
+ function(cmp)
+ if some_condition then return end -- runs the next command
+ return true -- doesn't run the next command
+ end,
+ ''')
+ "select_next"
+ ];
+};
+```
+
+
+
+
+
+
Type: one of "inherit", "default", "none", "super-tab", "enter", "cmdline"
+
+
Default: "none"
+
+
+
+
+
Type: list of string
+
Default list of sources to enable for completion.
+
+
Default: [
+ "lsp"
+ "path"
+ "snippets"
+ "buffer"
+]
+
+
+
+
+
Type: attribute set of (open submodule of anything)
+
Settings for completion providers.
+
+
Default: { }
+
+
+
+
+
Type: null or string
+
+
Default: null
+
+
+
+
+
Type: open submodule of attribute set of (submodule)
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable this source.
+
+
Default: false
+
Example: true
+
Declared in: vim.autocomplete.blink-cmp.sourcePlugins..enable
+
+
+
+
Type: string
+
+
Declared in: vim.autocomplete.blink-cmp.sourcePlugins..module
+
+
+
+
Type: null or package or one of "blink-cmp", "aerial-nvim", "alpha-nvim", "avante-nvim", "base16", "blink-cmp-spell", "blink-compat", "blink-emoji-nvim", "blink-ripgrep-nvim", "bufdelete-nvim", "bufferline-nvim", "catppuccin", "ccc-nvim", "cellular-automaton-nvim", "chatgpt-nvim", "cheatsheet-nvim", "cinnamon-nvim", "cmp-buffer", "cmp-luasnip", "cmp-nvim-lsp", "cmp-path", "cmp-treesitter", "codecompanion-nvim", "codewindow-nvim", "colorful-menu-nvim", "comment-nvim", "conform-nvim", "copilot-cmp", "copilot-lua", "crates-nvim", "csharpls-extended-lsp-nvim", "dashboard-nvim", "diffview-nvim", "direnv-vim", "dracula", "dressing-nvim", "elixir-tools-nvim", "everforest", "fastaction-nvim", "fidget-nvim", "flash-nvim", "flutter-tools-nvim", "friendly-snippets", "fzf-lua", "gesture-nvim", "git-conflict-nvim", "github", "gitlinker-nvim", "gitsigns-nvim", "glow-nvim", "gruvbox", "hardtime-nvim", "harpoon", "haskell-tools-nvim", "highlight-undo-nvim", "hop.nvim", "hunk-nvim", "hydra-nvim", "icon-picker-nvim", "image-nvim", "img-clip", "indent-blankline-nvim", "lazydev-nvim", "leap-nvim", "leetcode-nvim", "lsp-signature-nvim", "lspkind-nvim", "lspsaga-nvim", "lua-utils-nvim", "lualine-nvim", "luasnip", "lz-n", "lzn-auto-require", "markview-nvim", "mellow", "mind-nvim", "mini-ai", "mini-align", "mini-animate", "mini-base16", "mini-basics", "mini-bracketed", "mini-bufremove", "mini-clue", "mini-colors", "mini-comment", "mini-completion", "mini-cursorword", "mini-diff", "mini-doc", "mini-extra", "mini-files", "mini-fuzzy", "mini-git", "mini-hipatterns", "mini-hues", "mini-icons", "mini-indentscope", "mini-jump", "mini-jump2d", "mini-map", "mini-misc", "mini-move", "mini-notify", "mini-operators", "mini-pairs", "mini-pick", "mini-sessions", "mini-snippets", "mini-splitjoin", "mini-starter", "mini-statusline", "mini-surround", "mini-tabline", "mini-test", "mini-trailspace", "mini-visits", "minimap-vim", "mkdir-nvim", "modes-nvim", "multicursors-nvim", "neo-tree-nvim", "neocodeium", "neocord", "neogit", "neorg", "neorg-telescope", "neovim-session-manager", "new-file-template-nvim", "nix-develop-nvim", "noice-nvim", "none-ls-nvim", "nord", "nui-nvim", "nvim-autopairs", "nvim-biscuits", "nvim-cmp", "nvim-colorizer-lua", "nvim-cursorline", "nvim-dap", "nvim-dap-go", "nvim-dap-ui", "nvim-docs-view", "nvim-highlight-colors", "nvim-lightbulb", "nvim-lint", "nvim-lspconfig", "nvim-metals", "nvim-navbuddy", "nvim-navic", "nvim-neoclip-lua", "nvim-nio", "nvim-notify", "nvim-scrollbar", "nvim-surround", "nvim-tree-lua", "nvim-treesitter-context", "nvim-treesitter-textobjects", "nvim-ts-autotag", "nvim-ufo", "nvim-web-devicons", "obsidian-nvim", "oil-git-status.nvim", "oil-nvim", "omnisharp-extended-lsp-nvim", "onedark", "orgmode", "otter-nvim", "oxocarbon", "pathlib-nvim", "plenary-nvim", "precognition-nvim", "prettier-plugin-astro", "prettier-plugin-svelte", "project-nvim", "promise-async", "qmk-nvim", "rainbow-delimiters-nvim", "registers-nvim", "render-markdown-nvim", "rose-pine", "rtp-nvim", "run-nvim", "rustaceanvim", "smart-splits", "smartcolumn-nvim", "snacks-nvim", "solarized", "solarized-osaka", "sqls-nvim", "supermaven-nvim", "tabular", "telescope", "tiny-devicons-auto-colors-nvim", "todo-comments-nvim", "toggleterm-nvim", "tokyonight", "trouble", "ts-error-translator-nvim", "typst-concealer", "typst-preview-nvim", "undotree", "vim-dirtytalk", "vim-fugitive", "vim-illuminate", "vim-markdown", "vim-repeat", "vim-sleuth", "vim-startify", "which-key-nvim", "yanky-nvim", "nvim-treesitter", "flutter-tools-patched", "vim-repeat"
+
blink-cmp source plugin package.
+
+
Declared in: vim.autocomplete.blink-cmp.sourcePlugins..package
+
+
+
+
Type: boolean
+
Whether to enable emoji source.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: string
+
Value of vim.autocomplete.blink-cmp.setupOpts.sources.providers.emoji.module.
+
+
Default: "blink-emoji"
+
+
+
+
+
Type: null or package or one of "blink-cmp", "aerial-nvim", "alpha-nvim", "avante-nvim", "base16", "blink-cmp-spell", "blink-compat", "blink-emoji-nvim", "blink-ripgrep-nvim", "bufdelete-nvim", "bufferline-nvim", "catppuccin", "ccc-nvim", "cellular-automaton-nvim", "chatgpt-nvim", "cheatsheet-nvim", "cinnamon-nvim", "cmp-buffer", "cmp-luasnip", "cmp-nvim-lsp", "cmp-path", "cmp-treesitter", "codecompanion-nvim", "codewindow-nvim", "colorful-menu-nvim", "comment-nvim", "conform-nvim", "copilot-cmp", "copilot-lua", "crates-nvim", "csharpls-extended-lsp-nvim", "dashboard-nvim", "diffview-nvim", "direnv-vim", "dracula", "dressing-nvim", "elixir-tools-nvim", "everforest", "fastaction-nvim", "fidget-nvim", "flash-nvim", "flutter-tools-nvim", "friendly-snippets", "fzf-lua", "gesture-nvim", "git-conflict-nvim", "github", "gitlinker-nvim", "gitsigns-nvim", "glow-nvim", "gruvbox", "hardtime-nvim", "harpoon", "haskell-tools-nvim", "highlight-undo-nvim", "hop.nvim", "hunk-nvim", "hydra-nvim", "icon-picker-nvim", "image-nvim", "img-clip", "indent-blankline-nvim", "lazydev-nvim", "leap-nvim", "leetcode-nvim", "lsp-signature-nvim", "lspkind-nvim", "lspsaga-nvim", "lua-utils-nvim", "lualine-nvim", "luasnip", "lz-n", "lzn-auto-require", "markview-nvim", "mellow", "mind-nvim", "mini-ai", "mini-align", "mini-animate", "mini-base16", "mini-basics", "mini-bracketed", "mini-bufremove", "mini-clue", "mini-colors", "mini-comment", "mini-completion", "mini-cursorword", "mini-diff", "mini-doc", "mini-extra", "mini-files", "mini-fuzzy", "mini-git", "mini-hipatterns", "mini-hues", "mini-icons", "mini-indentscope", "mini-jump", "mini-jump2d", "mini-map", "mini-misc", "mini-move", "mini-notify", "mini-operators", "mini-pairs", "mini-pick", "mini-sessions", "mini-snippets", "mini-splitjoin", "mini-starter", "mini-statusline", "mini-surround", "mini-tabline", "mini-test", "mini-trailspace", "mini-visits", "minimap-vim", "mkdir-nvim", "modes-nvim", "multicursors-nvim", "neo-tree-nvim", "neocodeium", "neocord", "neogit", "neorg", "neorg-telescope", "neovim-session-manager", "new-file-template-nvim", "nix-develop-nvim", "noice-nvim", "none-ls-nvim", "nord", "nui-nvim", "nvim-autopairs", "nvim-biscuits", "nvim-cmp", "nvim-colorizer-lua", "nvim-cursorline", "nvim-dap", "nvim-dap-go", "nvim-dap-ui", "nvim-docs-view", "nvim-highlight-colors", "nvim-lightbulb", "nvim-lint", "nvim-lspconfig", "nvim-metals", "nvim-navbuddy", "nvim-navic", "nvim-neoclip-lua", "nvim-nio", "nvim-notify", "nvim-scrollbar", "nvim-surround", "nvim-tree-lua", "nvim-treesitter-context", "nvim-treesitter-textobjects", "nvim-ts-autotag", "nvim-ufo", "nvim-web-devicons", "obsidian-nvim", "oil-git-status.nvim", "oil-nvim", "omnisharp-extended-lsp-nvim", "onedark", "orgmode", "otter-nvim", "oxocarbon", "pathlib-nvim", "plenary-nvim", "precognition-nvim", "prettier-plugin-astro", "prettier-plugin-svelte", "project-nvim", "promise-async", "qmk-nvim", "rainbow-delimiters-nvim", "registers-nvim", "render-markdown-nvim", "rose-pine", "rtp-nvim", "run-nvim", "rustaceanvim", "smart-splits", "smartcolumn-nvim", "snacks-nvim", "solarized", "solarized-osaka", "sqls-nvim", "supermaven-nvim", "tabular", "telescope", "tiny-devicons-auto-colors-nvim", "todo-comments-nvim", "toggleterm-nvim", "tokyonight", "trouble", "ts-error-translator-nvim", "typst-concealer", "typst-preview-nvim", "undotree", "vim-dirtytalk", "vim-fugitive", "vim-illuminate", "vim-markdown", "vim-repeat", "vim-sleuth", "vim-startify", "which-key-nvim", "yanky-nvim", "nvim-treesitter", "flutter-tools-patched", "vim-repeat"
+
blink-cmp emoji source plugin package.
+
+
Default: "blink-emoji-nvim"
+
+
+
+
+
Type: boolean
+
Whether to enable ripgrep source.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: string
+
Value of vim.autocomplete.blink-cmp.setupOpts.sources.providers.ripgrep.module.
+
+
Default: "blink-ripgrep"
+
+
+
+
+
Type: null or package or one of "blink-cmp", "aerial-nvim", "alpha-nvim", "avante-nvim", "base16", "blink-cmp-spell", "blink-compat", "blink-emoji-nvim", "blink-ripgrep-nvim", "bufdelete-nvim", "bufferline-nvim", "catppuccin", "ccc-nvim", "cellular-automaton-nvim", "chatgpt-nvim", "cheatsheet-nvim", "cinnamon-nvim", "cmp-buffer", "cmp-luasnip", "cmp-nvim-lsp", "cmp-path", "cmp-treesitter", "codecompanion-nvim", "codewindow-nvim", "colorful-menu-nvim", "comment-nvim", "conform-nvim", "copilot-cmp", "copilot-lua", "crates-nvim", "csharpls-extended-lsp-nvim", "dashboard-nvim", "diffview-nvim", "direnv-vim", "dracula", "dressing-nvim", "elixir-tools-nvim", "everforest", "fastaction-nvim", "fidget-nvim", "flash-nvim", "flutter-tools-nvim", "friendly-snippets", "fzf-lua", "gesture-nvim", "git-conflict-nvim", "github", "gitlinker-nvim", "gitsigns-nvim", "glow-nvim", "gruvbox", "hardtime-nvim", "harpoon", "haskell-tools-nvim", "highlight-undo-nvim", "hop.nvim", "hunk-nvim", "hydra-nvim", "icon-picker-nvim", "image-nvim", "img-clip", "indent-blankline-nvim", "lazydev-nvim", "leap-nvim", "leetcode-nvim", "lsp-signature-nvim", "lspkind-nvim", "lspsaga-nvim", "lua-utils-nvim", "lualine-nvim", "luasnip", "lz-n", "lzn-auto-require", "markview-nvim", "mellow", "mind-nvim", "mini-ai", "mini-align", "mini-animate", "mini-base16", "mini-basics", "mini-bracketed", "mini-bufremove", "mini-clue", "mini-colors", "mini-comment", "mini-completion", "mini-cursorword", "mini-diff", "mini-doc", "mini-extra", "mini-files", "mini-fuzzy", "mini-git", "mini-hipatterns", "mini-hues", "mini-icons", "mini-indentscope", "mini-jump", "mini-jump2d", "mini-map", "mini-misc", "mini-move", "mini-notify", "mini-operators", "mini-pairs", "mini-pick", "mini-sessions", "mini-snippets", "mini-splitjoin", "mini-starter", "mini-statusline", "mini-surround", "mini-tabline", "mini-test", "mini-trailspace", "mini-visits", "minimap-vim", "mkdir-nvim", "modes-nvim", "multicursors-nvim", "neo-tree-nvim", "neocodeium", "neocord", "neogit", "neorg", "neorg-telescope", "neovim-session-manager", "new-file-template-nvim", "nix-develop-nvim", "noice-nvim", "none-ls-nvim", "nord", "nui-nvim", "nvim-autopairs", "nvim-biscuits", "nvim-cmp", "nvim-colorizer-lua", "nvim-cursorline", "nvim-dap", "nvim-dap-go", "nvim-dap-ui", "nvim-docs-view", "nvim-highlight-colors", "nvim-lightbulb", "nvim-lint", "nvim-lspconfig", "nvim-metals", "nvim-navbuddy", "nvim-navic", "nvim-neoclip-lua", "nvim-nio", "nvim-notify", "nvim-scrollbar", "nvim-surround", "nvim-tree-lua", "nvim-treesitter-context", "nvim-treesitter-textobjects", "nvim-ts-autotag", "nvim-ufo", "nvim-web-devicons", "obsidian-nvim", "oil-git-status.nvim", "oil-nvim", "omnisharp-extended-lsp-nvim", "onedark", "orgmode", "otter-nvim", "oxocarbon", "pathlib-nvim", "plenary-nvim", "precognition-nvim", "prettier-plugin-astro", "prettier-plugin-svelte", "project-nvim", "promise-async", "qmk-nvim", "rainbow-delimiters-nvim", "registers-nvim", "render-markdown-nvim", "rose-pine", "rtp-nvim", "run-nvim", "rustaceanvim", "smart-splits", "smartcolumn-nvim", "snacks-nvim", "solarized", "solarized-osaka", "sqls-nvim", "supermaven-nvim", "tabular", "telescope", "tiny-devicons-auto-colors-nvim", "todo-comments-nvim", "toggleterm-nvim", "tokyonight", "trouble", "ts-error-translator-nvim", "typst-concealer", "typst-preview-nvim", "undotree", "vim-dirtytalk", "vim-fugitive", "vim-illuminate", "vim-markdown", "vim-repeat", "vim-sleuth", "vim-startify", "which-key-nvim", "yanky-nvim", "nvim-treesitter", "flutter-tools-patched", "vim-repeat"
+
blink-cmp ripgrep source plugin package.
+
+
Default: "blink-ripgrep-nvim"
+
+
+
+
+
Type: boolean
+
Whether to enable spell source.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: string
+
Value of vim.autocomplete.blink-cmp.setupOpts.sources.providers.spell.module.
+
+
Default: "blink-cmp-spell"
+
+
+
+
+
Type: null or package or one of "blink-cmp", "aerial-nvim", "alpha-nvim", "avante-nvim", "base16", "blink-cmp-spell", "blink-compat", "blink-emoji-nvim", "blink-ripgrep-nvim", "bufdelete-nvim", "bufferline-nvim", "catppuccin", "ccc-nvim", "cellular-automaton-nvim", "chatgpt-nvim", "cheatsheet-nvim", "cinnamon-nvim", "cmp-buffer", "cmp-luasnip", "cmp-nvim-lsp", "cmp-path", "cmp-treesitter", "codecompanion-nvim", "codewindow-nvim", "colorful-menu-nvim", "comment-nvim", "conform-nvim", "copilot-cmp", "copilot-lua", "crates-nvim", "csharpls-extended-lsp-nvim", "dashboard-nvim", "diffview-nvim", "direnv-vim", "dracula", "dressing-nvim", "elixir-tools-nvim", "everforest", "fastaction-nvim", "fidget-nvim", "flash-nvim", "flutter-tools-nvim", "friendly-snippets", "fzf-lua", "gesture-nvim", "git-conflict-nvim", "github", "gitlinker-nvim", "gitsigns-nvim", "glow-nvim", "gruvbox", "hardtime-nvim", "harpoon", "haskell-tools-nvim", "highlight-undo-nvim", "hop.nvim", "hunk-nvim", "hydra-nvim", "icon-picker-nvim", "image-nvim", "img-clip", "indent-blankline-nvim", "lazydev-nvim", "leap-nvim", "leetcode-nvim", "lsp-signature-nvim", "lspkind-nvim", "lspsaga-nvim", "lua-utils-nvim", "lualine-nvim", "luasnip", "lz-n", "lzn-auto-require", "markview-nvim", "mellow", "mind-nvim", "mini-ai", "mini-align", "mini-animate", "mini-base16", "mini-basics", "mini-bracketed", "mini-bufremove", "mini-clue", "mini-colors", "mini-comment", "mini-completion", "mini-cursorword", "mini-diff", "mini-doc", "mini-extra", "mini-files", "mini-fuzzy", "mini-git", "mini-hipatterns", "mini-hues", "mini-icons", "mini-indentscope", "mini-jump", "mini-jump2d", "mini-map", "mini-misc", "mini-move", "mini-notify", "mini-operators", "mini-pairs", "mini-pick", "mini-sessions", "mini-snippets", "mini-splitjoin", "mini-starter", "mini-statusline", "mini-surround", "mini-tabline", "mini-test", "mini-trailspace", "mini-visits", "minimap-vim", "mkdir-nvim", "modes-nvim", "multicursors-nvim", "neo-tree-nvim", "neocodeium", "neocord", "neogit", "neorg", "neorg-telescope", "neovim-session-manager", "new-file-template-nvim", "nix-develop-nvim", "noice-nvim", "none-ls-nvim", "nord", "nui-nvim", "nvim-autopairs", "nvim-biscuits", "nvim-cmp", "nvim-colorizer-lua", "nvim-cursorline", "nvim-dap", "nvim-dap-go", "nvim-dap-ui", "nvim-docs-view", "nvim-highlight-colors", "nvim-lightbulb", "nvim-lint", "nvim-lspconfig", "nvim-metals", "nvim-navbuddy", "nvim-navic", "nvim-neoclip-lua", "nvim-nio", "nvim-notify", "nvim-scrollbar", "nvim-surround", "nvim-tree-lua", "nvim-treesitter-context", "nvim-treesitter-textobjects", "nvim-ts-autotag", "nvim-ufo", "nvim-web-devicons", "obsidian-nvim", "oil-git-status.nvim", "oil-nvim", "omnisharp-extended-lsp-nvim", "onedark", "orgmode", "otter-nvim", "oxocarbon", "pathlib-nvim", "plenary-nvim", "precognition-nvim", "prettier-plugin-astro", "prettier-plugin-svelte", "project-nvim", "promise-async", "qmk-nvim", "rainbow-delimiters-nvim", "registers-nvim", "render-markdown-nvim", "rose-pine", "rtp-nvim", "run-nvim", "rustaceanvim", "smart-splits", "smartcolumn-nvim", "snacks-nvim", "solarized", "solarized-osaka", "sqls-nvim", "supermaven-nvim", "tabular", "telescope", "tiny-devicons-auto-colors-nvim", "todo-comments-nvim", "toggleterm-nvim", "tokyonight", "trouble", "ts-error-translator-nvim", "typst-concealer", "typst-preview-nvim", "undotree", "vim-dirtytalk", "vim-fugitive", "vim-illuminate", "vim-markdown", "vim-repeat", "vim-sleuth", "vim-startify", "which-key-nvim", "yanky-nvim", "nvim-treesitter", "flutter-tools-patched", "vim-repeat"
+
blink-cmp spell source plugin package.
+
+
Default: "blink-cmp-spell"
+
+
+
+
+
Type: boolean
+
Whether to enable sources shared by blink.cmp and nvim-cmp.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable nvim-cmp.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Previous item [nvim-cmp]
+
+
Default: ""
+
+
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of the autocomplete plugin
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: string
+
A comma-separated list of options for completion.
+
See :help completeopt for the complete list.
+
+
Default: "menu,menuone,noinsert"
+
+
+
+
+
Type: mergeless list of string or (luaInline)
+
The comparator functions used for sorting completions.
+
You can either pass a valid inline lua function
+(see :help cmp-config.sorting.comparators),
+or a string, in which case the builtin comparator with that name will
+be used.
+
A deprio function and a kinds
+(require("cmp.types").lsp.CompletionItemKind) variable is provided
+above setupOpts. By passing a type to the function, the returned
+function will be a comparator that always ranks the specified kind the
+lowest.
+
+
Default: [
+ {
+ _type = "lua-inline";
+ expr = "deprio(kinds.Text)";
+ }
+ {
+ _type = "lua-inline";
+ expr = "deprio(kinds.Snippet)";
+ }
+ "offset"
+ "exact"
+ "score"
+ "kind"
+ "length"
+ "sort_text"
+]
+
+
+
+
+
Type: list of (null or package or one of "blink-cmp", "aerial-nvim", "alpha-nvim", "avante-nvim", "base16", "blink-cmp-spell", "blink-compat", "blink-emoji-nvim", "blink-ripgrep-nvim", "bufdelete-nvim", "bufferline-nvim", "catppuccin", "ccc-nvim", "cellular-automaton-nvim", "chatgpt-nvim", "cheatsheet-nvim", "cinnamon-nvim", "cmp-buffer", "cmp-luasnip", "cmp-nvim-lsp", "cmp-path", "cmp-treesitter", "codecompanion-nvim", "codewindow-nvim", "colorful-menu-nvim", "comment-nvim", "conform-nvim", "copilot-cmp", "copilot-lua", "crates-nvim", "csharpls-extended-lsp-nvim", "dashboard-nvim", "diffview-nvim", "direnv-vim", "dracula", "dressing-nvim", "elixir-tools-nvim", "everforest", "fastaction-nvim", "fidget-nvim", "flash-nvim", "flutter-tools-nvim", "friendly-snippets", "fzf-lua", "gesture-nvim", "git-conflict-nvim", "github", "gitlinker-nvim", "gitsigns-nvim", "glow-nvim", "gruvbox", "hardtime-nvim", "harpoon", "haskell-tools-nvim", "highlight-undo-nvim", "hop.nvim", "hunk-nvim", "hydra-nvim", "icon-picker-nvim", "image-nvim", "img-clip", "indent-blankline-nvim", "lazydev-nvim", "leap-nvim", "leetcode-nvim", "lsp-signature-nvim", "lspkind-nvim", "lspsaga-nvim", "lua-utils-nvim", "lualine-nvim", "luasnip", "lz-n", "lzn-auto-require", "markview-nvim", "mellow", "mind-nvim", "mini-ai", "mini-align", "mini-animate", "mini-base16", "mini-basics", "mini-bracketed", "mini-bufremove", "mini-clue", "mini-colors", "mini-comment", "mini-completion", "mini-cursorword", "mini-diff", "mini-doc", "mini-extra", "mini-files", "mini-fuzzy", "mini-git", "mini-hipatterns", "mini-hues", "mini-icons", "mini-indentscope", "mini-jump", "mini-jump2d", "mini-map", "mini-misc", "mini-move", "mini-notify", "mini-operators", "mini-pairs", "mini-pick", "mini-sessions", "mini-snippets", "mini-splitjoin", "mini-starter", "mini-statusline", "mini-surround", "mini-tabline", "mini-test", "mini-trailspace", "mini-visits", "minimap-vim", "mkdir-nvim", "modes-nvim", "multicursors-nvim", "neo-tree-nvim", "neocodeium", "neocord", "neogit", "neorg", "neorg-telescope", "neovim-session-manager", "new-file-template-nvim", "nix-develop-nvim", "noice-nvim", "none-ls-nvim", "nord", "nui-nvim", "nvim-autopairs", "nvim-biscuits", "nvim-cmp", "nvim-colorizer-lua", "nvim-cursorline", "nvim-dap", "nvim-dap-go", "nvim-dap-ui", "nvim-docs-view", "nvim-highlight-colors", "nvim-lightbulb", "nvim-lint", "nvim-lspconfig", "nvim-metals", "nvim-navbuddy", "nvim-navic", "nvim-neoclip-lua", "nvim-nio", "nvim-notify", "nvim-scrollbar", "nvim-surround", "nvim-tree-lua", "nvim-treesitter-context", "nvim-treesitter-textobjects", "nvim-ts-autotag", "nvim-ufo", "nvim-web-devicons", "obsidian-nvim", "oil-git-status.nvim", "oil-nvim", "omnisharp-extended-lsp-nvim", "onedark", "orgmode", "otter-nvim", "oxocarbon", "pathlib-nvim", "plenary-nvim", "precognition-nvim", "prettier-plugin-astro", "prettier-plugin-svelte", "project-nvim", "promise-async", "qmk-nvim", "rainbow-delimiters-nvim", "registers-nvim", "render-markdown-nvim", "rose-pine", "rtp-nvim", "run-nvim", "rustaceanvim", "smart-splits", "smartcolumn-nvim", "snacks-nvim", "solarized", "solarized-osaka", "sqls-nvim", "supermaven-nvim", "tabular", "telescope", "tiny-devicons-auto-colors-nvim", "todo-comments-nvim", "toggleterm-nvim", "tokyonight", "trouble", "ts-error-translator-nvim", "typst-concealer", "typst-preview-nvim", "undotree", "vim-dirtytalk", "vim-fugitive", "vim-illuminate", "vim-markdown", "vim-repeat", "vim-sleuth", "vim-startify", "which-key-nvim", "yanky-nvim", "nvim-treesitter", "flutter-tools-patched", "vim-repeat")
+
List of source plugins used by nvim-cmp.
+
+
Default: [ ]
+
+
+
+
+
Type: attribute set of (null or string)
+
The list of sources used by nvim-cmp
+
+
Default: {
+ buffer = "[Buffer]";
+ nvim-cmp = null;
+ path = "[Path]";
+}
+
Example:
{
+ buffer = "[Buffer]";
+ nvim-cmp = null;
+}
+
+
+
+
+
Type: boolean
+
Whether to enable autopairs.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of nvim-autopairs
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+ vim.bell
+
+ Link copied!
+
+
Type: one of "none", "visual", "on"
+
Set how bells are handled. Options: on, visual or none
+
+
Default: "none"
+
+
+
+
+
Type: boolean
+
Whether to enable cheatsheet-nvim: searchable cheatsheet for nvim using telescope.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable hardtime helper for no repeat keybinds.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of hardtime-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable which-key keybind helper menu.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: attribute set of (null or string)
+
Register label for which-key keybind helper menu
+
+
Default: { }
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of which-key
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Show a warning when issues were detected with mappings
+
+
Default: true
+
+
+
+
+
Type: one of "classic", "modern", "helix"
+
The default preset for the which-key window
+
+
Default: "modern"
+
+
+
+
+
Type: attribute set
+
Functions/Lua Patterns for formatting the labels
+
+
Default: {
+ "" = "RETURN";
+ "" = "SPACE";
+ "" = "SPACE";
+ "" = "TAB";
+}
+
+
+
+
+
Type: string
+
Which-key window border style
+
+
Default: "rounded"
+
+
+
+
+
read-only
+
Type: package
+
+
+
+
+
+
Type: boolean
+
Whether to enable clipboard management for Neovim. Users may still choose to manage their
+clipboard through vim.options should they wish to avoid using
+this module.
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: submodule
+
Clipboard providers for which packages will be added to nvf's
+extraPackages. The package field may be set to null
+if related packages are already found in system packages to
+potentially reduce closure sizes.
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable wl-copy.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or package
+
The wl-clipboard package to use.
+
+
Default: pkgs.wl-clipboard
+
+
+
+
+
Type: boolean
+
Whether to enable xclip.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or package
+
The xclip package to use.
+
+
Default: pkgs.xclip
+
+
+
+
+
Type: boolean
+
Whether to enable xsel.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or package
+
The xsel package to use.
+
+
Default: pkgs.xsel
+
+
+
+
+
Type: string
+
The register to be used by the Neovim clipboard. Recognized types are:
+
+-
+
unnamed: Vim will use the clipboard register "*" for all yank, delete,
+change and put operations which would normally go to the unnamed register.
+
+-
+
unnamedplus: A variant of the "unnamed" flag which uses the clipboard register
+"+" (:h quoteplus) instead of register "*" for all yank, delete,
+change and put operations which would normally go to the unnamed register.
+
+
+
When unnamed and unnamedplus is included simultaneously as "unnamed,unnamedplus",
+yank and delete operations (but not put) will additionally copy the text into register "*".
+
Please see :h clipboard for more details.
+
+
Default: ""
+
Example: "unnamedplus"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable fast and fully programmable greeter for neovim [alpha.nvim].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of attribute set of anything
+
+
Default: [ ]
+
+
+
+
+
Type: attribute set of anything
+
Optional global options
+
+
Default: { }
+
+
+
+
+
Type: null or one of "dashboard", "startify", "theta"
+
Alpha default theme to use
+
+
Default: "dashboard"
+
+
+
+
+
Type: boolean
+
Whether to enable Fancy and Blazing Fast start screen plugin of neovim [dashboard.nvim].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of dashboard.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: list of (attribute set)
+
List of book marks to display on start page
+
+
Default: [ ]
+
Example:
{
+ c = "~/.vimrc";
+}
+
+
+
+
+
Type: one of "cd", "lcd", "tcd"
+
Command to change the current window with.
+
+
Default: "lcd"
+
+
+
+
+
Type: boolean
+
Whether Vim should change to the directory of the file you open
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether Vim should change to the version control root when opening a file
+
+
Default: false
+
+
+
+
+
Type: list of (string or (attribute set) or list of string)
+
Commands that are presented to the user on startify page
+
+
Default: [ ]
+
+
+
+
+
+
+
Type: list of string
+
Specify a list of default characters to use instead of numbers
+
+
Default: [ ]
+
+
+
+
+
Type: boolean
+
Whether vim-startify should be disabled on startup.
+
This will prevent startify from opening on startup, but it can still
+be called with :Startify
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to enable fancy start screen for Vim [vim-startify].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: signed integer
+
+
Default: 10
+
+
+
+
+
Type: list of (attribute set)
+
Specify the lists and in what order they are displayed on startify.
+
+
Default: [
+ {
+ header = [
+ "MRU"
+ ];
+ type = "files";
+ }
+ {
+ header = [
+ "MRU Current Directory"
+ ];
+ type = "dir";
+ }
+ {
+ header = [
+ "Sessions"
+ ];
+ type = "sessions";
+ }
+ {
+ header = [
+ "Bookmarks"
+ ];
+ type = "bookmarks";
+ }
+ {
+ header = [
+ "Commands"
+ ];
+ type = "commands";
+ }
+]
+
+
+
+
+
Type: signed integer
+
Number of spaces used for left padding.
+
+
Default: 3
+
+
+
+
+
Type: boolean
+
Make vim-startify auto load Session.vim files from the current directory
+
+
Default: false
+
+
+
+
+
Type: list of string
+
Commands to run before saving a session
+
+
Default: [ ]
+
+
+
+
+
Type: boolean
+
Delete all buffers when loading or closing a session
+
+
Default: true
+
+
+
+
+
Type: string
+
Directory to save and load sessions from
+
+
Default: "~/.vim/session"
+
+
+
+
+
Type: boolean
+
Persist session before leaving vim or switching session
+
+
Default: false
+
+
+
+
+
Type: list of string
+
Patterns to remove from session files
+
+
Default: [ ]
+
+
+
+
+
Type: list of string
+
List of commands to run when loading a session.
+
+
Default: [ ]
+
+
+
+
+
Type: list of string
+
List of variables to save into a session file.
+
+
Default: [ ]
+
+
+
+
+
Type: boolean
+
While true, sessions will be sorted by date rather than alphabetically.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of string
+
List of regex patterns to exclude from MRU lists
+
+
Default: [ ]
+
+
+
+
+
Type: list of string
+
List of vim servers to not load startify for
+
+
Default: [ ]
+
+
+
+
+
Type: boolean
+
Whether to turn on unsafe mode for Startify.
+
While enabld, vim-startify will stops resolving links, checking files
+are readable and filtering bookmark list
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Set if you want startify to always update and not just when neovim closes
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Show environment variables in path if name is shorter than value
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to enable debug mode.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: one of 2, 3, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16
+
Set verbosity level of Neovim while debug mode is enabled.
+
Value must be be one of the levels expected by Neovim's
+verbose option
+
+
Default: 16
+
+
+
+
+
Type: null or absolute path
+
Set the log file that will be used to store verbose messages
+set by the verbose option.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Whether to enable debugging via nvim-dap.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: "dc"
+
+
+
+
+
Type: null or string
+
+
Default: "dvi"
+
+
+
+
+
Type: null or string
+
+
Default: "dvo"
+
+
+
+
+
Type: null or string
+
+
Default: "dh"
+
+
+
+
+
Type: null or string
+
+
Default: "dR"
+
+
+
+
+
Type: null or string
+
Re-run Last Debug Session
+
+
Default: "d."
+
+
+
+
+
Type: null or string
+
Continue to the current cursor
+
+
Default: "dgc"
+
+
+
+
+
Type: null or string
+
+
Default: "dgk"
+
+
+
+
+
Type: null or string
+
+
Default: "dgi"
+
+
+
+
+
Type: null or string
+
+
Default: "dgo"
+
+
+
+
+
Type: null or string
+
+
Default: "dgj"
+
+
+
+
+
Type: null or string
+
+
Default: "dq"
+
+
+
+
+
Type: null or string
+
+
Default: "db"
+
+
+
+
+
Type: null or string
+
+
Default: "du"
+
+
+
+
+
Type: null or string
+
+
Default: "dr"
+
+
+
+
+
Type: attribute set of string
+
List of debuggers to install
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Automatically Opens and Closes DAP-UI upon starting/closing a debugging session
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to enable UI extension for nvim-dap.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of nvim-dap-ui
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: open submodule of attribute set of ((attribute set of anything) or boolean or (luaInline))
+
Values that will be passed to vim.diagnostic.config after being converted
+to a Lua table. Possible values for each key can be found in the help text
+for vim.diagnostics.Opts. You may find more about the diagnostics API of
+Neovim in :help diagnostic-api.
+
+
Note
+
This option is freeform. You may set values that are not present in nvf
+documentation, but those values will not be fully type checked. Please
+refer to the help text for vim.diagnostic.Opts for appropriate values.
+
+
+
Default: { }
+
+
+
+
+
Type: (attribute set of anything) or boolean or (luaInline)
+
Use signs for diagnostics. See :help diagnostic-signs.
+
+
Note
+
The code presented in that example section uses Lua expressions as object keys which
+only translate well if you use lib.generators.mkLuaInline as in the example.
+
+
+
Default: false
+
Example:
signs.text = lib.generators.mkLuaInline ''
+ {
+ [vim.diagnostic.severity.ERROR] = " ",
+ [vim.diagnostic.severity.WARN] = " ",
+ }
+'';
+
+
+
+
+
+
Type: (attribute set of anything) or boolean or (luaInline)
+
Use underline for diagnostics.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Update diagnostics in Insert mode. If false, diagnostics will
+be updated on InsertLeave (:help InsertLeave).
+
+
Default: false
+
+
+
+
+
Type: (attribute set of anything) or boolean or (luaInline)
+
Use virtual lines for diagnostics.
+
+
Default: false
+
+
+
+
+
Type: (attribute set of anything) or boolean or (luaInline)
+
Use virtual text for diagnostics. If multiple diagnostics are set for a namespace,
+one prefix per diagnostic + the last diagnostic message are shown.
+
+
Default: false
+
Example:
{
+ format = lib.generators.mkLuaInline ''
+ function(diagnostic)
+ return string.format("%s (%s)", diagnostic.message, diagnostic.source)
+ end
+ '';
+}
+
+
+
+
+
+
Type: boolean
+
Whether to enable diagnostics module for Neovim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable asynchronous linter plugin for Neovim [nvim-lint].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable autocmd to lint after each save.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: luaInline
+
Define the global function nvf_lint which is used by nvf to lint.
+
+
Default: {
+ _type = "lua-inline";
+ expr = ''
+ function(buf)
+ local ft = vim.api.nvim_get_option_value("filetype", { buf = buf })
+ local linters = require("lint").linters
+ local linters_from_ft = require("lint").linters_by_ft[ft]
+
+ -- if no linter is configured for this filetype, stops linting
+ if linters_from_ft == nil then return end
+
+ for _, name in ipairs(linters_from_ft) do
+ local linter = linters[name]
+ assert(linter, 'Linter with name `' .. name .. '` not available')
+
+ if type(linter) == "function" then
+ linter = linter()
+ end
+ -- for require("lint").lint() to work, linter.name must be set
+ linter.name = linter.name or name
+ local cwd = linter.required_files
+
+ -- if no configuration files are configured, lint
+ if cwd == nil then
+ require("lint").lint(linter)
+ else
+ -- if configuration files are configured and present in the project, lint
+ for _, fn in ipairs(cwd) do
+ local path = vim.fs.joinpath(linter.cwd or vim.fn.getcwd(), fn);
+ if vim.uv.fs_stat(path) then
+ require("lint").lint(linter)
+ break
+ end
+ end
+ end
+ end
+ end
+ '';
+}
+
Example:
mkLuaInline ''
+ function(buf)
+ require("lint").try_lint()
+ end
+''
+
+
+
+
+
+
Type: attribute set of (submodule)
+
Linter configurations. Builtin linters will be updated and not
+replaced, but note that this is not a deep extend operation, i.e. if
+you define an env option, it will replace the entire env table
+provided by the builtin (if it exists).
+
+
Default: { }
+
Example:
''
+ {
+ phpcs = {
+ args = ["-q" "--report-json" "-"];
+
+ # this will replace the builtin's env table if it exists
+ env = {
+ ENV_VAR = "something";
+ };
+ };
+ }
+''
+
+
+
+
+
Type: null or boolean
+
Automatically add the current file name to the commands arguments. Only
+has an effect if stdin is false
+
+
Default: null
+
+
+
+
+
Type: null or (list of (string or (luaInline)))
+
+
Default: null
+
+
+
+
+
Type: null or string
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Working directory of the linter
+
+
Default: null
+
+
+
+
+
Type: null or (attribute set of string)
+
Environment variables to use
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Declares if exit code != 1 should be ignored or result in a warning.
+
+
Default: null
+
+
+
+
+
Type: null or string
+
+
Default: null
+
+
+
+
+
Type: null or (luaInline)
+
+
Default: null
+
+
+
+
+
Type: null or (list of string)
+
Required files to lint. These files must exist relative to the cwd
+of the linter or else this linter will be skipped
+
+
+
Default: null
+
Example:
[
+ "eslint.config.js"
+]
+
+
+
+
+
Type: null or boolean
+
Send content via stdin.
+
+
Default: null
+
+
+
+
+
Type: null or one of "stdout", "stderr", "both"
+
+
Default: null
+
+
+
+
+
Type: attribute set of list of string
+
Map of filetype to formatters. This option takes a set of key = value
+format where the value will be converted to its Lua equivalent
+through `toLuaObject. You are responsible for passing the correct Nix
+data types to generate a correct Lua value that conform is able to
+accept.
+
+
Default: { }
+
Example:
{
+ markdown = [
+ "vale"
+ ];
+ text = [
+ "vale"
+ ];
+}
+
+
+
+
+
Type: boolean
+
Whether to enable the experimental Lua module loader to speed up the start
+up process. If true, this will enable the experimental Lua module loader
+which:
+
+- overrides loadfile
+- adds the lua loader using the byte-compilation cache
+- adds the libs loader
+- removes the default Neovim loader
+
+
+
Note
+
The Lua module loader is disabled by default. Before setting this option, please
+take a look at the official documentation. This option may be enabled by
+default in the future.
+
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable filetree via neo-tree.nvim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of neo-tree
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to add a blank line at the top of the tree
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to automatically clean up broken neo-tree buffers
+saved in sessions
+
+
Default: false
+
+
+
+
+
Type: string
+
You can choose a specific source.
+
last here which indicates the last used source
+
+
Default: "filesystem"
+
+
+
+
+
Type: boolean
+
Whether to enable cursor hijacking.
+
If enabled neotree will keep the cursor on the first letter of the filename when moving in the tree
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable diagnostics.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable git status.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable markers for files with unsaved changes..
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable tracking of opened files.
+
Required for components.name.highlight_opened_files
+.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Refresh the tree when a file is written.
+
Only used if use_libuv_file_watcher is false.
+.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: one of "disabled", "open_default", "open_current"
+
+
Default: "open_default"
+
+
+
+
+
Type: boolean
+
Whether to enable async git status.
+
This will make the git status check async and will not block the UI.
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to hide the root node of the tree
+
+
Default: false
+
+
+
+
+
Type: one of "trace", "debug", "info", "warn", "error", "fatal"
+
Log level for the plugin.
+
+
Default: "info"
+
+
+
+
+
Type: boolean or string
+
Must be either a boolean or a path to your log file.
+
Use :NeoTreeLogs to show the file
+
+
Default: false
+
Example: /tmp/neo-tree.log
+
+
+
+
+
Type: list of string
+
A list of filetypes that should not be replaced when opening a file
+
+
Default: [
+ "terminal"
+ "Trouble"
+ "qf"
+ "edgy"
+]
+
+
+
+
+
Type: boolean
+
Whether to open files in the last window
+
If disabled, neo-tree will open files in top left window
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to retain the indent of the hidden root node
+
IF the root node is hidden, keep the indentation anyhow.
+This is needed if you use expanders because they render in the indent.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to enable filetree via nvim-tree.lua.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: "tg"
+
+
+
+
+
Type: null or string
+
+
Default: "tf"
+
+
+
+
+
Type: null or string
+
+
Default: "tr"
+
+
+
+
+
Type: null or string
+
+
Default: "t"
+
+
+
+
+
Type: boolean
+
Open when vim is started on a directory
+
+
Default: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of Nvim Tree
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: submodule
+
Configuration for various actions.
+
+
Default: { }
+
+
+
+
+
Type: submodule
+
vim change-directory behaviour
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Change the working directory when changing directories in the tree.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Use :cd instead of :lcd when changing directories.
+Consider that this might cause issues with the nvimTree.syncRootWithCwd option.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Restrict changing to a directory above the global current working directory.
+
+
Default: false
+
+
+
+
+
Type: submodule
+
Configuration for expand_all behaviour.
+
+
Default: { }
+
+
+
+
+
Type: list of string
+
A list of directories that should not be expanded automatically.
+
+
Default: [
+ ".git"
+ "target"
+ "build"
+ "result"
+]
+
+
+
+
+
Type: signed integer
+
Limit the number of folders being explored when expanding every folders.
+Avoids hanging neovim when running this action on very large folders.
+
+
Default: 300
+
+
+
+
+
+
+
Type: submodule
+
Configuration options for opening a file from nvim-tree.
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Prevent new opened file from opening in the same window as the tree.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Closes the explorer when opening a file.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Resizes the tree when opening a file. Previously view.auto_resize
+
+
Default: false
+
+
+
+
+
Type: submodule
+
+
Default: { }
+
+
+
+
+
Type: string
+
A string of chars used as identifiers by the window picker.
+
+
Default: "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"
+
+
+
+
+
Type: boolean
+
Enable the window picker. If this feature is not enabled, files will open in window from which you last opened the tree.
+
+
Default: false
+
+
+
+
+
Type: list of string
+
A list of buftypes to exclude from the window picker.
+
+
Default: [
+ "nofile"
+ "terminal"
+ "help"
+]
+
+
+
+
+
Type: list of string
+
A list of filetypes to exclude from the window picker.
+
+
Default: [
+ "notify"
+ "packer"
+ "qf"
+ "diff"
+ "fugitive"
+ "fugitiveblame"
+]
+
+
+
+
+
Type: string
+
Change the default window picker, can be a string "default" or a function.
+The function should return the window id that will open the node,
+or nil if an invalid window is picked or user cancelled the action.
+
The picker may create a new window.
+
+
Default: "default"
+
Example:
-- with s1n7ax/nvim-window-picker plugin
+require('window-picker').pick_window,
+
+
+
+
+
+
Type: boolean
+
Close any window displaying a file when removing the file from the tree
+
+
Default: true
+
+
+
+
+
Type: boolean
+
A boolean value that toggle the use of system clipboard when copy/paste
+function are invoked. When enabled, copied text will be stored in registers
+'+' (system), otherwise, it will be stored in '1' and '"'.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Auto reload tree on write
+
+
Default: true
+
+
+
+
+
Type: submodule
+
Show LSP and COC diagnostics in the signcolumn
+Note that the modified sign will take precedence over the diagnostics signs.
+
+
Default: { }
+
+
+
+
+
Type: signed integer
+
Idle milliseconds between diagnostic event and update.
+
+
Default: 50
+
+
+
+
+
Type: boolean
+
Whether to enable diagnostics view in the signcolumn..
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: submodule
+
Icons for diagnostic severity.
+
+
Default: { }
+
+
+
+
+
Type: string
+
Icon used for error diagnostic.
+
+
Default: ""
+
+
+
+
+
Type: string
+
Icon used for hint diagnostic.
+
+
Default: ""
+
+
+
+
+
Type: string
+
Icon used for info diagnostic.
+
+
Default: ""
+
+
+
+
+
Type: string
+
Icon used for warning diagnostic.
+
+
Default: ""
+
+
+
+
+
Type: submodule
+
Severity for which the diagnostics will be displayed. See :help diagnostic-severity
+
+
Default: { }
+
+
+
+
+
Type: one of "HINT", "INFO", "WARNING", "ERROR"
+
+
Default: "ERROR"
+
+
+
+
+
Type: one of "HINT", "INFO", "WARNING", "ERROR"
+
+
Default: "HINT"
+
+
+
+
+
Type: unspecified value
+
Show diagnostic icons on parent directories.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Show diagnostics icons on directories that are open.
+Only relevant when diagnostics.show_on_dirs is true.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Disables netrw and replaces it with tree
+
+
Default: false
+
+
+
+
+
Type: submodule
+
Will use file system watcher (libuv fs_event) to watch the filesystem for changes.
+Using this will disable BufEnter / BufWritePost events in nvim-tree which
+were used to update the whole tree. With this feature, the tree will be
+updated only for the appropriate folder change, resulting in better
+performance.
+
+
Default: { }
+
+
+
+
+
Type: signed integer
+
Idle milliseconds between filesystem change and action.
+
+
Default: 50
+
+
+
+
+
Type: boolean
+
Enable filesystem watchers.
+
+
Default: true
+
+
+
+
+
Type: list of string
+
List of vim regex for absolute directory paths that will not be watched.
+Backslashes must be escaped e.g. "my-project/\\.build$".
+Useful when path is not in .gitignore or git integration is disabled.
+
+
Default: [ ]
+
+
+
+
+
Type: submodule
+
+
Default: {
+ dotfiles = false;
+ exclude = [ ];
+ git_clean = false;
+ git_ignored = false;
+ no_buffer = false;
+}
+
+
+
+
+
Type: boolean
+
Do not show dotfiles: files starting with a .
+
+
Default: false
+
+
+
+
+
Type: list of string
+
List of directories or files to exclude from filtering: always show them.
+
+
Default: [ ]
+
+
+
+
+
Type: boolean
+
Do not show files with no git status. This will show ignored files when
+nvimTree.filters.gitIgnored is set, as they are effectively dirty.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Ignore files based on .gitignore. Requires git.enableto betrue`
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Do not show files that have no buflisted() buffer.
+
+
Default: false
+
+
+
+
+
Type: list of string
+
Disable git integration when git top-level matches these paths.
+May be relative, evaluated via ":p"
+
+
Default: [ ]
+
+
+
+
+
Type: boolean
+
Whether to enable Git integration with icons and colors..
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Show git icons on parent directories.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Show git icons on directories that are open.
+
+
Default: true
+
+
+
+
+
Type: signed integer
+
Kills the git process after some time if it takes too long.
+Git integration will be disabled after 10 git jobs exceed this timeout.
+
+
Default: 400
+
+
+
+
+
Type: boolean
+
Hijack the cursor in the tree to put it at the start of the filename
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Opens the tree if the tree was previously closed.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Enable the hijack_directories feature. Disable this option if you use vim-dirvish or dirbuf.nvim.
+If hijack_netrw and disable_netrw are false, this feature will be disabled.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Prevents netrw from automatically opening when opening directories
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Open nvimtree in place of the unnamed buffer if it's empty.
+
+
Default: false
+
+
+
+
+
Type: submodule
+
Configurations for the live_filtering feature.
+The live filter allows you to filter the tree nodes dynamically, based on
+regex matching (see vim.regex).
+This feature is bound to the f key by default.
+The filter can be cleared with the F key by default.
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to filter folders or not.
+
+
Default: true
+
+
+
+
+
Type: string
+
Prefix of the filter displayed in the buffer.
+
+
Default: "[FILTER]: "
+
+
+
+
+
Type: submodule
+
Indicate which file have unsaved modification.
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable Modified files with icons and color highlight..
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Show modified icons on parent directories.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Show modified icons on directories that are open.
+
+
Default: true
+
+
+
+
+
Type: submodule
+
Configuration for notifications.
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to use absolute paths or item names in fs action notifications.
+
+
Default: true
+
+
+
+
+
Type: one of "ERROR", "WARNING", "INFO", "DEBUG"
+
Specify minimum notification level, uses the values from vim.log.levels
+
+
Default: "INFO"
+
+
+
+
+
Type: boolean
+
Prefer startup root directory when updating root directory of the tree.
+Only relevant when update_focused_file.update_root is true
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Automatically reloads the tree on BufEnter nvim-tree.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Appends a trailing slash to folder names.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Display node whose name length is wider than the width of nvim-tree window in floating window.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Compact folders that only contain a single folder into one node in the file tree.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Enable file highlight for git attributes using NvimTreeGit highlight groups.
+Requires nvimTree.git.enable
+This can be used with or without the icons.
+
+
Default: false
+
+
+
+
+
Type: one of "none", "icon", "name", "all"
+
Highlight modified files in the tree using NvimTreeNormal highlight group.
+Requires nvimTree.view.highlightOpenedFiles
+
+
Default: "none"
+
+
+
+
+
Type: one of "none", "icon", "name", "all"
+
Highlight icons and/or names for bufloaded() files using the
+NvimTreeOpenedFile highlight group.
+
+
Default: "none"
+
+
+
+
+
Type: submodule
+
Configuration options for icons.
+
+
Default: { }
+
+
+
+
+
Type: one of "before", "after", "signcolumn", "right_align"
+
Place where the bookmark icons will be rendered.
+signcolumn requires view.signcolumn to be enabled.
+
+
Default: "after"
+
+
+
+
+
Type: one of "before", "after", "signcolumn", "right_align"
+
Place where the diagnostics icons will be rendered.
+signcolumn requires view.signcolumn to be enabled.
+
+
Default: "after"
+
+
+
+
+
Type: one of "before", "after", "signcolumn", "right_align"
+
Place where the git icons will be rendered.
+signcolumn requires view.signcolumn to be enabled.
+
+
Default: "before"
+
+
+
+
+
Type: submodule
+
Configuration options for icon glyphs.
+NOTE: Do not set any glyphs to more than two characters if it's going
+to appear in the signcolumn.
+
+
Default: { }
+
+
+
+
+
Type: string
+
Glyph for files. Will be overridden by nvim-web-devicons if available.
+
+
Default: ""
+
+
+
+
+
Type: attribute set
+
Glyphs for directories. Recommended to use the defaults unless you know what you are doing.
+
+
Default: {
+ arrow_closed = "";
+ arrow_open = "";
+ default = "";
+ empty = "";
+ empty_open = "";
+ open = "";
+ symlink = "";
+ symlink_open = "";
+}
+
+
+
+
+
Type: attribute set
+
+
Default: {
+ deleted = "";
+ ignored = "◌";
+ renamed = "➜";
+ staged = "✓";
+ unmerged = "";
+ unstaged = "✗";
+ untracked = "★";
+}
+
+
+
+
+
Type: string
+
Icon to display for modified files.
+
+
Default: ""
+
+
+
+
+
Type: string
+
+
Default: ""
+
+
+
+
+
Type: one of "before", "after", "signcolumn", "right_align"
+
Place where the hidden icons will be rendered.
+signcolumn requires view.signcolumn to be enabled.
+
+
Default: "after"
+
+
+
+
+
Type: one of "before", "after", "signcolumn", "right_align"
+
Place where the modified icons will be rendered.
+signcolumn requires view.signcolumn to be enabled.
+
+
Default: "after"
+
+
+
+
+
Type: string
+
Inserted between icon and filename
+
+
Default: " "
+
+
+
+
+
Type: boolean
+
Show an icon before the file name. nvim-web-devicons will be used if available.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Show an icon before the folder name.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Show a small arrow before the folder node. Arrow will be a part of the
+node when using renderer.indent_markers.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Show a git status icon, see renderer.icons.gitPlacement
+Requires git.enable to be true.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Show a modified icon, see renderer.icons.modifiedPlacement
+Requires modified.enable to be true.
+
+
Default: true
+
+
+
+
+
Type: string
+
Used as a separator between symlinks' source and target.
+
+
Default: " ➛ "
+
+
+
+
+
Type: boolean
+
Use the webdev icon colors, otherwise NvimTreeFileIcon
+
+
Default: true
+
+
+
+
+
Type: submodule
+
Configuration options for tree indent markers.
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable Display indent markers when folders are open..
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: attribute set
+
Individual elements of the indent markers
+
+
Default: {
+ bottom = "─";
+ corner = "└";
+ edge = "│";
+ item = "│";
+ none = "";
+}
+
+
+
+
+
Type: boolean
+
Display folder arrows in the same column as indent marker when using renderer.icons.show.folder_arrow
+
+
Default: true
+
+
+
+
+
Type: signed integer
+
Number of spaces for an each tree nesting level. Minimum 1.
+
+
Default: 2
+
+
+
+
+
Type: string or boolean
+
In what format to show root folder. See :help filename-modifiers for
+available string options.
+Set to false to hide the root folder.
+
Function is passed the absolute path of the root folder and should
+return a string. e.g.
+my_root_folder_label = function(path)
+return ".../" .. vim.fn.fnamemodify(path, ":t")
+end
+
+
Default: false
+
Example: "\"\":~:s?$?/..?\""
+
+
+
+
+
Type: list of string
+
A list of filenames that gets highlighted with `NvimTreeSpecialFile
+
+
Default: [
+ "Cargo.toml"
+ "README.md"
+ "readme.md"
+ "Makefile"
+ "MAKEFILE"
+ "flake.nix"
+]
+
+
+
+
+
Type: boolean
+
Whether to show the destination of the symlink.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Will change cwd of nvim-tree to that of new buffer's when opening nvim-tree.
+
+
Default: false
+
+
+
+
+
Type: list of string
+
Preferred root directories. Only relevant when updateFocusedFile.updateRoot is true
+
+
Default: [ ]
+
+
+
+
+
Type: boolean
+
Whether to enable Use vim.ui.select style prompts. Necessary when using a UI prompt decorator such as dressing.nvim or telescope-ui-select.nvim
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Sort folders before files. Has no effect when sort.sorter is a function.
+
+
Default: true
+
+
+
+
+
Type: one of "name", "extension", "modification_time", "case_sensitive", "suffix", "filetype"
+
How files within the same directory are sorted.
+
+
Default: "name"
+
+
+
+
+
Type: boolean
+
Changes the tree root directory on DirChanged and refreshes the tree.
+Only relevant when updateFocusedFile.updateRoot is true
+
(previously update_cwd)
+
+
Default: false
+
+
+
+
+
Type: list of string
+
Optional argument list.
+
+
Default: [ ]
+
+
+
+
+
Type: string
+
The open command itself
+
+
Default: "\${pkgs.xdg-utils}/bin/xdg-open"
+
+
+
+
+
Type: submodule
+
Configuration for tab behaviour.
+
+
Default: { }
+
+
+
+
+
Type: submodule
+
Configuration for syncing nvim-tree across tabs.
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Closes the tree across all tabpages when the tree is closed.
+
+
Default: false
+
+
+
+
+
Type: list of string
+
List of filetypes or buffer names on new tab that will prevent
+nvimTree.tab.sync.open and nvimTree.tab.sync.close
+
+
Default: [ ]
+
+
+
+
+
Type: boolean
+
Opens the tree automatically when switching tabpage or opening a new
+tabpage if the tree was previously open.
+
+
Default: false
+
+
+
+
+
Type: submodule
+
Configuration options for trashing.
+
+
Default: {
+ cmd = "\${pkgs.glib}/bin/gio trash";
+}
+
+
+
+
+
Type: string
+
The command used to trash items
+
+
+
+
+
+
Type: submodule
+
General UI configuration.
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Prompt before removing.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
+
Default: true
+
+
+
+
+
Type: submodule
+
Update the focused file on BufEnter, un-collapses the folders recursively
+until it finds the file.
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
+
Default: false
+
+
+
+
+
Type: list of string
+
List of buffer names and filetypes that will not update the root dir
+of the tree if the file isn't found under the current root directory.
+Only relevant when update_focused_file.update_root and
+update_focused_file.enable are true.
+
+
Default: [ ]
+
+
+
+
+
Type: boolean
+
Update the root directory of the tree if the file is not under current
+root directory. It prefers vim's cwd and root_dirs.
+Otherwise it falls back to the folder containing the file.
+Only relevant when update_focused_file.enable is true
+
+
Default: false
+
+
+
+
+
Type: submodule
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
If true, reposition the view so that the current node is initially centralized when entering nvim-tree.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Enable cursorline in nvim-tree window.
+
+
Default: true
+
+
+
+
+
Type: signed integer
+
Idle milliseconds before some reload / refresh operations.
+Increase if you experience performance issues around screen refresh.
+
+
Default: 15
+
+
+
+
+
Type: submodule
+
Configuration options for floating window.
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
If true, tree window will be floating.
+
+
Default: false
+
+
+
+
+
Type: attribute set
+
Floating window config. See :h nvim_open_win() for more details.
+
+
Default: {
+ border = "rounded";
+ col = 1;
+ height = 30;
+ relative = "editor";
+ row = 1;
+ width = 30;
+}
+
+
+
+
+
Type: boolean
+
Close the floating tree window when it loses focus.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Print the line number in front of each line.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Preserves window proportions when opening a file.
+If false, the height and width of windows other than nvim-tree will be equalized.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Show the line number relative to the line with the cursor in front of each line.
+If the option view.number is also true, the number on the cursor line
+will be the line number instead of 0.
+
+
Default: false
+
+
+
+
+
Type: one of "left", "right"
+
+
Default: "left"
+
+
+
+
+
Type: one of "yes", "auto", "no"
+
Show diagnostic sign column. Value can be "yes", "auto" or"no".
+
+
Default: "yes"
+
+
+
+
+
Type: signed integer or (attribute set)
+
Width of the window: can be a % string, a number representing columns, a
+function or a table.
+
A table (an attribute set in our case, see example) indicates that the view should be dynamically sized based on the
+longest line.
+
+
Default: 30
+
Example:
{
+ min = 30;
+ max = -1;
+ padding = 1;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable fzf-lua.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: one of "default", "default-title", "fzf-native", "fzf-tmux", "fzf-vim", "max-perf", "telescope", "skim", "borderless", "borderless-full", "border-fused"
+
The configuration profile to use
+
+
Default: "default"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of fzf-lua
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: string
+
+
Default: "\${pkgs.fzf.out}/bin/fzf"
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
Border type for the fzf-lua picker window
+
+
Default: "rounded"
+
+
+
+
+
Type: boolean
+
Whether to enable gesture-nvim: mouse gestures.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
Start drawing [gesture.nvim]
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Finish drawing [gesture.nvim]
+
+
Default: ""
+
+
+
+
+
Type: boolean
+
Whether to enable git integration suite.
+
Enabling this option will enable the following plugins:
+
+- gitsigns
+- hunk-nvim
+- vim-fugitive
+- git-conflict
+- gitlinker-nvim
+.
+
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable git-conflict.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
Choose Both [Git-Conflict]
+
+
Default: "cb"
+
+
+
+
+
Type: null or string
+
Go to the next Conflict [Git-Conflict]
+
+
Default: "[x"
+
+
+
+
+
Type: null or string
+
Choose None [Git-Conflict]
+
+
Default: "c0"
+
+
+
+
+
Type: null or string
+
Choose Ours [Git-Conflict]
+
+
Default: "co"
+
+
+
+
+
Type: null or string
+
Go to the previous Conflict [Git-Conflict]
+
+
Default: "]x"
+
+
+
+
+
Type: null or string
+
Choose Theirs [Git-Conflict]
+
+
Default: "ct"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of git-conflict
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable gitlinker-nvim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of gitlinker-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable gitsigns codeactions through null-ls.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable gitsigns.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: "hb"
+
+
+
+
+
Type: null or string
+
Diff project [Gitsigns]
+
+
Default: "hD"
+
+
+
+
+
Type: null or string
+
+
Default: "hd"
+
+
+
+
+
Type: null or string
+
+
Default: "]c"
+
+
+
+
+
Type: null or string
+
Preview hunk [Gitsigns]
+
+
Default: "hP"
+
+
+
+
+
Type: null or string
+
Previous hunk [Gitsigns]
+
+
Default: "[c"
+
+
+
+
+
Type: null or string
+
Reset buffer [Gitsigns]
+
+
Default: "hR"
+
+
+
+
+
Type: null or string
+
+
Default: "hr"
+
+
+
+
+
Type: null or string
+
Stage buffer [Gitsigns]
+
+
Default: "hS"
+
+
+
+
+
Type: null or string
+
+
Default: "hs"
+
+
+
+
+
Type: null or string
+
Toggle blame [Gitsigns]
+
+
Default: "tb"
+
+
+
+
+
Type: null or string
+
Toggle deleted [Gitsigns]
+
+
Default: "td"
+
+
+
+
+
Type: null or string
+
Undo stage hunk [Gitsigns]
+
+
Default: "hu"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of gitsigns
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable tool for splitting diffs in Neovim [hunk-nvim].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of hunk-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable An Interactive and powerful Git interface [Neogit].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: "gc"
+
+
+
+
+
Type: null or string
+
+
Default: "gs"
+
+
+
+
+
Type: null or string
+
+
Default: "gp"
+
+
+
+
+
Type: null or string
+
+
Default: "gP"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of neogit
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable vim-fugitive.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of attribute set of anything
+
A freeform attribute set containing global variable values for setting vim
+variables as early as possible. If populated, this option will set vim variables
+in the built luaConfigRC as the first item.
+
+
Note
+
{foo = "bar";} will set vim.g.foo to "bar", where the type of bar in the
+resulting Lua value will be inferred from the type of the value in the
+{name = value;} pair passed to the option.
+
+
+
Default: { }
+
Example:
{
+ some_variable = 42;
+}
+
+
+
+
+
Type: boolean
+
Whether to enable EditorConfig integration in Neovim.
+
This defaults to true as it is enabled by default in stock
+Neovim, setting this option to false disables EditorConfig
+integration entirely.
+
See Neovim documentation
+for more details on configuring EditorConfig behaviour.
+
+
Default: true
+
+
+
+
+
Type: string
+
The key used for <leader> mappings
+
+
Default: " "
+
+
+
+
+
Type: string
+
The key used for <localleader> mappings
+
+
Default: ","
+
+
+
+
+
Type: boolean
+
Hide search highlight so it doesn't stay highlighted
+
+
Default: false
+
+
+
+
+
Type: attribute set of (submodule)
+
Custom highlights to apply
+
+
Default: { }
+
Example:
{
+ SignColumn = {
+ bg = "#282828";
+ };
+}
+
+
+
+
+
Type: null or string
+
The background color to use. Written as color name or hex "#RRGGBB".
+
+
Default: null
+
Example: "#ebdbb2"
+
+
+
+
+
Type: null or integer between 0 and 100 (both inclusive)
+
Blend as an integer between 0 and 100
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
+
Default: null
+
Example: false
+
+
+
+
+
Type: null or (list of (one of "bold", "underline", "undercurl", "underdouble", "underdotted", "underdashed", "strikethrough", "reverse", "inverse", "italic", "standout", "altfont", "nocombine", "NONE"))
+
The cterm arguments to use. See ':h highlight-args'
+
+
Default: null
+
+
+
+
+
Type: null or string
+
The cterm background color to use
+
+
Default: null
+
+
+
+
+
Type: null or string
+
The cterm foreground color to use
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Don't override existing definition
+
+
Default: null
+
+
+
+
+
Type: null or string
+
The foreground color to use. Written as color name or hex "#RRGGBB".
+
+
Default: null
+
Example: "#ebdbb2"
+
+
+
+
+
Type: null or boolean
+
Whether to enable force update
+
+
Default: null
+
Example: false
+
+
+
+
+
Type: null or boolean
+
Whether to enable italic
+
+
Default: null
+
Example: false
+
+
+
+
+
Type: null or string
+
The name of another highlight group to link to
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Whether to enable nocombine
+
+
Default: null
+
Example: false
+
+
+
+
+
Type: null or boolean
+
Whether to enable reverse
+
+
Default: null
+
Example: false
+
+
+
+
+
Type: null or string
+
The special color to use. Written as color name or hex "#RRGGBB".
+
+
Default: null
+
Example: "#ebdbb2"
+
+
+
+
+
Type: null or boolean
+
Whether to enable standout
+
+
Default: null
+
Example: false
+
+
+
+
+
Type: null or boolean
+
Whether to enable strikethrough
+
+
Default: null
+
Example: false
+
+
+
+
+
Type: null or boolean
+
Whether to enable undercurl
+
+
Default: null
+
Example: false
+
+
+
+
+
Type: null or boolean
+
Whether to enable underdashed
+
+
Default: null
+
Example: false
+
+
+
+
+
Type: null or boolean
+
Whether to enable underdotted
+
+
Default: null
+
Example: false
+
+
+
+
+
Type: null or boolean
+
Whether to enable underdouble
+
+
Default: null
+
Example: false
+
+
+
+
+
Type: null or boolean
+
Whether to enable underline
+
+
Default: null
+
Example: false
+
+
+
+
+
Type: list of (submodule)
+
+
Default: { }
+
Example:
''
+ vim.keymaps = [
+ {
+ key = "<leader>m";
+ mode = "n";
+ silent = true;
+ action = ":make<CR>";
+ }
+ {
+ key = "<leader>l";
+ mode = ["n" "x"];
+ silent = true;
+ action = "<cmd>cnext<CR>";
+ }
+ ];
+''
+
+
+
+
+
Type: string
+
The command to execute.
+
+
+
+
+
+
Type: null or string
+
A description of this keybind, to be shown in which-key, if you have it enabled.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Means that the action is actually an expression. Equivalent to adding <expr> to a map.
+
+
Default: false
+
+
+
+
+
Type: null or string
+
The key that triggers this keybind.
+
+
+
+
+
+
Type: boolean
+
If true, action is considered to be lua code.
+Thus, it will not be wrapped in "".
+
+
Default: false
+
+
+
+
+
Type: string or list of string
+
The short-name of the mode to set the keymapping for. Passing an empty string is the equivalent of :map.
+
See :help map-modes for a list of modes.
+
+
Example: `["n" "v" "c"]` for normal, visual and command mode
+
+
+
+
+
Type: boolean
+
Whether to use the 'noremap' variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Equivalent to adding <script> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether this mapping should be silent. Equivalent to adding <silent> to a map.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to enable Assembly support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Assembly LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "asm-lsp" (singular enum)) or value "asm-lsp" (singular enum) convertible to it
+
Assembly LSP server to use
+
+
Default: [
+ "asm-lsp"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Assembly treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The asm treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.asm
+
+
+
+
+
Type: boolean
+
Whether to enable Astro language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Astro LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "astro" (singular enum)) or value "astro" (singular enum) convertible to it
+
Astro LSP server to use
+
+
Default: [
+ "astro"
+]
+
+
+
+
+
Type: package
+
The astro treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.astro
+
+
+
+
+
Type: boolean
+
Whether to enable Astro treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Bash language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Bash LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "bash-ls" (singular enum)) or value "bash-ls" (singular enum) convertible to it
+
+
Default: [
+ "bash-ls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Bash treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The bash treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.bash
+
+
+
+
+
+
Type: value "lldb-vscode" (singular enum)
+
+
Default: "lldb-vscode"
+
+
+
+
+
Type: boolean
+
Enable clang Debug Adapter
+
+
Default: false
+
+
+
+
+
Type: package
+
clang debugger package.
+
+
Default:
+
+
+
+
+
Type: boolean
+
Whether to enable C/C++ language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable clang LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of (one of "ccls", "clangd")) or (one of "ccls", "clangd") convertible to it
+
The clang LSP server to use
+
+
Default: [
+ "clangd"
+]
+
+
+
+
+
Type: package
+
The c treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.c
+
+
+
+
+
Type: package
+
The cpp treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.cpp
+
+
+
+
+
Type: boolean
+
Whether to enable C/C++ treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Clojure language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Clojure LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of value "clojure-lsp" (singular enum)
+
Clojure LSP server to use
+
+
Default: [
+ "clojure-lsp"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Clojure treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The clojure treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.clojure
+
+
+
+
+
Type: boolean
+
Whether to enable C# language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable C# LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of (one of "csharp_ls", "omnisharp", "roslyn_ls")) or (one of "csharp_ls", "omnisharp", "roslyn_ls") convertible to it
+
+
Default: [
+ "csharp_ls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable C# treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The c-sharp treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.c-sharp
+
+
+
+
+
Type: boolean
+
Whether to enable CSS language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable CSS LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "cssls" (singular enum)) or value "cssls" (singular enum) convertible to it
+
+
Default: [
+ "cssls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable CSS treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The css treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.css
+
+
+
+
+
Type: boolean
+
Whether to enable CUE language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable CUE LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable CUE treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The cue treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.cue
+
+
+
+
+
Type: boolean
+
Enable Dart DAP support via flutter-tools
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to enable Dart language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
+
Type: string
+
Virtual text character to highlight
+
+
Default: "■"
+
+
+
+
+
Type: boolean
+
Whether to enable Show the highlight using virtual text.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Dart LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "dart" (singular enum)) or value "dart" (singular enum) convertible to it
+
+
Default: [
+ "dart"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Dart treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The dart treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.dart
+
+
+
+
+
+
Type: boolean
+
Whether to enable Elixir language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Elixir LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "elixirls" (singular enum)) or value "elixirls" (singular enum) convertible to it
+
Elixir LSP server to use
+
+
Default: [
+ "elixirls"
+]
+
+
+
+
+
Type: package
+
The eex treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.eex
+
+
+
+
+
Type: boolean
+
Whether to enable Elixir treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The heex treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.heex
+
+
+
+
+
Type: package
+
The elixir treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.elixir
+
+
+
+
+
Type: boolean
+
Turn on Debug Adapter for enabled languages by default
+
+
Default: false
+
+
+
+
+
+
+
Type: boolean
+
Turn on Treesitter for enabled languages by default
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to enable F# language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable F# LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "fsautocomplete" (singular enum)) or value "fsautocomplete" (singular enum) convertible to it
+
+
Default: [
+ "fsautocomplete"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable F# treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The fsharp treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.fsharp
+
+
+
+
+
Type: boolean
+
Whether to enable Gleam language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Gleam LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "gleam" (singular enum)) or value "gleam" (singular enum) convertible to it
+
Gleam LSP server to use
+
+
Default: [
+ "gleam"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Gleam treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The gleam treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.gleam
+
+
+
+
+
Type: value "delve" (singular enum)
+
+
Default: "delve"
+
+
+
+
+
Type: boolean
+
Enable Go Debug Adapter via nvim-dap-go plugin
+
+
Default: false
+
+
+
+
+
Type: package
+
+
Default:
+
+
+
+
+
Type: boolean
+
Whether to enable Go language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Go LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "gopls" (singular enum)) or value "gopls" (singular enum) convertible to it
+
+
Default: [
+ "gopls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Go treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The go treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.go
+
+
+
+
+
Type: boolean
+
Whether to enable DAP support for Haskell.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package or list of string
+
Haskell DAP package or command to run the Haskell DAP
+
+
Default:
+
+
+
+
+
Type: boolean
+
Whether to enable Haskell support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Haskell LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of value "hls" (singular enum)
+
Haskell LSP server to use
+
+
Default: [
+ "hls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Treesitter support for Haskell.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The haskell treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.haskell
+
+
+
+
+
Type: boolean
+
Whether to enable HCL support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable HCL LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of value "terraform-ls" (singular enum)
+
+
Default: [
+ "terraform-ls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable HCL treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The hcl treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.hcl
+
+
+
+
+
Type: boolean
+
Whether to enable Helm language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Helm LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "helm-ls" (singular enum)) or value "helm-ls" (singular enum) convertible to it
+
+
Default: [
+ "helm-ls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Helm treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The helm treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.helm
+
+
+
+
+
Type: boolean
+
Whether to enable HTML language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable HTML LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of (one of "emmet-ls", "superhtml")) or (one of "emmet-ls", "superhtml") convertible to it
+
+
Default: [
+ "superhtml"
+]
+
+
+
+
+
Type: boolean
+
Enable autoclose/autorename of html tags (nvim-ts-autotag)
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to enable HTML treesitter support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The html treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.html
+
+
+
+
+
Type: boolean
+
Whether to enable Java language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Java LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of value "jdtls" (singular enum)
+
+
Default: [
+ "jdtls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Java treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The java treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.java
+
+
+
+
+
Type: boolean
+
Whether to enable JSON language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable JSON LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "jsonls" (singular enum)) or value "jsonls" (singular enum) convertible to it
+
+
Default: [
+ "jsonls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable JSON treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The json treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.json
+
+
+
+
+
Type: boolean
+
Whether to enable Julia language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Julia LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "julials" (singular enum)) or value "julials" (singular enum) convertible to it
+
Julia LSP Server to Use
+
+
Note
+
The entirety of Julia is bundled with nvf, if you enable this
+option, since there is no way to provide only the LSP server.
+
If you want to avoid that, you have to change
+vim.lsp.servers.julials.cmd to use
+the Julia binary in PATH, and add the LanguageServer
+package to Julia in your devshells.
+
Check the source file of this option for the full cmd.
+
+
+
Default: [
+ "julials"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Julia treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The julia treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.julia
+
+
+
+
+
Type: boolean
+
Whether to enable Just support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Just LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of value "just-lsp" (singular enum)
+
+
Default: [
+ "just-lsp"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Just treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The just treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.just
+
+
+
+
+
Type: boolean
+
Whether to enable Kotlin/HCL support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Kotlin LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of value "kotlin-language-server" (singular enum)
+
Kotlin LSP server to use
+
+
Default: [
+ "kotlin-language-server"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Kotlin treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The kotlin treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.kotlin
+
+
+
+
+
Type: boolean
+
Whether to enable Lua language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Lua LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable lazydev.nvim integration, useful for neovim plugin developers.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of value "lua-language-server" (singular enum)
+
+
Default: [
+ "lua-language-server"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Lua Treesitter support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The lua treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.lua
+
+
+
+
+
Type: boolean
+
Whether to enable Markdown markup language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
markview.nvim - a hackable markdown, Typst, latex, html(inline) & YAML previewer
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of markview-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of render-markdown
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: null or (list of string)
+
List of buffer filetypes to enable this plugin in.
+
This will cause the plugin to attach to new buffers who
+have any of these filetypes.
+
+
Default: null
+
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Markdown LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of (one of "markdown-oxide", "marksman")) or (one of "markdown-oxide", "marksman") convertible to it
+
Markdown LSP server to use
+
+
Default: [
+ "marksman"
+]
+
+
+
+
+
Type: boolean
+
Enable Markdown treesitter
+
+
Default: false
+
+
+
+
+
Type: package
+
The markdown-inline treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.markdown-inline
+
+
+
+
+
Type: package
+
The markdown treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.markdown
+
+
+
+
+
Type: boolean
+
Whether to enable Nim language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Nim LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "nimlsp" (singular enum)) or value "nimlsp" (singular enum) convertible to it
+
+
Default: [
+ "nimlsp"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Nim treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The nim treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.nim
+
+
+
+
+
Type: boolean
+
Whether to enable Nix language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Nix LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of (one of "nil", "nixd")) or (one of "nil", "nixd") convertible to it
+
+
Default: [
+ "nil"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Nix treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The nix treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.nix
+
+
+
+
+
Type: boolean
+
Whether to enable Nu language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Nu LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "nushell" (singular enum)) or value "nushell" (singular enum) convertible to it
+
+
Default: [
+ "nushell"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Nu treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The nu treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.nu
+
+
+
+
+
Type: boolean
+
Whether to enable OCaml language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable OCaml LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "ocaml-lsp" (singular enum)) or value "ocaml-lsp" (singular enum) convertible to it
+
OCaml LSP server to use
+
+
Default: [
+ "ocaml-lsp"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable OCaml treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The ocaml treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.ocaml
+
+
+
+
+
Type: boolean
+
Whether to enable Odin language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Odin LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "ols" (singular enum)) or value "ols" (singular enum) convertible to it
+
+
Default: [
+ "ols"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Odin treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The odin treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.odin
+
+
+
+
+
Type: boolean
+
Whether to enable PHP language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable PHP LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of (one of "intelephense", "phan", "phpactor")) or (one of "intelephense", "phan", "phpactor") convertible to it
+
+
Default: [
+ "phpactor"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable PHP treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The php treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.php
+
+
+
+
+
Type: value "debugpy" (singular enum)
+
+
Default: "debugpy"
+
+
+
+
+
Type: boolean
+
Enable Python Debug Adapter
+
+
Default: false
+
+
+
+
+
Type: package
+
+
Default:
+
Example: with pkgs; python39.withPackages (ps: with ps; [debugpy])
+
+
+
+
+
Type: boolean
+
Whether to enable Python language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Python LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of (one of "basedpyright", "pyright", "python-lsp-server")) or (one of "basedpyright", "pyright", "python-lsp-server") convertible to it
+
Python LSP server to use
+
+
Default: [
+ "basedpyright"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Python treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
Python treesitter grammar to use
+
+
Default:
+
+
+
+
+
Type: boolean
+
Whether to enable QML language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable QML LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "qmlls" (singular enum)) or value "qmlls" (singular enum) convertible to it
+
+
Default: [
+ "qmlls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable QML treesitter support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The qmljs treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.qmljs
+
+
+
+
+
Type: boolean
+
Whether to enable R language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable R LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "r_language_server" (singular enum)) or value "r_language_server" (singular enum) convertible to it
+
+
Default: [
+ "r_language_server"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable R treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The r treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.r
+
+
+
+
+
Type: boolean
+
Whether to enable Ruby language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Ruby LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of (one of "ruby_lsp", "solargraph")) or (one of "ruby_lsp", "solargraph") convertible to it
+
+
Default: [
+ "solargraph"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Ruby treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The ruby treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.ruby
+
+
+
+
+
Type: boolean
+
Rust Debug Adapter support
+
+
Default: false
+
+
+
+
+
Type: package
+
+
Default:
+
+
+
+
+
Type: boolean
+
Whether to enable Rust language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable crates.io dependency management [crates-nvim].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of crates-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable completion for crates-nvim's in-process language server.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: signed integer
+
The maximum number of search results to display
+
+
Default: 8
+
+
+
+
+
Type: signed integer
+
The minimum number of characters to type before completions begin appearing
+
+
Default: 3
+
+
+
+
+
Type: boolean
+
Whether to enable actions for crates-nvim's in-process language server.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable completion for crates-nvim's in-process language server.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable crates.nvim's in-process language server.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable hover actions for crates-nvim's in-process language server.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Rust LSP support (rust-analyzer with extra tools).
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: string
+
Options to pass to rust analyzer
+
+
Default: ""
+
Example:
''
+ ['rust-analyzer'] = {
+ cargo = {allFeature = true},
+ checkOnSave = true,
+ procMacro = {
+ enable = true,
+ },
+ },
+''
+
+
+
+
+
Type: package or list of string
+
rust-analyzer package, or the command to run as a list of strings
+
+
Default:
+
Example: "[lib.getExe pkgs.jdt-language-server \"-data\" \"~/.cache/jdtls/workspace\"]"
+
+
+
+
+
Type: boolean
+
Whether to enable Rust treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The rust treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.rust
+
+
+
+
+
Type: luaInline
+
Lua configuration for dap
+
+
Default: {
+ _type = "lua-inline";
+ expr = ''
+ dap.configurations.scala = {
+ {
+ type = "scala",
+ request = "launch",
+ name = "RunOrTest",
+ metals = {
+ runType = "runOrTestFile",
+ --args = { "firstArg", "secondArg", "thirdArg" }, -- here just as an example
+ },
+ },
+ {
+ type = "scala",
+ request = "launch",
+ name = "Test Target",
+ metals = {
+ runType = "testTarget",
+ },
+ },
+ }
+ '';
+}
+
+
+
+
+
Type: boolean
+
Whether to enable Scala Debug Adapter support (metals).
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Scala language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Remove the 'F' flag from shortmess to allow messages to be shown. Without doing this, autocommands that deal with filetypes prohibit messages from being shown
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to enable Scala LSP support (metals).
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: "lc"
+
+
+
+
+
+
Type: package
+
The metals package to use.
+
+
Default: pkgs.metals
+
+
+
+
+
Type: boolean
+
Whether to enable Scala treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The scala treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.scala
+
+
+
+
+
Type: string
+
SQL dialect for sqlfluff (if used)
+
+
Default: "ansi"
+
+
+
+
+
Type: boolean
+
Whether to enable SQL language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable SQL LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "sqls" (singular enum)) or value "sqls" (singular enum) convertible to it
+
+
Default: [
+ "sqls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable SQL treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
SQL treesitter grammar to use
+
+
Default:
+
+
+
+
+
Type: boolean
+
Whether to enable Svelte language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Svelte LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "svelte" (singular enum)) or value "svelte" (singular enum) convertible to it
+
Svelte LSP server to use
+
+
Default: [
+ "svelte"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Svelte treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The svelte treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.svelte
+
+
+
+
+
Type: boolean
+
Whether to enable Tailwindcss language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Tailwindcss LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "tailwindcss" (singular enum)) or value "tailwindcss" (singular enum) convertible to it
+
Tailwindcss LSP server to use
+
+
Default: [
+ "tailwindcss"
+]
+
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Typescript/Javascript language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of ts-error-translator
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Automatically override the publish_diagnostics handler
+
+
Default: true
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Typescript/Javascript LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of (one of "denols", "ts_ls", "tsserver")) or (one of "denols", "ts_ls", "tsserver") convertible to it
+
Typescript/Javascript LSP server to use
+
+
Default: [
+ "ts_ls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Typescript/Javascript treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The javascript treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.javascript
+
+
+
+
+
Type: package
+
The typescript treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.typescript
+
+
+
+
+
Type: package
+
The tsx treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.tsx
+
+
+
+
+
Type: boolean
+
Whether to enable Typst language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
Enable typst-concealer in buffer
+
+
Default: "TT"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of typst-concealer
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: null or string
+
What color should typst-concealer render text/stroke with? (only applies when styling_type is 'colorscheme')
+
+
Default: null
+
Example: "rgb(\"#f012be\")"
+
+
+
+
+
Type: null or boolean
+
Should typst-concealer still conceal when the normal mode cursor goes over a line.
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Should typst-concealer provide diagnostics on error?
+
+
Default: true
+
+
+
+
+
Type: null or boolean
+
Should typst-concealer conceal newly opened buffers by default?
+
+
Default: null
+
+
+
+
+
Type: null or signed integer
+
What PPI should typst render at. Plugin default is 300, typst's normal default is 144.
+
+
Default: null
+
+
+
+
+
Type: null or one of "simple", "none", "colorscheme"
+
What kind of styling should typst-concealer apply to your typst?
+
+
Default: null
+
+
+
+
+
Type: string
+
Where should typst-concealer look for your typst binary?
+
+
Default: "\${pkgs.typst.out}/bin/typst"
+
Example: "lib.getExe pkgs.typst"
+
+
+
+
+
Type: boolean
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of typst-preview-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: attribute set of string
+
Provide the path to binaries for dependencies. Setting this
+to a non-null value will skip the download of the binary by
+the plugin.
+
+
Default: {
+ tinymist = "\${pkgs.tinymist.out}/bin/tinymist";
+ websocat = "\${pkgs.websocat.out}/bin/websocat";
+}
+
+
+
+
+
+
Type: null or string
+
Custom format string to open the output link provided with %s
+
+
Default: null
+
Example: "firefox %s -P typst-preview --class typst-preview"
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Typst LSP support (typst-lsp).
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of (one of "tinymist", "typst_lsp")) or (one of "tinymist", "typst_lsp") convertible to it
+
Typst LSP server to use
+
+
Default: [
+ "tinymist"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Typst treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The typst treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.typst
+
+
+
+
+
Type: boolean
+
Whether to enable Vala language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Vala LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "vala_ls" (singular enum)) or value "vala_ls" (singular enum) convertible to it
+
+
Default: [
+ "vala_ls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Vala treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The vala treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.vala
+
+
+
+
+
Type: boolean
+
Whether to enable WGSL language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable WGSL LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "wgsl-analyzer" (singular enum)) or value "wgsl-analyzer" (singular enum) convertible to it
+
+
Default: [
+ "wgsl-analyzer"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable WGSL treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The wgsl treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.wgsl
+
+
+
+
+
Type: boolean
+
Whether to enable YAML language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Yaml LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "yaml-language-server" (singular enum)) or value "yaml-language-server" (singular enum) convertible to it
+
+
Default: [
+ "yaml-language-server"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable YAML treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The yaml treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.yaml
+
+
+
+
+
Type: value "lldb-vscode" (singular enum)
+
+
Default: "lldb-vscode"
+
+
+
+
+
Type: boolean
+
Enable Zig Debug Adapter
+
+
Default: false
+
+
+
+
+
Type: package
+
+
Default:
+
+
+
+
+
Type: boolean
+
Whether to enable Zig language support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Zig LSP support.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: (list of value "zls" (singular enum)) or value "zls" (singular enum) convertible to it
+
+
Default: [
+ "zls"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable Zig treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The zig treesitter package to use.
+
+
Default: pkgs.vimPlugins.nvim-treesitter.builtGrammars.zig
+
+
+
+
+
Type: boolean
+
Whether to enable plugin lazy-loading via lz.n and lzn-auto-require.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Enable lzn-auto-require. Since builtin plugins rely on this, only turn
+off for debugging.
+
+
Default: true
+
+
+
+
+
Type: value "lz.n" (singular enum)
+
+
Default: "lz.n"
+
+
+
+
+
Type: attribute set of (submodule)
+
Plugins to lazy load.
+
The attribute key is used as the plugin name: for the default vim.g.lz_n.load
+function this should be either the package.pname or package.name.
+
+
Default: { }
+
Example:
''
+ {
+ toggleterm-nvim = {
+ package = "toggleterm-nvim";
+ setupModule = "toggleterm";
+ setupOpts = cfg.setupOpts;
+
+ after = "require('toggleterm').do_something()";
+ cmd = ["ToggleTerm"];
+ };
+
+ $''${pkgs.vimPlugins.vim-bbye.pname} = {
+ package = pkgs.vimPlugins.vim-bbye;
+ cmd = ["Bdelete" "Bwipeout"];
+ };
+ }
+''
+
+
+
+
+
Type: null or strings concatenated with "\n"
+
Lua code to run after plugin is loaded. This will be wrapped in a function.
+
If vim.lazy.plugins.name.setupModule is provided, the setup will be ran before after.
+
+
Default: null
+
+
+
+
+
Type: null or strings concatenated with "\n"
+
Lua code to run before plugin is loaded. This will be wrapped in a function.
+
+
Default: null
+
+
+
+
+
Type: null or strings concatenated with "\n"
+
Lua code to run before any plugins are loaded. This will be wrapped in a function.
+
+
Default: null
+
+
+
+
+
Type: null or strings concatenated with "\n"
+
Lua code to run after the plugin is loaded, but before the setup
+function is called.
+
+
Default: null
+
+
+
+
+
Type: null or string or list of string
+
+
Default: null
+
+
+
+
+
Type: null or string or list of string
+
Lazy-load on colorscheme.
+
+
Default: null
+
+
+
+
+
Type: null or boolean or (luaInline)
+
When false, or if the lua function returns false, this plugin will not be included in the spec
+
+
Default: null
+
+
+
+
+
Type: null or string or (submodule) or list of (string or (submodule))
+
+
Default: null
+
+
+
+
+
Type: null or string or list of string
+
+
Default: null
+
+
+
+
+
Type: null or string or list of (submodule) or list of string
+
Lazy-load on key mapping
+
+
Default: null
+
Example:
''
+ keys = [
+ {
+ mode = "n";
+ key = "<leader>s";
+ action = ":DapStepOver<cr>";
+ desc = "DAP Step Over";
+ }
+ {
+ mode = ["n", "x"];
+ key = "<leader>dc";
+ action = "function() require('dap').continue() end";
+ lua = true;
+ desc = "DAP Continue";
+ }
+ ]
+''
+
+
+
+
+
Type: null or boolean
+
Force enable/disable lazy-loading. null means only lazy-load if
+a valid lazy-load condition is set e.g. cmd, ft, keys etc.
+
+
Default: null
+
+
+
+
+
Type: null or strings concatenated with "\n"
+
Lua code to override the vim.g.lz_n.load() function for a single plugin.
+
This will be wrapped in a function(name) ... end.
+
+
Default: null
+
+
+
+
+
Type: null or null or package or one of "blink-cmp", "aerial-nvim", "alpha-nvim", "avante-nvim", "base16", "blink-cmp-spell", "blink-compat", "blink-emoji-nvim", "blink-ripgrep-nvim", "bufdelete-nvim", "bufferline-nvim", "catppuccin", "ccc-nvim", "cellular-automaton-nvim", "chatgpt-nvim", "cheatsheet-nvim", "cinnamon-nvim", "cmp-buffer", "cmp-luasnip", "cmp-nvim-lsp", "cmp-path", "cmp-treesitter", "codecompanion-nvim", "codewindow-nvim", "colorful-menu-nvim", "comment-nvim", "conform-nvim", "copilot-cmp", "copilot-lua", "crates-nvim", "csharpls-extended-lsp-nvim", "dashboard-nvim", "diffview-nvim", "direnv-vim", "dracula", "dressing-nvim", "elixir-tools-nvim", "everforest", "fastaction-nvim", "fidget-nvim", "flash-nvim", "flutter-tools-nvim", "friendly-snippets", "fzf-lua", "gesture-nvim", "git-conflict-nvim", "github", "gitlinker-nvim", "gitsigns-nvim", "glow-nvim", "gruvbox", "hardtime-nvim", "harpoon", "haskell-tools-nvim", "highlight-undo-nvim", "hop.nvim", "hunk-nvim", "hydra-nvim", "icon-picker-nvim", "image-nvim", "img-clip", "indent-blankline-nvim", "lazydev-nvim", "leap-nvim", "leetcode-nvim", "lsp-signature-nvim", "lspkind-nvim", "lspsaga-nvim", "lua-utils-nvim", "lualine-nvim", "luasnip", "lz-n", "lzn-auto-require", "markview-nvim", "mellow", "mind-nvim", "mini-ai", "mini-align", "mini-animate", "mini-base16", "mini-basics", "mini-bracketed", "mini-bufremove", "mini-clue", "mini-colors", "mini-comment", "mini-completion", "mini-cursorword", "mini-diff", "mini-doc", "mini-extra", "mini-files", "mini-fuzzy", "mini-git", "mini-hipatterns", "mini-hues", "mini-icons", "mini-indentscope", "mini-jump", "mini-jump2d", "mini-map", "mini-misc", "mini-move", "mini-notify", "mini-operators", "mini-pairs", "mini-pick", "mini-sessions", "mini-snippets", "mini-splitjoin", "mini-starter", "mini-statusline", "mini-surround", "mini-tabline", "mini-test", "mini-trailspace", "mini-visits", "minimap-vim", "mkdir-nvim", "modes-nvim", "multicursors-nvim", "neo-tree-nvim", "neocodeium", "neocord", "neogit", "neorg", "neorg-telescope", "neovim-session-manager", "new-file-template-nvim", "nix-develop-nvim", "noice-nvim", "none-ls-nvim", "nord", "nui-nvim", "nvim-autopairs", "nvim-biscuits", "nvim-cmp", "nvim-colorizer-lua", "nvim-cursorline", "nvim-dap", "nvim-dap-go", "nvim-dap-ui", "nvim-docs-view", "nvim-highlight-colors", "nvim-lightbulb", "nvim-lint", "nvim-lspconfig", "nvim-metals", "nvim-navbuddy", "nvim-navic", "nvim-neoclip-lua", "nvim-nio", "nvim-notify", "nvim-scrollbar", "nvim-surround", "nvim-tree-lua", "nvim-treesitter-context", "nvim-treesitter-textobjects", "nvim-ts-autotag", "nvim-ufo", "nvim-web-devicons", "obsidian-nvim", "oil-git-status.nvim", "oil-nvim", "omnisharp-extended-lsp-nvim", "onedark", "orgmode", "otter-nvim", "oxocarbon", "pathlib-nvim", "plenary-nvim", "precognition-nvim", "prettier-plugin-astro", "prettier-plugin-svelte", "project-nvim", "promise-async", "qmk-nvim", "rainbow-delimiters-nvim", "registers-nvim", "render-markdown-nvim", "rose-pine", "rtp-nvim", "run-nvim", "rustaceanvim", "smart-splits", "smartcolumn-nvim", "snacks-nvim", "solarized", "solarized-osaka", "sqls-nvim", "supermaven-nvim", "tabular", "telescope", "tiny-devicons-auto-colors-nvim", "todo-comments-nvim", "toggleterm-nvim", "tokyonight", "trouble", "ts-error-translator-nvim", "typst-concealer", "typst-preview-nvim", "undotree", "vim-dirtytalk", "vim-fugitive", "vim-illuminate", "vim-markdown", "vim-repeat", "vim-sleuth", "vim-startify", "which-key-nvim", "yanky-nvim", "nvim-treesitter", "flutter-tools-patched", "vim-repeat"
+
Plugin package.
+
If null, a custom load function must be provided
+
+
+
+
+
+
Type: null or signed integer
+
Only useful for stat plugins (not lazy-loaded) to force loading certain plugins first.
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Lua module to run setup function on.
+
+
Default: null
+
+
+
+
+
Type: attribute set of anything
+
Options to pass to the setup function
+
+
Default: { }
+
+
+
+
+
Type: one of "relative", "number", "relNumber", "none"
+
How line numbers are displayed.
+
+
Default: "relNumber"
+
Example: "none"
+
+
+
+
+
Type: boolean
+
Whether to enable global LSP functionality for Neovim.
+
This option controls whether to enable LSP functionality within modules under
+vim.languages. You do not need to set this to true for language
+servers defined in vim.lsp.servers to take effect, since they are
+enabled automatically.
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
Type: boolean
+
Whether to enable Harper grammar checking LSP.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: attribute set of anything
+
Settings to pass to harper-ls
+
+
Default: { }
+
Example:
{
+ codeActions = {
+ ForceStable = false;
+ };
+ diagnosticSeverity = "hint";
+ dialect = "American";
+ fileDictPath = "";
+ ignoredLintsPath = { };
+ isolateEnglish = false;
+ linters = {
+ BoringWords = true;
+ PossessiveNoun = true;
+ SentenceCapitalization = false;
+ SpellCheck = false;
+ };
+ markdown = {
+ IgnoreLinkTitle = false;
+ };
+ maxFileLength = 120000;
+ userDictPath = "";
+ workspaceDictPath = "";
+}
+
+
+
+
+
Type: boolean
+
Whether to enable inlay hints.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable updating lightbulb glyph automatically.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: list of string
+
Events on which to update nvim-lightbulb glyphs
+
+
Default: [
+ "CursorHold"
+ "CursorHoldI"
+]
+
+
+
+
+
Type: string or (luaInline)
+
File patterns or buffer names to match, determining which files or buffers trigger
+glyph updates.
+
+
Default: "*"
+
+
+
+
+
Type: boolean
+
Whether to enable Lightbulb for code actions. Requires an emoji font.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of nvim-lightbulb
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable lsp signature viewer.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of lsp-signature
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable nvim-lspconfig, also enabled automatically.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: attribute set of string
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable vscode-like pictograms for lsp [lspkind].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of lspkind.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: null or (luaInline)
+
The function that will be called before lspkind's modifications are applied
+
+
Default: null
+
+
+
+
+
Type: one of "text", "text_symbol", "symbol_text", "symbol"
+
Defines how annotations are shown
+
+
Default: "symbol_text"
+
+
+
+
+
Type: boolean
+
Whether to enable LSP Saga.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of lspsaga
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
Border type, see :help nvim_open_win
+
+
Default: "rounded"
+
+
+
+
+
Type: null or string
+
+
Default: "lwa"
+
+
+
+
+
Type: null or string
+
+
Default: "la"
+
+
+
+
+
Type: null or string
+
+
Default: "lH"
+
+
+
+
+
+
Type: null or string
+
+
Default: "lgD"
+
+
+
+
+
Type: null or string
+
+
Default: "lgd"
+
+
+
+
+
Type: null or string
+
+
Default: "lgt"
+
+
+
+
+
Type: null or string
+
+
Default: "lh"
+
+
+
+
+
Type: null or string
+
+
Default: "lS"
+
+
+
+
+
Type: null or string
+
+
Default: "lgi"
+
+
+
+
+
Type: null or string
+
+
Default: "lgr"
+
+
+
+
+
Type: null or string
+
+
Default: "lwl"
+
+
+
+
+
Type: null or string
+
+
Default: "lws"
+
+
+
+
+
Type: null or string
+
+
Default: "lgn"
+
+
+
+
+
Type: null or string
+
+
Default: "le"
+
+
+
+
+
Type: null or string
+
Go to previous diagnostic
+
+
Default: "lgp"
+
+
+
+
+
Type: null or string
+
Remove workspace folder
+
+
Default: "lwr"
+
+
+
+
+
Type: null or string
+
+
Default: "ln"
+
+
+
+
+
Type: null or string
+
+
Default: "ls"
+
+
+
+
+
+
Type: boolean
+
Whether to enable null-ls, plugin to use Neovim as a language server to inject LSP diagnostics,
+code actions, and more via Lua.
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of null-ls
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: signed integer
+
Amount of time between the last change to a buffer and the next textDocument/didChange notification.
+
+
Default: 250
+
+
+
+
+
Type: boolean
+
Whether to enable debugging information for null-ls.
+
Displays all possible log messages and writes them to the null-ls log,
+which you can view with the command :NullLsLog
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: signed integer
+
Amount of time (in milliseconds) after which built-in sources will time out.
+
+
Note
+
Built-in sources can define their own timeout period and users can override
+the timeout period on a per-source basis
+
+
+
Default: 5000
+
+
+
+
+
+
Type: null or (luaInline)
+
Defines an on_attach callback to run whenever null-ls attaches to a buffer.
+
+
Default: {
+ _type = "lua-inline";
+ expr = "on_attach";
+}
+
+
+
+
+
Type: null or (list of (luaInline))
+
Sources for null-ls to register
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Whether to enable nvim-docs-view, for displaying lsp hover documentation in a side panel..
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
Open or close the docs view panel
+
+
Default: "lvt"
+
+
+
+
+
Type: null or string
+
Manually update the docs view panel
+
+
Default: "lvu"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of nvim-docs-view
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: signed integer
+
Height of the docs view panel if the position is set to either top or bottom
+
+
Default: 10
+
+
+
+
+
Type: one of "left", "right", "top", "bottom"
+
Where to open the docs view panel
+
+
Default: "right"
+
+
+
+
+
Type: one of "auto", "manual"
+
Determines the mechanism used to update the docs view panel content.
+
+- If auto, the content will update upon cursor move.
+- If manual, the content will only update once :DocsViewUpdate is called
+
+
+
Default: "auto"
+
+
+
+
+
Type: signed integer
+
Width of the docs view panel if the position is set to either left or right
+
+
Default: 60
+
+
+
+
+
Type: boolean
+
Whether to enable lsp features and a code completion source for code embedded in other documents [otter-nvim]
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
Activate LSP on Cursor Position [otter-nvim]
+
+
Default: "lo"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of otter.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
write <path>.otter.<embedded language extension> files to disk on save of main buffer.
+Useful for some linters that require actual files.
+Otter files are deleted on quit or main buffer close
+
+
Default: false
+
+
+
+
+
Type: boolean
+
otter may not work the way you expect when entire code blocks are indented
+(eg. in Org files) When true, otter handles these cases fully.
+
+
Default: false
+
+
+
+
+
Type: list of string
+
:h events that cause the diagnostic to update.
+Set to: {"BufWritePost", "InsertLeave", "TextChanged" }
+for less performant but more instant diagnostic updates
+
+
Default: [
+ "BufWritePost"
+]
+
+
+
+
+
Type: list of string
+
+
Default: [
+ "'"
+ "\""
+ "`"
+]
+
+
+
+
+
Type: attribute set of (open submodule of attribute set of anything)
+
LSP configurations that will be managed using vim.lsp.config() and related
+utilities added in Neovim 0.11. LSPs defined here will be added to the
+resulting init.lua using vim.lsp.config and enabled through
+vim.lsp.enable() API from Neovim below the configuration table.
+
You may review the generated configuration by running nvf-print-config
+in a shell. Please see :help lsp-config for more details
+on the underlying API.
+
+
Default: { }
+
Example:
''
+ {
+ "*" = {
+ root_markers = [".git"];
+ capabilities = {
+ textDocument = {
+ semanticTokens = {
+ multilineTokenSupport = true;
+ };
+ };
+ };
+ };
+
+ "clangd" = {
+ filetypes = ["c"];
+ };
+ }
+''
+
+
+
+
+
Type: null or (luaInline) or attribute set of anything
+
LSP capabilities to pass to LSP server configuration
+
+
Default: null
+
+
+
+
+
Type: null or (luaInline) or list of string
+
Command used to start the LSP server
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Whether to enable this LSP server.
+
+
Default: true
+
+
+
+
+
Type: null or (list of string)
+
Filetypes to auto-attach LSP server in
+
+
Default: null
+
+
+
+
+
Type: null or (luaInline)
+
Function to execute when an LSP server attaches to a buffer
+
+
Default: null
+
+
+
+
+
Type: null or (list of string)
+
"root markers" used to determine the root directory of the workspace, and
+the filetypes associated with this LSP server.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Whether to enable trouble diagnostics viewer.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
Document diagnostics [trouble]
+
+
Default: "ld"
+
+
+
+
+
Type: null or string
+
+
Default: "xl"
+
+
+
+
+
Type: null or string
+
LSP References [trouble]
+
+
Default: "lr"
+
+
+
+
+
Type: null or string
+
+
Default: "xq"
+
+
+
+
+
Type: null or string
+
+
Default: "xs"
+
+
+
+
+
Type: null or string
+
Workspace diagnostics [trouble]
+
+
Default: "lwd"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of Trouble
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: string
+
Verbatim lua code that will be inserted after
+the result of the luaConfigRc DAG has been resolved
+
This option does not take a DAG set, but a string
+instead. Useful when you'd like to insert contents
+of lua configs after the DAG result.
+
+
Default: ""
+
Example: ${builtins.readFile ./my-lua-config-post.lua}
+
+
+
+
+
Type: string
+
Verbatim lua code that will be inserted before
+the result of luaConfigRc DAG has been resolved.
+
This option does not take a DAG set, but a string
+instead. Useful when you'd like to insert contents
+of lua configs after the DAG result.
+
+
Warning
+
You do not want to override this option with mkForce
+It is used internally to set certain options as early
+as possible and should be avoided unless you know what
+you're doing. Passing a string to this option will
+merge it with the default contents.
+
+
+
Default: By default, this option will **append** paths in
+{option}`vim-additionalRuntimePaths`
+to the `runtimepath` and enable the experimental Lua module loader
+if {option}`vim.enableLuaLoader` is set to true.
+
+
Example: ${builtins.readFile ./my-lua-config-pre.lua}
+
+
+
+
+
Type: (DAG of strings concatenated with "\n") or string
+
Lua configuration, either as a string or a DAG.
+
If this option is passed as a DAG, it will be resolved
+according to the DAG resolution rules (e.g. entryBefore
+or entryAfter) as per the nvf extended library.
+
+
Default: { }
+
Example:
```lua
+-- Set the tab size to 4 spaces
+vim.opt.tabstop = 4
+vim.opt.shiftwidth = 4
+vim.opt.expandtab = true
+```
+
+
+
+
+
+
Type: list of string
+
List of Lua packages to install
+
+
Default: [ ]
+
Example: "[\"magick\" \"serpent\"]"
+
+
+
+
+
Type: attribute set of (submodule)
+
Mappings for command-line mode
+
+
Default: { }
+
+
+
+
+
Type: string
+
The command to execute.
+
+
+
+
+
+
Type: null or string
+
A description of this keybind, to be shown in which-key, if you have it enabled.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Means that the action is actually an expression. Equivalent to adding <expr> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
If true, action is considered to be lua code.
+Thus, it will not be wrapped in "".
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to use the 'noremap' variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Equivalent to adding <script> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether this mapping should be silent. Equivalent to adding <silent> to a map.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.
+
+
Default: false
+
+
+
+
+
Type: attribute set of (submodule)
+
Mappings for insert mode
+
+
Default: { }
+
+
+
+
+
Type: string
+
The command to execute.
+
+
+
+
+
+
Type: null or string
+
A description of this keybind, to be shown in which-key, if you have it enabled.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Means that the action is actually an expression. Equivalent to adding <expr> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
If true, action is considered to be lua code.
+Thus, it will not be wrapped in "".
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to use the 'noremap' variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Equivalent to adding <script> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether this mapping should be silent. Equivalent to adding <silent> to a map.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.
+
+
Default: false
+
+
+
+
+
Type: attribute set of (submodule)
+
Mappings for insert and command-line mode
+
+
Default: { }
+
+
+
+
+
Type: string
+
The command to execute.
+
+
+
+
+
+
Type: null or string
+
A description of this keybind, to be shown in which-key, if you have it enabled.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Means that the action is actually an expression. Equivalent to adding <expr> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
If true, action is considered to be lua code.
+Thus, it will not be wrapped in "".
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to use the 'noremap' variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Equivalent to adding <script> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether this mapping should be silent. Equivalent to adding <silent> to a map.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.
+
+
Default: false
+
+
+
+
+
Type: attribute set of (submodule)
+
Mappings for insert, command-line and lang-arg mode
+
+
Default: { }
+
+
+
+
+
Type: string
+
The command to execute.
+
+
+
+
+
+
Type: null or string
+
A description of this keybind, to be shown in which-key, if you have it enabled.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Means that the action is actually an expression. Equivalent to adding <expr> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
If true, action is considered to be lua code.
+Thus, it will not be wrapped in "".
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to use the 'noremap' variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Equivalent to adding <script> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether this mapping should be silent. Equivalent to adding <silent> to a map.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.
+
+
Default: false
+
+
+
+
+
Type: attribute set of (submodule)
+
Mappings for normal mode
+
+
Default: { }
+
+
+
+
+
Type: string
+
The command to execute.
+
+
+
+
+
+
Type: null or string
+
A description of this keybind, to be shown in which-key, if you have it enabled.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Means that the action is actually an expression. Equivalent to adding <expr> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
If true, action is considered to be lua code.
+Thus, it will not be wrapped in "".
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to use the 'noremap' variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Equivalent to adding <script> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether this mapping should be silent. Equivalent to adding <silent> to a map.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.
+
+
Default: false
+
+
+
+
+
Type: attribute set of (submodule)
+
Mappings for normal, visual, select and operator-pending (same as plain 'map') mode
+
+
Default: { }
+
+
+
+
+
Type: string
+
The command to execute.
+
+
+
+
+
+
Type: null or string
+
A description of this keybind, to be shown in which-key, if you have it enabled.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Means that the action is actually an expression. Equivalent to adding <expr> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
If true, action is considered to be lua code.
+Thus, it will not be wrapped in "".
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to use the 'noremap' variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Equivalent to adding <script> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether this mapping should be silent. Equivalent to adding <silent> to a map.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.
+
+
Default: false
+
+
+
+
+
Type: attribute set of (submodule)
+
Mappings for operator-pending mode
+
+
Default: { }
+
+
+
+
+
Type: string
+
The command to execute.
+
+
+
+
+
+
Type: null or string
+
A description of this keybind, to be shown in which-key, if you have it enabled.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Means that the action is actually an expression. Equivalent to adding <expr> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
If true, action is considered to be lua code.
+Thus, it will not be wrapped in "".
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to use the 'noremap' variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Equivalent to adding <script> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether this mapping should be silent. Equivalent to adding <silent> to a map.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.
+
+
Default: false
+
+
+
+
+
Type: attribute set of (submodule)
+
Mappings for select mode
+
+
Default: { }
+
+
+
+
+
Type: string
+
The command to execute.
+
+
+
+
+
+
Type: null or string
+
A description of this keybind, to be shown in which-key, if you have it enabled.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Means that the action is actually an expression. Equivalent to adding <expr> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
If true, action is considered to be lua code.
+Thus, it will not be wrapped in "".
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to use the 'noremap' variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Equivalent to adding <script> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether this mapping should be silent. Equivalent to adding <silent> to a map.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.
+
+
Default: false
+
+
+
+
+
Type: attribute set of (submodule)
+
Mappings for terminal mode
+
+
Default: { }
+
+
+
+
+
Type: string
+
The command to execute.
+
+
+
+
+
+
Type: null or string
+
A description of this keybind, to be shown in which-key, if you have it enabled.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Means that the action is actually an expression. Equivalent to adding <expr> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
If true, action is considered to be lua code.
+Thus, it will not be wrapped in "".
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to use the 'noremap' variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Equivalent to adding <script> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether this mapping should be silent. Equivalent to adding <silent> to a map.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.
+
+
Default: false
+
+
+
+
+
Type: attribute set of (submodule)
+
Mappings for visual and select mode
+
+
Default: { }
+
+
+
+
+
Type: string
+
The command to execute.
+
+
+
+
+
+
Type: null or string
+
A description of this keybind, to be shown in which-key, if you have it enabled.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Means that the action is actually an expression. Equivalent to adding <expr> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
If true, action is considered to be lua code.
+Thus, it will not be wrapped in "".
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to use the 'noremap' variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Equivalent to adding <script> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether this mapping should be silent. Equivalent to adding <silent> to a map.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.
+
+
Default: false
+
+
+
+
+
Type: attribute set of (submodule)
+
Mappings for visual only mode
+
+
Default: { }
+
+
+
+
+
Type: string
+
The command to execute.
+
+
+
+
+
+
Type: null or string
+
A description of this keybind, to be shown in which-key, if you have it enabled.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Means that the action is actually an expression. Equivalent to adding <expr> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
If true, action is considered to be lua code.
+Thus, it will not be wrapped in "".
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to use the 'noremap' variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Equivalent to adding <script> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether this mapping should be silent. Equivalent to adding <silent> to a map.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to enable mini.ai.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.ai
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.align.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.align
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.animate.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.animate
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.basics.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.basics
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.bracketed.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.bracketed
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.bufremove.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.bufremove
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.clue.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.clue
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.colors.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable mini.completion.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.completion
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.cursorword.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.cursorword
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.diff.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.diff
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.doc.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.doc
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
+
Type: boolean
+
Whether to enable mini.files.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.files
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.fuzzy.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.fuzzy
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.git.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.git
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.hipatterns.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.hipatterns
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.hues.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.hues
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: RGB color in hex format
+
The hex color for the background color of the color scheme, prefixed with #
+
+
+
+
+
+
Type: RGB color in hex format
+
The hex color for the foreground color of the color scheme, prefixed with #
+
+
+
+
+
+
Type: boolean
+
Whether to enable mini.icons.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.icons
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.indentscope.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.indentscope
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: list of string
+
File types to ignore for illuminate
+
+
Default: [
+ "help"
+ "neo-tree"
+ "notify"
+ "NvimTree"
+ "TelescopePrompt"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable mini.jump.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.jump
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.jump2d.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.jump2d
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.map.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.map
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.misc.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.misc
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.move.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.move
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.notify.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.notify notifications
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: signed integer
+
The duration of the debug notification
+
+
Default: 0
+
+
+
+
+
Type: string
+
The highlight group of the debug notification
+
+
Default: "DiagnosticHint"
+
+
+
+
+
Type: signed integer
+
The duration of the error notification
+
+
Default: 5000
+
+
+
+
+
Type: string
+
The highlight group of the error notification
+
+
Default: "DiagnosticError"
+
+
+
+
+
Type: signed integer
+
The duration of the info notification
+
+
Default: 5000
+
+
+
+
+
Type: string
+
The highlight group of the info notification
+
+
Default: "DiagnosticInfo"
+
+
+
+
+
Type: signed integer
+
The duration of the off notification
+
+
Default: 0
+
+
+
+
+
Type: string
+
The highlight group of the off notification
+
+
Default: "MiniNotifyNormal"
+
+
+
+
+
Type: signed integer
+
The duration of the trace notification
+
+
Default: 0
+
+
+
+
+
Type: string
+
The highlight group of the trace notification
+
+
Default: "DiagnosticOk"
+
+
+
+
+
Type: signed integer
+
The duration of the warn notification
+
+
Default: 5000
+
+
+
+
+
Type: string
+
The highlight group of the warn notification
+
+
Default: "DiagnosticWarn"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.notify
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
The border type for the mini.notify-notifications
+
+
Default: "rounded"
+
+
+
+
+
Type: boolean
+
Whether to enable mini.operators.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.operators
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.pairs.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.pairs
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.pick.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.pick
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.sessions.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.sessions
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.snippets.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.snippets
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.splitjoin.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.splitjoin
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.starter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.starter
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.statusline.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.statusline
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.surround.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.surround
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.tabline.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.tabline
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.test.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.test
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.trailspace.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.trailspace
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable mini.visits.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of mini.visits
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable codewindow plugin for minimap view.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
Close minimap [codewindow]
+
+
Default: "mc"
+
+
+
+
+
Type: null or string
+
Open minimap [codewindow]
+
+
Default: "mo"
+
+
+
+
+
Type: null or string
+
Toggle minimap [codewindow]
+
+
Default: "mm"
+
+
+
+
+
Type: null or string
+
Toggle minimap focus [codewindow]
+
+
Default: "mf"
+
+
+
+
+
Type: boolean
+
Whether to enable minimap view [minimap-vim].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Quick bookmarks on keybinds [Harpoon].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
Go to marked file 1 [Harpoon]
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Go to marked file 2 [Harpoon]
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Go to marked file 3 [Harpoon]
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Go to marked file 4 [Harpoon]
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
List marked files [Harpoon]
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
+
Default: "a"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of Harpoon
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: luaInline
+
How the out list key is looked up. This can be useful
+when using worktrees and using git remote instead of file path
+
+
Default: {
+ _type = "lua-inline";
+ expr = ''
+ function()
+ return vim.uv.cwd()
+ end
+ '';
+}
+
+
+
+
+
Type: boolean
+
Any time the ui menu is closed then we will save the
+state back to the backing list, not to the fs
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Any time the ui menu is closed then the state of the
+list will be sync'd back to the fs
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to enable note organizer tool for Neovim [mind-nvim].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Neorg: An intuitive note-taking and organization tool with a structured nested syntax.
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of Neorg
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: submodule
+
all of the most important modules that any user would want to have a "just works" experience
+
+
Default: { }
+
+
+
+
+
Type: list of string
+
list of modules from to be disabled from core.defaults
+
+
Default: [ ]
+
Example:
[
+ "core.autocommands"
+ "core.itero"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable all of the most important modules that any user would want to have a "just works" experience
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Neorg treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
Type: package
+
The norg-meta treesitter package to use.
+
+
Default: pkgs.tree-sitter-grammars.tree-sitter-norg
+
+
+
+
+
Type: boolean
+
Whether to enable complementary neovim plugins for Obsidian editor.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of Obsidian.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
If using nvim-cmp, otherwise set to false
+
+
Default: false
+
+
+
+
+
+
Type: null or string
+
Directory in which daily notes should be created
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Whether to enable nvim-orgmode: Neovim plugin for Emacs Orgmode. Get the best of both worlds.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of Orgmode
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: list of string
+
List of org files to be used as agenda files.
+
+
Default: [
+ "~/Documents/org/*"
+ "~/my-orgs/**/*"
+]
+
+
+
+
+
Type: string
+
Default org file to be used for notes.
+
+
Default: "~/Documents/org/refile.org"
+
+
+
+
+
Type: boolean
+
Whether to enable Orgmode treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: package
+
The org-nvim treesitter package to use.
+
+
Default: pkgs.tree-sitter-grammars.tree-sitter-org-nvim
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable nvim-notify notifications.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of nvim-notify
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: string
+
The background colour of the notification
+
+
Default: "NotifyBackground"
+
+
+
+
+
Type: attribute set of string
+
The icons of the notification
+
+
Default: {
+ DEBUG = "";
+ ERROR = "";
+ INFO = "";
+ TRACE = "";
+ WARN = "";
+}
+
+
+
+
+
Type: one of "top_left", "top_right", "bottom_left", "bottom_right"
+
The position of the notification
+
+
Default: "top_right"
+
+
+
+
+
Type: one of "default", "minimal", "simple", "compact", "wrapped-compact" or (luaInline)
+
Custom rendering method to be used for displaying notifications
+
+
Default: "compact"
+
+
+
+
+
Type: one of "fade_in_slide_out", "fade", "slide", "static"
+
The stages of the notification
+
+
Default: "fade_in_slide_out"
+
+
+
+
+
Type: signed integer
+
The timeout of the notification
+
+
Default: 1000
+
+
+
+
+
Type: list of (null or package or one of "blink-cmp", "aerial-nvim", "alpha-nvim", "avante-nvim", "base16", "blink-cmp-spell", "blink-compat", "blink-emoji-nvim", "blink-ripgrep-nvim", "bufdelete-nvim", "bufferline-nvim", "catppuccin", "ccc-nvim", "cellular-automaton-nvim", "chatgpt-nvim", "cheatsheet-nvim", "cinnamon-nvim", "cmp-buffer", "cmp-luasnip", "cmp-nvim-lsp", "cmp-path", "cmp-treesitter", "codecompanion-nvim", "codewindow-nvim", "colorful-menu-nvim", "comment-nvim", "conform-nvim", "copilot-cmp", "copilot-lua", "crates-nvim", "csharpls-extended-lsp-nvim", "dashboard-nvim", "diffview-nvim", "direnv-vim", "dracula", "dressing-nvim", "elixir-tools-nvim", "everforest", "fastaction-nvim", "fidget-nvim", "flash-nvim", "flutter-tools-nvim", "friendly-snippets", "fzf-lua", "gesture-nvim", "git-conflict-nvim", "github", "gitlinker-nvim", "gitsigns-nvim", "glow-nvim", "gruvbox", "hardtime-nvim", "harpoon", "haskell-tools-nvim", "highlight-undo-nvim", "hop.nvim", "hunk-nvim", "hydra-nvim", "icon-picker-nvim", "image-nvim", "img-clip", "indent-blankline-nvim", "lazydev-nvim", "leap-nvim", "leetcode-nvim", "lsp-signature-nvim", "lspkind-nvim", "lspsaga-nvim", "lua-utils-nvim", "lualine-nvim", "luasnip", "lz-n", "lzn-auto-require", "markview-nvim", "mellow", "mind-nvim", "mini-ai", "mini-align", "mini-animate", "mini-base16", "mini-basics", "mini-bracketed", "mini-bufremove", "mini-clue", "mini-colors", "mini-comment", "mini-completion", "mini-cursorword", "mini-diff", "mini-doc", "mini-extra", "mini-files", "mini-fuzzy", "mini-git", "mini-hipatterns", "mini-hues", "mini-icons", "mini-indentscope", "mini-jump", "mini-jump2d", "mini-map", "mini-misc", "mini-move", "mini-notify", "mini-operators", "mini-pairs", "mini-pick", "mini-sessions", "mini-snippets", "mini-splitjoin", "mini-starter", "mini-statusline", "mini-surround", "mini-tabline", "mini-test", "mini-trailspace", "mini-visits", "minimap-vim", "mkdir-nvim", "modes-nvim", "multicursors-nvim", "neo-tree-nvim", "neocodeium", "neocord", "neogit", "neorg", "neorg-telescope", "neovim-session-manager", "new-file-template-nvim", "nix-develop-nvim", "noice-nvim", "none-ls-nvim", "nord", "nui-nvim", "nvim-autopairs", "nvim-biscuits", "nvim-cmp", "nvim-colorizer-lua", "nvim-cursorline", "nvim-dap", "nvim-dap-go", "nvim-dap-ui", "nvim-docs-view", "nvim-highlight-colors", "nvim-lightbulb", "nvim-lint", "nvim-lspconfig", "nvim-metals", "nvim-navbuddy", "nvim-navic", "nvim-neoclip-lua", "nvim-nio", "nvim-notify", "nvim-scrollbar", "nvim-surround", "nvim-tree-lua", "nvim-treesitter-context", "nvim-treesitter-textobjects", "nvim-ts-autotag", "nvim-ufo", "nvim-web-devicons", "obsidian-nvim", "oil-git-status.nvim", "oil-nvim", "omnisharp-extended-lsp-nvim", "onedark", "orgmode", "otter-nvim", "oxocarbon", "pathlib-nvim", "plenary-nvim", "precognition-nvim", "prettier-plugin-astro", "prettier-plugin-svelte", "project-nvim", "promise-async", "qmk-nvim", "rainbow-delimiters-nvim", "registers-nvim", "render-markdown-nvim", "rose-pine", "rtp-nvim", "run-nvim", "rustaceanvim", "smart-splits", "smartcolumn-nvim", "snacks-nvim", "solarized", "solarized-osaka", "sqls-nvim", "supermaven-nvim", "tabular", "telescope", "tiny-devicons-auto-colors-nvim", "todo-comments-nvim", "toggleterm-nvim", "tokyonight", "trouble", "ts-error-translator-nvim", "typst-concealer", "typst-preview-nvim", "undotree", "vim-dirtytalk", "vim-fugitive", "vim-illuminate", "vim-markdown", "vim-repeat", "vim-sleuth", "vim-startify", "which-key-nvim", "yanky-nvim", "nvim-treesitter", "flutter-tools-patched", "vim-repeat")
+
List of plugins to optionally load on startup.
+
This option has the same type definition as vim.startPlugins
+and plugins in this list are appended to vim.startPlugins by
+the wrapper during the build process.
+
To avoid overriding packages and dependencies provided by startPlugins, you
+are recommended to use this option or vim.extraPlugins option.
+
+
Default: [ ]
+
Example: [pkgs.vimPlugins.vim-ghost]
+
+
+
+
+
Type: open submodule of attribute set of anything
+
A freeform attribute set containing vim options to be set as early as possible.
+If populated, this option will set vim options in the built luaConfigRC
+after basic and before pluginConfigs DAG entries.
+
+
Note
+
{foo = "bar";} will set vim.o.foo to "bar", where the type of bar in the
+resulting Lua value will be inferred from the type of the value in the
+{name = value;} pair passed to the option.
+
+
+
Default: { }
+
Example:
{
+ visualbell = true;
+}
+
+
+
+
+
Type: boolean
+
+
Default: true
+
+
+
+
+
Type: signed integer
+
Height of the command pane
+
+
Default: 1
+
+
+
+
+
Type: one of "line", "screenline", "number", "both"
+
Highlight the text line of the cursor with CursorLine hl-CursorLine
+
+
Default: "line"
+
+
+
+
+
Type: string
+
Set modes for mouse support.
+
+- n - normal
+- v - visual
+- i - insert
+- c - command-line
+- h - all modes when editing a help file
+- a - all modes
+- r - for hit-enter and more-prompt prompt
+
+
This option takes a string to ensure proper conversion to the corresponding Lua type.
+As such, we do not check the value passed to this option. Please ensure that any value
+that is set here is a valid value as per neovim documentation.
+
+
Default: "nvi"
+
Example: "a"
+
+
+
+
+
Type: signed integer
+
Number of spaces to use for each step of (auto)indent. Used for
+cindent, >>, <<, etc.
+
When zero the tabstop value will be used.
+
+
Default: 8
+
+
+
+
+
Type: string
+
Whether to show the sign column
+
+
Default: "yes"
+
Example: "no"
+
+
+
+
+
Type: boolean
+
New splits will open below instead of on top
+
+
Default: true
+
+
+
+
+
Type: boolean
+
New splits will open to the right
+
+
Default: true
+
+
+
+
+
Type: signed integer
+
Number of spaces that a <Tab> in the file counts for. Also see
+the :retab command, and the softtabstop option.
+
+
Default: 8
+
+
+
+
+
Type: boolean
+
Set terminal up for 256 colours
+
+
Default: true
+
+
+
+
+
Type: signed integer
+
Timeout in ms that Neovim will wait for mapped action to complete
+
+
Default: 500
+
+
+
+
+
Type: signed integer
+
The number of milliseconds till Cursor Hold event is fired
+
+
Default: 300
+
+
+
+
+
Type: boolean
+
+
Default: true
+
+
+
+
+
Type: package
+
The neovim package to use for the wrapper. This
+corresponds to the package that will be wrapped
+with your plugins and settings.
+
+
Warning
+
You will need to use an unwrapped package for this
+option to work as intended. Using an already wrapped
+package here may yield undesirable results.
+
+
+
Default: pkgs.neovim-unwrapped
+
+
+
+
+
Type: attribute set of package
+
Attribute set of plugins to override default values
+
+
Default: { }
+
Example:
{
+ lazydev-nvim = pkgs.fetchFromGitHub {
+ owner = "folke";
+ repo = "lazydev.nvim";
+ rev = "";
+ hash = "";
+ };
+}
+
+
+
+
+
+
Type: (DAG of strings concatenated with "\n") or string
+
The DAG used to configure plugins. If a string is passed, entryAnywhere is automatically applied.
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable neocord plugin for discord rich presence.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of neocord
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Automatically update the presence
+
+
Default: true
+
+
+
+
+
Type: list of string
+
List of filetypes to ignore
+
+
Default: [ ]
+
Example: ["Alpha"]
+
+
+
+
+
Type: string
+
Client ID of the application
+
+
Default: "1157438221865717891"
+
+
+
+
+
Type: signed integer
+
Number of seconds to debounce events
+
+
Default: 10
+
+
+
+
+
Type: string
+
Text displayed when editing a file
+
+
Default: "Editing %s"
+
+
+
+
+
Type: boolean
+
Show line number on the RPC item
+
+
Default: false
+
+
+
+
+
Type: string
+
Text displayed when browsing files
+
+
Default: "Browsing %s"
+
+
+
+
+
Type: string
+
Text displayed when committing changes
+
+
Default: "Committing changes"
+
+
+
+
+
Type: string
+
Text displayed when showing line number
+
+
Default: "Line %s out of %s"
+
+
+
+
+
Type: null or one of "debug", "info", "warn", "error"
+
Log level to be used by the plugin
+
+
Default: null
+
+
+
+
+
Type: string
+
Logo to be displayed on the RPC item
+
This must be either "auto" or an URL to your image of choice
+
+
Default: "auto"
+
+
+
+
+
+
Type: one of "language", "logo"
+
Main image to be displayed
+
+
Default: "language"
+
+
+
+
+
Type: string
+
Text displayed when managing plugins
+
+
Default: "Managing plugins"
+
+
+
+
+
Type: string
+
Text displayed when reading a file
+
+
Default: "Reading %s"
+
+
+
+
+
Type: boolean
+
Show time on the RPC item
+
+
Default: true
+
+
+
+
+
Type: string
+
Text displayed when working on the terminal
+
+
Default: "Working on the terminal"
+
+
+
+
+
Type: string
+
Text displayed when working on a project
+
+
Default: "Working on %s"
+
+
+
+
+
Type: boolean
+
Prevent swapfile and backupfile from being created.
+
false is the default Neovim behaviour. If you wish to create
+backup and swapfiles, set this option to false.
+
+
Default: true
+
Example: false
+
+
+
+
+
Type: boolean
+
Whether to enable project-nvim for project management.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of Project.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: list of string
+
Detection methods to use
+
+
Default: [
+ "lsp"
+ "pattern"
+]
+
+
+
+
+
Type: list of string
+
Directories to exclude from project root search
+
+
Default: [ ]
+
+
+
+
+
Type: list of string
+
LSP servers no ignore by name
+
+
Default: [ ]
+
+
+
+
+
Type: boolean
+
don't automatically change the root directory so the user has the option to manually do so using :ProjectRoot command
+
+
Default: true
+
+
+
+
+
Type: list of string
+
Patterns to use for pattern detection method
+
+
Default: [
+ ".git"
+ "_darcs"
+ ".hg"
+ ".bzr"
+ ".svn"
+ "Makefile"
+ "package.json"
+ "flake.nix"
+ "cargo.toml"
+]
+
+
+
+
+
Type: one of "global", "tab", "win"
+
What scope to change the directory
+
+
Default: "global"
+
+
+
+
+
Type: boolean
+
Show hidden files in telescope picker
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Silently change directory when changing project
+
+
Default: true
+
+
+
+
+
Type: list of string
+
List of python packages to install
+
+
Default: [ ]
+
Example: "[\"pynvim\"]"
+
+
+
+
+
Type: boolean
+
Whether to enable Conjure.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable run.nvim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: "ri"
+
+
+
+
+
Type: null or string
+
+
Default: "rc"
+
+
+
+
+
Type: null or string
+
+
Default: "ro"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of run.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: one of "ignore", "smart", "sensitive"
+
Set the case sensitivity of search
+
+
Default: "sensitive"
+
+
+
+
+
Type: boolean
+
Whether to enable nvim-session-manager: manage sessions like folders in VSCode.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: "sd"
+
+
+
+
+
Type: null or string
+
+
Default: "slt"
+
+
+
+
+
Type: null or string
+
+
Default: "sl"
+
+
+
+
+
Type: null or string
+
+
Default: "sc"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of which-key
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: one of "Disabled", "CurrentDir", "LastSession", "GitSession" or (luaInline)
+
Define what to do when Neovim is started without arguments.
+
Takes either one of "Disabled", "CurrentDir", "LastSession", "GitSession" in which case the value
+will be inserted into sm.AutoloadMode.<value>, or an inline Lua value.
+
+
Default: "LastSession"
+
+
+
+
+
Type: list of string
+
All buffers of these buffer types will be closed before the session is saved
+
+
Default: [ ]
+
+
+
+
+
Type: list of string
+
A list of directories where the session will not be autosaved
+
+
Default: [ ]
+
+
+
+
+
Type: list of string
+
All buffers of these file types will be closed before the session is saved
+
+
Default: [
+ "gitcommit"
+]
+
+
+
+
+
Type: boolean
+
Plugin will not save a session when no buffers are opened, or all of them are
+not writable or listed
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Automatically save last session on exit and on session switch
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Always autosaves session. If true, only autosaves after a session is active
+
+
Default: false
+
+
+
+
+
Type: string
+
The character to which the colon symbol will be replaced for session files
+
+
Default: "++"
+
+
+
+
+
Type: null or signed integer
+
Shorten the display path if length exceeds this threshold.
+
Use 0 if don't want to shorten the path at all
+
+
Default: 80
+
+
+
+
+
Type: string
+
The character to which the path separator will be replaced for session files
+
+
Default: "__"
+
+
+
+
+
Type: boolean
+
Whether we should use dressing.nvim to build a session picker UI
+
+
Default: true
+
+
+
+
+
Type: attribute set of list of (submodule)
+
A list containing custom snippets in the SnipMate format to be loaded by LuaSnip.
+
+
Default: { }
+
Example:
''
+ {
+ all = [
+ {
+ trigger = "if";
+ body = "if $1 else $2";
+ }
+ ];
+ nix = [
+ {
+ trigger = "mkOption";
+ body = '''
+ mkOption {
+ type = $1;
+ default = $2;
+ description = $3;
+ example = $4;
+ }
+ ''';
+ }
+ ];
+ }
+''
+
+
+
+
+
+
Type: string
+
The description shown for this snippet.
+
+
Default: ""
+
+
+
+
+
Type: string
+
The trigger used to activate this snippet.
+
+
+
+
+
+
Type: boolean
+
Whether to enable luasnip.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: strings concatenated with "\n"
+
Lua code used to load snippet providers.
+
+
Default: ```lua
+require('luasnip.loaders.from_vscode').lazy_load()
+```
+
+
Example:
```lua
+require("luasnip.loaders.from_snipmate").lazy_load()
+```
+
+
+
+
+
+
Type: list of (null or package or one of "blink-cmp", "aerial-nvim", "alpha-nvim", "avante-nvim", "base16", "blink-cmp-spell", "blink-compat", "blink-emoji-nvim", "blink-ripgrep-nvim", "bufdelete-nvim", "bufferline-nvim", "catppuccin", "ccc-nvim", "cellular-automaton-nvim", "chatgpt-nvim", "cheatsheet-nvim", "cinnamon-nvim", "cmp-buffer", "cmp-luasnip", "cmp-nvim-lsp", "cmp-path", "cmp-treesitter", "codecompanion-nvim", "codewindow-nvim", "colorful-menu-nvim", "comment-nvim", "conform-nvim", "copilot-cmp", "copilot-lua", "crates-nvim", "csharpls-extended-lsp-nvim", "dashboard-nvim", "diffview-nvim", "direnv-vim", "dracula", "dressing-nvim", "elixir-tools-nvim", "everforest", "fastaction-nvim", "fidget-nvim", "flash-nvim", "flutter-tools-nvim", "friendly-snippets", "fzf-lua", "gesture-nvim", "git-conflict-nvim", "github", "gitlinker-nvim", "gitsigns-nvim", "glow-nvim", "gruvbox", "hardtime-nvim", "harpoon", "haskell-tools-nvim", "highlight-undo-nvim", "hop.nvim", "hunk-nvim", "hydra-nvim", "icon-picker-nvim", "image-nvim", "img-clip", "indent-blankline-nvim", "lazydev-nvim", "leap-nvim", "leetcode-nvim", "lsp-signature-nvim", "lspkind-nvim", "lspsaga-nvim", "lua-utils-nvim", "lualine-nvim", "luasnip", "lz-n", "lzn-auto-require", "markview-nvim", "mellow", "mind-nvim", "mini-ai", "mini-align", "mini-animate", "mini-base16", "mini-basics", "mini-bracketed", "mini-bufremove", "mini-clue", "mini-colors", "mini-comment", "mini-completion", "mini-cursorword", "mini-diff", "mini-doc", "mini-extra", "mini-files", "mini-fuzzy", "mini-git", "mini-hipatterns", "mini-hues", "mini-icons", "mini-indentscope", "mini-jump", "mini-jump2d", "mini-map", "mini-misc", "mini-move", "mini-notify", "mini-operators", "mini-pairs", "mini-pick", "mini-sessions", "mini-snippets", "mini-splitjoin", "mini-starter", "mini-statusline", "mini-surround", "mini-tabline", "mini-test", "mini-trailspace", "mini-visits", "minimap-vim", "mkdir-nvim", "modes-nvim", "multicursors-nvim", "neo-tree-nvim", "neocodeium", "neocord", "neogit", "neorg", "neorg-telescope", "neovim-session-manager", "new-file-template-nvim", "nix-develop-nvim", "noice-nvim", "none-ls-nvim", "nord", "nui-nvim", "nvim-autopairs", "nvim-biscuits", "nvim-cmp", "nvim-colorizer-lua", "nvim-cursorline", "nvim-dap", "nvim-dap-go", "nvim-dap-ui", "nvim-docs-view", "nvim-highlight-colors", "nvim-lightbulb", "nvim-lint", "nvim-lspconfig", "nvim-metals", "nvim-navbuddy", "nvim-navic", "nvim-neoclip-lua", "nvim-nio", "nvim-notify", "nvim-scrollbar", "nvim-surround", "nvim-tree-lua", "nvim-treesitter-context", "nvim-treesitter-textobjects", "nvim-ts-autotag", "nvim-ufo", "nvim-web-devicons", "obsidian-nvim", "oil-git-status.nvim", "oil-nvim", "omnisharp-extended-lsp-nvim", "onedark", "orgmode", "otter-nvim", "oxocarbon", "pathlib-nvim", "plenary-nvim", "precognition-nvim", "prettier-plugin-astro", "prettier-plugin-svelte", "project-nvim", "promise-async", "qmk-nvim", "rainbow-delimiters-nvim", "registers-nvim", "render-markdown-nvim", "rose-pine", "rtp-nvim", "run-nvim", "rustaceanvim", "smart-splits", "smartcolumn-nvim", "snacks-nvim", "solarized", "solarized-osaka", "sqls-nvim", "supermaven-nvim", "tabular", "telescope", "tiny-devicons-auto-colors-nvim", "todo-comments-nvim", "toggleterm-nvim", "tokyonight", "trouble", "ts-error-translator-nvim", "typst-concealer", "typst-preview-nvim", "undotree", "vim-dirtytalk", "vim-fugitive", "vim-illuminate", "vim-markdown", "vim-repeat", "vim-sleuth", "vim-startify", "which-key-nvim", "yanky-nvim", "nvim-treesitter", "flutter-tools-patched", "vim-repeat")
+
The snippet provider packages.
+
+
Note
+
These are simply appended to {option} vim.startPlugins.
+
+
+
Default: [
+ "friendly-snippets"
+]
+
Example: ["vimPlugins.vim-snippets"]
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of LuaSnip
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable autosnippets.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Neovim's built-in spellchecking.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
Type: list of string
+
A list of filetypes for which spellchecking will be disabled.
+
+
Tip
+
You may use :echo &filetype in Neovim to find out the
+filetype for a specific buffer.
+
+
+
Default: [
+ "toggleterm"
+]
+
Example: ["markdown" "gitcommit"]
+
+
+
+
+
Type: list of string
+
A list of languages that should be used for spellchecking.
+
To add your own language files, you may place your spell directory in either
+$XDG_CONFIG_HOME/nvf or in a path that is included in the
+additionalRuntimePaths list provided by nvf.
+
+
Default: [
+ "en"
+]
+
Example: ["en" "de"]
+
+
+
+
+
Type: boolean
+
Whether to enable vim-dirtytalk, a wordlist for programmers containing
+common programming terms.
+
+
Note
+
Enabling this option will unconditionally set
+vim.spellcheck.enable to true as vim-dirtytalk
+depends on spellchecking having been set up.
+
Run :DirtytalkUpdate on first use to download the spellfile.
+
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
Type: list of (null or package or one of "blink-cmp", "aerial-nvim", "alpha-nvim", "avante-nvim", "base16", "blink-cmp-spell", "blink-compat", "blink-emoji-nvim", "blink-ripgrep-nvim", "bufdelete-nvim", "bufferline-nvim", "catppuccin", "ccc-nvim", "cellular-automaton-nvim", "chatgpt-nvim", "cheatsheet-nvim", "cinnamon-nvim", "cmp-buffer", "cmp-luasnip", "cmp-nvim-lsp", "cmp-path", "cmp-treesitter", "codecompanion-nvim", "codewindow-nvim", "colorful-menu-nvim", "comment-nvim", "conform-nvim", "copilot-cmp", "copilot-lua", "crates-nvim", "csharpls-extended-lsp-nvim", "dashboard-nvim", "diffview-nvim", "direnv-vim", "dracula", "dressing-nvim", "elixir-tools-nvim", "everforest", "fastaction-nvim", "fidget-nvim", "flash-nvim", "flutter-tools-nvim", "friendly-snippets", "fzf-lua", "gesture-nvim", "git-conflict-nvim", "github", "gitlinker-nvim", "gitsigns-nvim", "glow-nvim", "gruvbox", "hardtime-nvim", "harpoon", "haskell-tools-nvim", "highlight-undo-nvim", "hop.nvim", "hunk-nvim", "hydra-nvim", "icon-picker-nvim", "image-nvim", "img-clip", "indent-blankline-nvim", "lazydev-nvim", "leap-nvim", "leetcode-nvim", "lsp-signature-nvim", "lspkind-nvim", "lspsaga-nvim", "lua-utils-nvim", "lualine-nvim", "luasnip", "lz-n", "lzn-auto-require", "markview-nvim", "mellow", "mind-nvim", "mini-ai", "mini-align", "mini-animate", "mini-base16", "mini-basics", "mini-bracketed", "mini-bufremove", "mini-clue", "mini-colors", "mini-comment", "mini-completion", "mini-cursorword", "mini-diff", "mini-doc", "mini-extra", "mini-files", "mini-fuzzy", "mini-git", "mini-hipatterns", "mini-hues", "mini-icons", "mini-indentscope", "mini-jump", "mini-jump2d", "mini-map", "mini-misc", "mini-move", "mini-notify", "mini-operators", "mini-pairs", "mini-pick", "mini-sessions", "mini-snippets", "mini-splitjoin", "mini-starter", "mini-statusline", "mini-surround", "mini-tabline", "mini-test", "mini-trailspace", "mini-visits", "minimap-vim", "mkdir-nvim", "modes-nvim", "multicursors-nvim", "neo-tree-nvim", "neocodeium", "neocord", "neogit", "neorg", "neorg-telescope", "neovim-session-manager", "new-file-template-nvim", "nix-develop-nvim", "noice-nvim", "none-ls-nvim", "nord", "nui-nvim", "nvim-autopairs", "nvim-biscuits", "nvim-cmp", "nvim-colorizer-lua", "nvim-cursorline", "nvim-dap", "nvim-dap-go", "nvim-dap-ui", "nvim-docs-view", "nvim-highlight-colors", "nvim-lightbulb", "nvim-lint", "nvim-lspconfig", "nvim-metals", "nvim-navbuddy", "nvim-navic", "nvim-neoclip-lua", "nvim-nio", "nvim-notify", "nvim-scrollbar", "nvim-surround", "nvim-tree-lua", "nvim-treesitter-context", "nvim-treesitter-textobjects", "nvim-ts-autotag", "nvim-ufo", "nvim-web-devicons", "obsidian-nvim", "oil-git-status.nvim", "oil-nvim", "omnisharp-extended-lsp-nvim", "onedark", "orgmode", "otter-nvim", "oxocarbon", "pathlib-nvim", "plenary-nvim", "precognition-nvim", "prettier-plugin-astro", "prettier-plugin-svelte", "project-nvim", "promise-async", "qmk-nvim", "rainbow-delimiters-nvim", "registers-nvim", "render-markdown-nvim", "rose-pine", "rtp-nvim", "run-nvim", "rustaceanvim", "smart-splits", "smartcolumn-nvim", "snacks-nvim", "solarized", "solarized-osaka", "sqls-nvim", "supermaven-nvim", "tabular", "telescope", "tiny-devicons-auto-colors-nvim", "todo-comments-nvim", "toggleterm-nvim", "tokyonight", "trouble", "ts-error-translator-nvim", "typst-concealer", "typst-preview-nvim", "undotree", "vim-dirtytalk", "vim-fugitive", "vim-illuminate", "vim-markdown", "vim-repeat", "vim-sleuth", "vim-startify", "which-key-nvim", "yanky-nvim", "nvim-treesitter", "flutter-tools-patched", "vim-repeat")
+
List of plugins to load on startup. This is used
+internally to add plugins to Neovim's runtime.
+
To add additional plugins to your configuration, consider
+using the vim.extraPlugins
+option.
+
+
Default: [
+ "plenary-nvim"
+]
+
Example: [pkgs.vimPlugins.telescope-nvim]
+
+
+
+
+
Type: list of string
+
active config for: | (A) | B | C X | Y | Z |
+
+
Default: [
+ ''
+ {
+ "mode",
+ icons_enabled = true,
+ separator = {
+ left = '▎',
+ right = ''
+ },
+ }
+ ''
+ ''
+ {
+ "",
+ draw_empty = true,
+ separator = { left = '', right = '' }
+ }
+ ''
+]
+
+
+
+
+
Type: list of string
+
active config for: | A | (B) | C X | Y | Z |
+
+
Default: [
+ ''
+ {
+ "filetype",
+ colored = true,
+ icon_only = true,
+ icon = { align = 'left' }
+ }
+ ''
+ ''
+ {
+ "filename",
+ symbols = {modified = ' ', readonly = ' '},
+ separator = {right = ''}
+ }
+ ''
+ ''
+ {
+ "",
+ draw_empty = true,
+ separator = { left = '', right = '' }
+ }
+ ''
+]
+
+
+
+
+
Type: list of string
+
active config for: | A | B | (C) X | Y | Z |
+
+
Default: [
+ ''
+ {
+ "diff",
+ colored = false,
+ diff_color = {
+ -- Same color values as the general color option can be used here.
+ added = 'DiffAdd', -- Changes the diff's added color
+ modified = 'DiffChange', -- Changes the diff's modified color
+ removed = 'DiffDelete', -- Changes the diff's removed color you
+ },
+ symbols = {added = '+', modified = '~', removed = '-'}, -- Changes the diff symbols
+ separator = {right = ''}
+ }
+ ''
+]
+
+
+
+
+
Type: list of string
+
active config for: | A | B | C (X) | Y | Z |
+
+
Default: [
+ ''
+ {
+ -- Lsp server name
+ function()
+ local buf_ft = vim.bo.filetype
+ local excluded_buf_ft = { toggleterm = true, NvimTree = true, ["neo-tree"] = true, TelescopePrompt = true }
+
+ if excluded_buf_ft[buf_ft] then
+ return ""
+ end
+
+ local bufnr = vim.api.nvim_get_current_buf()
+ local clients = vim.lsp.get_clients({ bufnr = bufnr })
+
+ if vim.tbl_isempty(clients) then
+ return "No Active LSP"
+ end
+
+ local active_clients = {}
+ for _, client in ipairs(clients) do
+ table.insert(active_clients, client.name)
+ end
+
+ return table.concat(active_clients, ", ")
+ end,
+ icon = ' ',
+ separator = {left = ''},
+ }
+ ''
+ ''
+ {
+ "diagnostics",
+ sources = {'nvim_lsp', 'nvim_diagnostic', 'nvim_diagnostic', 'vim_lsp', 'coc'},
+ symbols = {error = ' ', warn = ' ', info = ' ', hint = ' '},
+ colored = true,
+ update_in_insert = false,
+ always_visible = false,
+ diagnostics_color = {
+ color_error = { fg = 'red' },
+ color_warn = { fg = 'yellow' },
+ color_info = { fg = 'cyan' },
+ },
+ }
+ ''
+]
+
+
+
+
+
Type: list of string
+
active config for: | A | B | C X | (Y) | Z |
+
+
Default: [
+ ''
+ {
+ "",
+ draw_empty = true,
+ separator = { left = '', right = '' }
+ }
+ ''
+ ''
+ {
+ 'searchcount',
+ maxcount = 999,
+ timeout = 120,
+ separator = {left = ''}
+ }
+ ''
+ ''
+ {
+ "branch",
+ icon = ' •',
+ separator = {left = ''}
+ }
+ ''
+]
+
+
+
+
+
Type: list of string
+
active config for: | A | B | C X | Y | (Z) |
+
+
Default: [
+ ''
+ {
+ "",
+ draw_empty = true,
+ separator = { left = '', right = '' }
+ }
+ ''
+ ''
+ {
+ "progress",
+ separator = {left = ''}
+ }
+ ''
+ ''
+ {"location"}
+ ''
+ ''
+ {
+ "fileformat",
+ color = {fg='black'},
+ symbols = {
+ unix = '', -- e712
+ dos = '', -- e70f
+ mac = '', -- e711
+ }
+ }
+ ''
+]
+
+
+
+
+
Type: boolean
+
Always divide middle section
+
+
Default: true
+
+
+
+
+
Type: string
+
Component separator for left side
+
+
Default: ""
+
+
+
+
+
Type: string
+
Component separator for right side
+
+
Default: ""
+
+
+
+
+
Type: list of string
+
Filetypes to disable lualine on
+
+
Default: [
+ "alpha"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable lualine statusline plugin.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Type: boolean
+
Enable global status for lualine
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to enable icons for lualine.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: list of string
+
If current filetype is in this list it'll always be drawn as inactive statusline
+and the last window will be drawn as active statusline.
+
+
Default: [
+ "NvimTree"
+]
+
+
+
+
+
Type: list of string
+
inactive config for: | (A) | B | C X | Y | Z |
+
+
Default: [ ]
+
+
+
+
+
Type: list of string
+
inactive config for: | A | (B) | C X | Y | Z |
+
+
Default: [ ]
+
+
+
+
+
Type: list of string
+
inactive config for: | A | B | (C) X | Y | Z |
+
+
Default: [
+ "'filename'"
+]
+
+
+
+
+
Type: list of string
+
inactive config for: | A | B | C (X) | Y | Z |
+
+
Default: [
+ "'location'"
+]
+
+
+
+
+
Type: list of string
+
inactive config for: | A | B | C X | (Y) | Z |
+
+
Default: [ ]
+
+
+
+
+
Type: list of string
+
inactive config for: | A | B | C X | Y | (Z) |
+
+
Default: [ ]
+
+
+
+
+
Type: signed integer
+
Refresh rate for lualine
+
+
Default: 1000
+
+
+
+
+
Type: signed integer
+
Refresh rate for tabline
+
+
Default: 1000
+
+
+
+
+
Type: signed integer
+
Refresh rate for winbar
+
+
Default: 1000
+
+
+
+
+
Type: string
+
Section separator for left side
+
+
Default: ""
+
+
+
+
+
Type: string
+
Section separator for right side
+
+
Default: ""
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of Lualine
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: one of "auto", "16color", "ayu_dark", "ayu_light", "ayu_mirage", "ayu", "base16", "codedark", "dracula", "everforest", "github_dark", "github_light", "github_dark_dimmed", "github_dark_default", "github_light_default", "github_dark_high_contrast", "github_light_high_contrast", "github_dark_colorblind", "github_light_colorblind", "github_dark_tritanopia", "github_light_tritanopia", "gruvbox", "gruvbox_dark", "gruvbox_light", "gruvbox-material", "horizon", "iceberg_dark", "iceberg_light", "iceberg", "jellybeans", "material", "modus-vivendi", "molokai", "moonfly", "nightfly", "nord", "OceanicNext", "onedark", "onelight", "palenight", "papercolor_dark", "papercolor_light", "PaperColor", "powerline_dark", "powerline", "pywal", "seoul256", "solarized_dark", "solarized_light", "Tomorrow", "wombat", "onedark"
+
+
Default: "`config.vim.theme.name` if theme supports lualine else \"auto\""
+
+
+
+
+
Type: boolean
+
Enable syntax highlighting
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to enable neovim bufferline.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: null
+
+
+
+
+
Type: null or string
+
+
Default: "bn"
+
+
+
+
+
Type: null or string
+
+
Default: "bp"
+
+
+
+
+
Type: null or string
+
+
Default: "bmn"
+
+
+
+
+
Type: null or string
+
+
Default: "bmp"
+
+
+
+
+
Type: null or string
+
+
Default: "bc"
+
+
+
+
+
Type: null or string
+
Sort buffers by directory
+
+
Default: "bsd"
+
+
+
+
+
Type: null or string
+
Sort buffers by extension
+
+
Default: "bse"
+
+
+
+
+
Type: null or string
+
+
Default: "bsi"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of bufferline-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: (attribute set) or (luaInline)
+
Overrides the highlight groups of bufferline.
+
See :help bufferline-highlights.
+
+
Default: ```lua
+(function()
+ local integration = require("catppuccin.special.bufferline")
+ return (integration.get_theme or integration.get)()
+end)()
+```
+if the active theme is Catppuccin, `{}` otherwise.
+
+
+
+
+
+
Type: boolean
+
Whether to always show bufferline
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to auto toggle bufferline
+
+
Default: true
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string or (luaInline)
+
Command to run when closing a buffer
+
+
Default: {
+ _type = "lua-inline";
+ expr = ''
+ function(bufnum)
+ require("bufdelete").bufdelete(bufnum, false)
+ end
+ '';
+}
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: boolean
+
Whether or not to add filetype icon highlights
+
+
Default: true
+
+
+
+
+
Type: null or (luaInline)
+
Custom filter function for filtering out buffers.
+
+
Note
+
This will be called a lot, so you are encouraged to keep it as
+short and lightweight as possible unless you are fully aware
+of the performance implications.
+
+
+
Default: null
+
Example:
custom_filter = function(buf_number, buf_numbers)
+ -- filter out filetypes you don't want to see
+ if vim.bo[buf_number].filetype ~= "<i-dont-want-to-see-this>" then
+ return true
+ end
+ -- filter out by buffer name
+ if vim.fn.bufname(buf_number) ~= "<buffer-name-I-dont-want>" then
+ return true
+ end
+ -- filter out based on arbitrary rules
+ -- e.g. filter out vim wiki buffer from tabline in your work repo
+ if vim.fn.getcwd() == "<work-repo>" and vim.bo[buf_number].filetype ~= "wiki" then
+ return true
+ end
+ -- filter out by it's index number in list (don't show first buffer)
+ if buf_numbers[1] ~= buf_number then
+ return true
+ end
+end
+
+
+
+
+
+
Type: one of false, "nvim_lsp", "coc"
+
Diagnostics provider to be used in buffer LSP indicators
+
+
Default: "nvim_lsp"
+
+
+
+
+
Type: null or (luaInline)
+
Function to get the diagnostics indicator.
+The function should return a string to be used as the indicator.
+
Can be set to nil to keep the buffer name highlight, but delete the
+highlighting.
+
+
Default: {
+ _type = "lua-inline";
+ expr = ''
+ function(count, level, diagnostics_dict, context)
+ local s = " "
+ for e, n in pairs(diagnostics_dict) do
+ local sym = e == "error" and " "
+ or (e == "warning" and " " or " " )
+ s = s .. n .. sym
+ end
+ return s
+ end
+ '';
+}
+
+
+
+
+
Type: boolean
+
Whether to update diagnostics while in insert mode.
+
Setting this to true has performance implications, but they may be
+negligible depending on your setup. Set it to true if you know what
+you are doing.
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to consider duplicate paths in different groups as duplicates
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to enforce regular tabs
+
+
Default: false
+
+
+
+
+
Type: null or (luaInline)
+
The function bufferline uses to get the icon. Recommended to leave as default.
+
+
Default: null
+
Example:
function(element)
+ local custom_map = {my_thing_ft: {icon = "my_thing_icon", hl = "DevIconDefault"}}
+ return custom_map[element.filetype]
+end
+
+
+
+
+
+
Type: signed integer
+
+
Default: 200
+
+
+
+
+
Type: boolean
+
Whether to enable hover.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: list of string
+
+
Default: [
+ "close"
+]
+
+
+
+
+
Type: null or string
+
The indicator icon to use for the current buffer.
+
+
Warning
+
This must be omitted while style is not icon
+
+
+
Default: null
+
+
+
+
+
Type: one of "icon", "underline", "none"
+
+
Default: "underline"
+
+
+
+
+
Type: null or string or (luaInline)
+
Command to run when left clicking a buffer
+
+
Default: "buffer %d"
+
+
+
+
+
Type: string
+
Icon for left truncation
+
+
Default: ""
+
+
+
+
+
Type: signed integer
+
+
Default: 18
+
+
+
+
+
Type: signed integer
+
Length of the prefix used when a buffer is de-duplicated
+
+
Default: 15
+
+
+
+
+
Type: null or string or (luaInline)
+
Command to run when middle clicking a buffer
+
+
Default: null
+
+
+
+
+
Type: one of "tabs", "buffers"
+
Mode to use for bufferline
+
+
Default: "buffers"
+
+
+
+
+
Type: string
+
Icon for modified buffer
+
+
Default: "● "
+
+
+
+
+
Type: boolean
+
Whether or not the move command "wraps" at the first or last position
+
+
Default: false
+
+
+
+
+
+
Type: one of "none", "ordinal", "buffer_id", "both" or (luaInline)
+
Whether or not to show buffer numbers
+
+
Default: {
+ _type = "lua-inline";
+ expr = ''
+ function(opts)
+ return string.format('%s·%s', opts.raise(opts.id), opts.lower(opts.ordinal))
+ end
+ '';
+}
+
+
+
+
+
Type: list of (attribute set)
+
The windows to offset bufferline above, see :help bufferline-offset
+
+
Default: [
+ {
+ filetype = "NvimTree";
+ highlight = "Directory";
+ separator = true;
+ text = "File Explorer";
+ }
+ {
+ filetype = "neo-tree";
+ highlight = "Directory";
+ separator = true;
+ text = "File Explorer";
+ }
+ {
+ filetype = "snacks_layout_box";
+ highlight = "Directory";
+ separator = true;
+ text = "File Explorer";
+ }
+]
+
+
+
+
+
Type: boolean
+
Whether or not custom sorted buffers should persist
+
+
Default: true
+
+
+
+
+
Type: null or string or (luaInline)
+
Command to run when right clicking a buffer
+
+
Default: "vertical sbuffer %d"
+
+
+
+
+
Type: string
+
Icon for right truncation
+
+
Default: ""
+
+
+
+
+
Type: null or one of "slant", "padded_slant", "slope", "padded_slope", "thick", "thin" or list of string
+
The type of separator used to separate buffers and tabs.
+
Either one of the listed types, or a list of 2 characters for either side.
+
+
Default: "thin"
+
+
+
+
+
Type: boolean
+
Whether or not to show buffer close icons
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether or not to show buffer icons
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether or not to show the close icon
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether or not to show duplicate buffer prefixes
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether or not to show tab indicators
+
+
Default: true
+
+
+
+
+
Type: one of "insert_after_current", "insert_at_end", "id", "extension", "relative_directory", "directory", "tabs" or (luaInline)
+
Method to sort buffers by. Must be one of the supported values, or an inline Lua value.
+
+
Default: "extension"
+
+
+
+
+
Type: one of "default", "minimal", "no_bold", "no_italic"
+
The base style of bufferline
+
+
Default: "default"
+
+
+
+
+
Type: signed integer
+
The size of the tabs in bufferline
+
+
Default: 18
+
+
+
+
+
Type: boolean
+
Whether or not to allow highlight groups to be overridden.
+
While false, bufferline.nvim sets highlights as default.
+
+
Default: true
+
Example: false
+
+
+
+
+
Type: boolean
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to enable telescope.nvim: multi-purpose search and picker utility.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of (submodule)
+
Individual extension configurations containing name, packages and setup
+fields to resolve dependencies, handle load_extension calls and add the setup
+table into the extensions portion of Telescope's setup table.
+
+
Default: [ ]
+
Example:
[
+ {
+ name = "fzf";
+ packages = [pkgs.vimPlugins.telescope-fzf-native-nvim];
+ setup = {fzf = {fuzzy = true;};};
+ }
+]
+
+
+
+
+
+
Type: string
+
Name of the extension, will be used to load it with a require
+
+
+
+
+
+
Type: list of (string or package)
+
Package or packages providing the Telescope extension to be loaded.
+
+
Default: [ ]
+
+
+
+
+
Type: attribute set of anything
+
Named attribute set to be inserted into Telescope's extensions table.
+
+
Default: { }
+
Example:
{
+ fzf = {
+ fuzzy = true;
+ };
+}
+
+
+
+
+
Type: null or string
+
+
Default: "fb"
+
+
+
+
+
Type: null or string
+
Diagnostics [Telescope]
+
+
Default: "fld"
+
+
+
+
+
Type: null or string
+
+
Default: "ff"
+
+
+
+
+
Type: null or string
+
Find projects [Telescope]
+
+
Default: "fp"
+
+
+
+
+
Type: null or string
+
Git branches [Telescope]
+
+
Default: "fvb"
+
+
+
+
+
Type: null or string
+
Git buffer commits [Telescope]
+
+
Default: "fvcb"
+
+
+
+
+
Type: null or string
+
Git commits [Telescope]
+
+
Default: "fvcw"
+
+
+
+
+
Type: null or string
+
+
Default: "fvf"
+
+
+
+
+
Type: null or string
+
+
Default: "fvx"
+
+
+
+
+
Type: null or string
+
+
Default: "fvs"
+
+
+
+
+
+
Type: null or string
+
+
Default: "fg"
+
+
+
+
+
Type: null or string
+
LSP Definitions [Telescope]
+
+
Default: "flD"
+
+
+
+
+
Type: null or string
+
LSP Document Symbols [Telescope]
+
+
Default: "flsb"
+
+
+
+
+
Type: null or string
+
LSP Implementations [Telescope]
+
+
Default: "fli"
+
+
+
+
+
Type: null or string
+
LSP References [Telescope]
+
+
Default: "flr"
+
+
+
+
+
Type: null or string
+
LSP Type Definitions [Telescope]
+
+
Default: "flt"
+
+
+
+
+
Type: null or string
+
LSP Workspace Symbols [Telescope]
+
+
Default: "flsw"
+
+
+
+
+
Type: null or string
+
+
Default: "ft"
+
+
+
+
+
Type: null or string
+
Resume (previous search) [Telescope]
+
+
Default: "fr"
+
+
+
+
+
Type: null or string
+
+
Default: "fs"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of Telescope
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable colored devicons.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: string
+
Prefix in front of each result entry. Current selection not included.
+
+
Default: " "
+
+
+
+
+
Type: attribute set of anything
+
Attribute set containing per-extension settings for Telescope
+
+
Default: { }
+
+
+
+
+
Type: list of string
+
File patterns to omit from Telescope results
+
+
Default: [
+ "node_modules"
+ "%.git/"
+ "dist/"
+ "build/"
+ "target/"
+ "result/"
+]
+
+
+
+
+
Type: one of "insert", "normal"
+
Determines in which mode telescope starts.
+
+
Default: "insert"
+
+
+
+
+
Type: submodule
+
Determines the default configuration values for layout strategies.
+See telescope.layout for details of the configurations options for
+each strategy.
+
+
Default: { }
+
+
+
+
+
Type: floating point number
+
How tall to make Telescope's entire layout
+
+
Default: 0.8
+
+
+
+
+
Type: floating point number
+
Change the width of Telescope's preview window
+
+
Default: 0.55
+
+
+
+
+
Type: one of "top", "bottom"
+
Where to place prompt window
+
+
Default: "top"
+
+
+
+
+
Type: signed integer
+
When lines are less than this value, the preview will be disabled
+
+
Default: 120
+
+
+
+
+
Type: boolean
+
Flip the location of the results/prompt and preview windows
+
+
Default: false
+
+
+
+
+
Type: floating point number
+
How wide to make Telescope's entire layout
+
+
Default: 0.8
+
+
+
+
+
Type: string
+
Determines the default layout of Telescope pickers. See :help telescope.layout.
+
+
Default: "horizontal"
+
+
+
+
+
Type: list of (one of "hidden", "tail", "absolute", "smart", "shorten", "truncate")
+
Determines how file paths are displayed.
+
+
Default: [
+ "absolute"
+]
+
+
+
+
+
Type: (list of string) or (luaInline)
+
Command to use for finding files. If using an executable from PATH then you must
+make sure that the package is available in vim.extraPackages.
+
+
Default: [
+ "\${pkgs.fd}/bin/fd"
+]
+
+
+
+
+
Type: string
+
Shown in front of Telescope's prompt
+
+
Default: " "
+
+
+
+
+
Type: string
+
Character(s) to show in front of the current selection
+
+
Default: " "
+
+
+
+
+
Type: one of "reset", "follow", "row", "closest", "none"
+
Determines how the cursor acts after each sort iteration.
+
+
Default: "reset"
+
+
+
+
+
Type: attribute set of string
+
Set an environment for term_previewer
+
+
Default: {
+ COLORTERM = "truecolor";
+}
+
+
+
+
+
Type: one of "descending", "ascending"
+
Determines the direction "better" results are sorted towards.
+
+
Default: "ascending"
+
+
+
+
+
Type: list of string
+
Defines the command that will be used for live_grep and grep_string pickers.
+Make sure that color is set to never because telescope does not yet interpret color codes.
+
+
Default: [
+ "\${pkgs.ripgrep}/bin/rg"
+ "--color=never"
+ "--no-heading"
+ "--with-filename"
+ "--line-number"
+ "--column"
+ "--smart-case"
+ "--hidden"
+ "--no-ignore"
+]
+
+
+
+
+
Type: signed integer
+
Pseudo-transparency of keymap hints floating window
+
+
Default: 0
+
+
+
+
+
Type: (list of string) or (luaInline)
+
cmd to use for finding files
+
+
Default: [
+ "\${pkgs.fd}/bin/fd"
+ "--type=file"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable toggleterm as a replacement to built-in terminal command.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: one of "horizontal", "vertical", "tab", "float"
+
Direction of the lazygit window
+
+
Default: "float"
+
+
+
+
+
Type: boolean
+
Whether to enable LazyGit integration.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
Open lazygit [toggleterm]
+
+
Default: "gg"
+
+
+
+
+
Type: null or package
+
The package that should be used for lazygit. Setting it to null will attempt to use lazygit from your PATH
+
+
Default:
+
+
+
+
+
Type: null or string
+
The keymapping to open toggleterm
+
+
Default: ""
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of ToggleTerm
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: one of "horizontal", "vertical", "tab", "float"
+
Direction of the terminal
+
+
Default: "horizontal"
+
+
+
+
+
Type: boolean
+
+
Default: false
+
+
+
+
+
Type: (luaInline) or signed integer
+
Number or lua function which is passed to the current terminal
+
+
Default: {
+ _type = "lua-inline";
+ expr = ''
+ function(term)
+ if term.direction == "horizontal" then
+ return 15
+ elseif term.direction == "vertical" then
+ return vim.o.columns * 0.4
+ end
+ end
+ '';
+}
+
+
+
+
+
Type: boolean
+
Whether to enable winbar in terminal.
+
+
Default: true
+
Example: true
+
+
+
+
+
+
Type: RGB color in hex format
+
The base00 color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base01 color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base02 color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base03 color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base04 color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base05 color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base06 color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base07 color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base08 color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base09 color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base0A color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base0B color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base0C color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base0D color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base0E color to use
+
+
+
+
+
+
Type: RGB color in hex format
+
The base0F color to use
+
+
+
+
+
+
+
+
Type: one of "base16", "catppuccin", "dracula", "everforest", "github", "gruvbox", "mellow", "mini-base16", "nord", "onedark", "oxocarbon", "rose-pine", "solarized", "solarized-osaka", "tokyonight"
+
Supported themes can be found in supportedThemes.nix.
+Setting the theme to "base16" enables base16 theming and
+requires all of the colors in vim.theme.base16-colors to be set.
+
+
+
+
+
+
Type: one of "dark", "darker", "cool", "deep", "warm", "warmer"
+
Specific style for theme if it supports it
+
+
+
+
+
+
Type: boolean
+
Whether or not transparency should be enabled. Has no effect for themes that do not support transparency
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to add the default grammars to the list of grammars
+to install.
+
This option is only relevant if treesitter has been enabled.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to enable autoclose and rename html tag.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable context of current buffer contents [nvim-treesitter-context] .
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of treesitter-context
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to display line numbers in current context
+
+
Default: true
+
+
+
+
+
Type: signed integer
+
How many lines the window should span.
+
Values >= 0 mean there will be no limit.
+
+
Default: 0
+
+
+
+
+
Type: signed integer
+
Minimum editor window height to enable context.
+
Values >= 0 mean there will be no limit.
+
+
Default: 0
+
+
+
+
+
Type: one of "cursor", "topline"
+
Line used to calculate context.
+
+
Default: "cursor"
+
+
+
+
+
Type: signed integer
+
Maximum number of lines to collapse for a single context line.
+
+
Default: 20
+
+
+
+
+
Type: null or string
+
Separator between context and content. This option should
+be a single character string, like '-'.
+
When separator is set, the context will only show up when
+there are at least 2 lines above cursorline.
+
+
Default: "-"
+
+
+
+
+
Type: one of "inner", "outer"
+
+
Default: "outer"
+
+
+
+
+
Type: signed integer
+
The Z-index of the context window.
+
+
Default: 20
+
+
+
+
+
Type: boolean
+
Whether to enable treesitter, also enabled automatically through language options.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable fold with treesitter.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of package
+
List of treesitter grammars to install. For grammars to be installed properly,
+you must use grammars from pkgs.vimPlugins.nvim-treesitter.builtGrammars.
+You can use pkgs.vimPlugins.nvim-treesitter.allGrammars to install all grammars.
+
For languages already supported by nvf, you may use
+vim.language.<lang>.treesitter options, which will automatically add
+the required grammars to this.
+
+
Default: [ ]
+
Example:
with pkgs.vimPlugins.nvim-treesitter.builtGrammars; [
+ regex
+ kdl
+];
+
+
+
+
+
+
Type: boolean or list of string
+
Takes either a boolean or a list of languages.
+
Setting this to true will run :h syntax and tree-sitter at the same time.
+You may this to true if you depend on 'syntax' being enabled (like for
+indentation).
+
+
Note
+
Using this option may slow down your editor, and you may see some duplicate
+highlights.
+
+
+
Default: false
+
+
+
+
+
Type: (list of string) or (luaInline)
+
List of treesitter grammars to disable highlighting for.
+
This option can be either a list, in which case it will be
+converted to a Lua table containing grammars to disable
+highlighting for, or a string containing a lua function
+that will be read as is.
+
+
Warning
+
A comma will be added at the end of your function, so you
+do not need to add it yourself. Doing so will cause in
+syntax errors within your Neovim configuration.
+
+
+
Default: [ ]
+
Example:
```lua
+-- Disable slow treesitter highlight for large files
+function(lang, buf)
+ local max_filesize = 1000 * 1024 -- 1MB
+ local ok, stats = pcall(vim.uv.fs_stat, vim.api.nvim_buf_get_name(buf))
+ if ok and stats and stats.size > max_filesize then
+ return true
+ end
+end
+```
+
+
+
+
+
+
Type: boolean
+
Whether to enable highlighting with treesitter.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: (list of string) or (luaInline)
+
List of treesitter grammars to disable incremental selection
+for.
+
This option can be either a list, in which case it will be
+converted to a Lua table containing grammars to disable
+indentation for, or a string containing a lua function
+that will be read as is.
+
+
Warning
+
A comma will be added at the end of your function, so you
+do not need to add it yourself. Doing so will cause in
+syntax errors within your Neovim configuration.
+
+
+
Default: [ ]
+
Example: ["c" "rust" ]
+
+
+
+
+
Type: boolean
+
Whether to enable incremental selection with treesitter.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: (list of string) or (luaInline)
+
List of treesitter grammars to disable indentation for.
+
This option can be either a list, in which case it will be
+converted to a Lua table containing grammars to disable
+indentation for, or a string containing a lua function
+that will be read as is.
+
+
Warning
+
A comma will be added at the end of your function, so you
+do not need to add it yourself. Doing so will cause in
+syntax errors within your Neovim configuration.
+
+
+
Default: [ ]
+
Example: ["c" "rust"]
+
+
+
+
+
Type: boolean
+
Whether to enable indentation with treesitter.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: null or string
+
Decrement selection by node [treesitter]
+
+
Default: "grm"
+
+
+
+
+
Type: null or string
+
Increment selection by node [treesitter]
+
+
Default: "grn"
+
+
+
+
+
Type: null or string
+
Increment selection by scope [treesitter]
+
+
Default: "grc"
+
+
+
+
+
Type: null or string
+
Init selection [treesitter]
+
+
Default: "gnn"
+
+
+
+
+
Type: boolean
+
Whether to enable Treesitter textobjects.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of treesitter-textobjects
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
Example:
{
+ select = {
+ enable = true;
+ keymaps = {
+ af = "@function.outer";
+ };
+ lookahead = true;
+ };
+}
+
+
+
+
+
Type: boolean
+
Whether to enable visible borders for most windows.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
The global border style to use.
+
If a list is given, it should have a length of eight or any divisor of
+eight. The array will specify the eight chars building up the border in
+a clockwise fashion starting with the top-left corner. You can specify
+a different highlight group for each character by passing a
+[char, "YourHighlightGroup"] instead
+
+
Default: "rounded"
+
Example:
[
+ "╔"
+ "═"
+ "╗"
+ "║"
+ "╝"
+ "═"
+ "╚"
+ "║"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable borders for the fastaction plugin.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
The border style to use for the fastaction plugin
+
+
Default: "rounded"
+
+
+
+
+
Type: boolean
+
Whether to enable borders for the lsp-signature plugin.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
The border style to use for the lsp-signature plugin
+
+
Default: "rounded"
+
+
+
+
+
Type: boolean
+
Whether to enable borders for the lspsaga plugin.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
The border style to use for the lspsaga plugin
+
+
Default: "rounded"
+
+
+
+
+
Type: boolean
+
Whether to enable borders for the nvim-cmp plugin.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
The border style to use for the nvim-cmp plugin
+
+
Default: "rounded"
+
+
+
+
+
Type: boolean
+
Whether to enable borders for the which-key plugin.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
The border style to use for the which-key plugin
+
+
Default: "rounded"
+
+
+
+
+
Type: boolean
+
Whether to enable breadcrumbs.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to always display the breadcrumbs component
+on winbar.
+
+
Note
+
This will pass draw_empty to the nvim_navic winbar
+component, which causes the component to be drawn even
+if it's empty.
+
+
+
Default: true
+
Example: false
+
+
+
+
+
Type: boolean
+
Whether to automatically configure a winbar component for
+Lualine on the Winbar section.
+
+
Note
+
This is set to true by default, which means nvim-navic
+will occupy winbar.lualine_c for the breadcrumbs feature
+unless this option is set to false.
+
+
+
Default: true
+
Example: false
+
+
+
+
+
Type: boolean
+
Whether to enable navbuddy LSP helper UI. Enabling this option automatically loads and enables nvim-navic.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: string
+
Insert at the end of name.
+
+
Default: "a"
+
+
+
+
+
Type: string
+
Insert at the end of scope.
+
+
Default: "A"
+
+
+
+
+
Type: string
+
Navigate to the child node.
+
+
Default: "l"
+
+
+
+
+
Type: string
+
Close and return the cursor to its original location.
+
+
Default: ""
+
+
+
+
+
+
Type: string
+
+
Default: "d"
+
+
+
+
+
Type: string
+
Create a new fold of the node.
+
+
Default: "f"
+
+
+
+
+
Type: string
+
Delete the current fold of the node.
+
+
Default: "F"
+
+
+
+
+
Type: string
+
Open the mappings help window.
+
+
Default: "g?"
+
+
+
+
+
Type: string
+
Open the node in a horizontal split.
+
+
Default: ""
+
+
+
+
+
Type: string
+
Insert at the start of name.
+
+
Default: "i"
+
+
+
+
+
Type: string
+
Insert at the start of scope.
+
+
Default: "I"
+
+
+
+
+
Type: string
+
+
Default: "J"
+
+
+
+
+
Type: string
+
+
Default: "K"
+
+
+
+
+
Type: string
+
Navigate to the next sibling node.
+
+
Default: "j"
+
+
+
+
+
Type: string
+
Navigate to the parent node.
+
+
Default: "h"
+
+
+
+
+
Type: string
+
Navigate to the previous sibling node.
+
+
Default: "k"
+
+
+
+
+
Type: string
+
+
Default: "r"
+
+
+
+
+
Type: string
+
Navigate to the root node.
+
+
Default: "0"
+
+
+
+
+
Type: string
+
+
Default: ""
+
+
+
+
+
Type: string
+
Start fuzzy finder at the current level.
+
+
Default: "t"
+
+
+
+
+
Type: string
+
+
Default: "s"
+
+
+
+
+
Type: string
+
Select the name visually.
+
+
Default: "v"
+
+
+
+
+
Type: string
+
Select the scope visually.
+
+
Default: "V"
+
+
+
+
+
Type: string
+
Open the node in a vertical split.
+
+
Default: ""
+
+
+
+
+
Type: string
+
Yank the name to system clipboard.
+
+
Default: "y"
+
+
+
+
+
Type: string
+
Yank the scope to system clipboard.
+
+
Default: "Y"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of navbuddy
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: "◩ "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: ""
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: ""
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: boolean
+
Whether to attach to LSP server manually.
+
+
Default: true
+
+
+
+
+
Type: null or (list of string)
+
The preference list ranking LSP servers.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Whether to enable node markers.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " "
+
+
+
+
+
Type: string
+
+
Default: " → "
+
+
+
+
+
Type: boolean
+
Whether to keep the current node in focus in the source buffer.
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to highlight the currently focused node in the source buffer.
+
+
Default: true
+
+
+
+
+
Type: one of "smart", "top", "mid", "none"
+
The mode for reorienting the source buffer after moving nodes.
+
+
Default: "smart"
+
+
+
+
+
+
Type: boolean
+
Add the default Navbuddy keybindings in addition to the keybinding added by this module.
+
+
Default: true
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
The border style to use.
+
+
Default: "rounded"
+
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
The border style to use for the left section of the Navbuddy UI.
+
+
Default: "rounded"
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
The border style to use for the middle section of the Navbuddy UI.
+
+
Default: "rounded"
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
The border style to use for the right section of the Navbuddy UI.
+
+
Default: "rounded"
+
+
+
+
+
Type: one of "leaf", "always", "never"
+
The display mode of the preview on the right section.
+
+
Default: "leaf"
+
+
+
+
+
Type: null or value "nvim-navic" (singular enum)
+
The source to be used for breadcrumbs component. Null means no breadcrumbs.
+
+
Default: "nvim-navic"
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable color highlighting [nvim-colorizer.lua].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of colorizer
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: attribute set of (submodule)
+
Filetypes to enable on and their option overrides.
+
"*" means enable on all filetypes. Filetypes prefixed with "!" are disabled.
+
+
Default: { }
+
Example:
{
+ "!vim" = { };
+ "*" = { };
+ javascript = {
+ AARRGGBB = false;
+ };
+}
+
+
+
+
+
Type: null or boolean
+
Colorize 0xAARRGGBB hex codes
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Colorize #RGB hex codes
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Colorize #RRGGBB hex codes
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Colorize #RRGGBBAA hex codes
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Update color values even if buffer is not focused. Example use: cmp_menu, cmp_docs
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Enable all CSS functions: rgb_fn, hsl_fn
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Colorize CSS hsl() and hsla() functions
+
+
Default: null
+
+
+
+
+
Type: null or one of "foreground", "background"
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Colorize "Name" codes like Blue
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Colorize CSS rgb() and rgba() functions
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
+
Default: null
+
+
+
+
+
Type: null or string
+
String to display as virtualtext
+
+
Default: null
+
+
+
+
+
Type: submodule
+
user_default_options is the second parameter to nvim-colorizer's setup function.
+
Anything set here is the inverse of the previous setup configuration.
+
+
Default: { }
+
+
+
+
+
Type: null or boolean
+
Colorize 0xAARRGGBB hex codes
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Colorize #RGB hex codes
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Colorize #RRGGBB hex codes
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Colorize #RRGGBBAA hex codes
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Update color values even if buffer is not focused. Example use: cmp_menu, cmp_docs
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Enable all CSS functions: rgb_fn, hsl_fn
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Colorize CSS hsl() and hsla() functions
+
+
Default: null
+
+
+
+
+
Type: null or one of "foreground", "background"
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Colorize "Name" codes like Blue
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Colorize CSS rgb() and rgba() functions
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
+
Default: null
+
+
+
+
+
Type: null or string
+
String to display as virtualtext
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Whether to enable overriding vim.ui.select with fastaction.nvim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of fastaction
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable automatically highlight other uses of the word under the cursor [vim-illuminate]
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of vim-illuminate
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: list of string
+
Filetypes to not illuminate, this overrides filetypes_allowlist
+
+
Default: [
+ "dirvish"
+ "fugitive"
+ "help"
+ "neo-tree"
+ "notify"
+ "NvimTree"
+ "TelescopePrompt"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable modes.nvim's prismatic line decorations.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of modes.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: string
+
The #RRGGBB color code for the visual mode highlights
+
+
Default: "#f5c359"
+
+
+
+
+
Type: string
+
The #RRGGBB color code for the visual mode highlights
+
+
Default: "#c75c6a"
+
+
+
+
+
Type: string
+
The #RRGGBB color code for the visual mode highlights
+
+
Default: "#78ccc5"
+
+
+
+
+
Type: string
+
The #RRGGBB color code for the visual mode highlights
+
+
Default: "#9745be"
+
+
+
+
+
Type: floating point number
+
Set opacity for cursorline and number background
+
+
Default: 0.0
+
+
+
+
+
Type: boolean
+
Set a colored cursorline on current line
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to enable noice.nvim UI modification library.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of noice.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
+
+
+
+
+
+
Type: boolean
+
override cmp documentation with Noice
+
+
Default: false
+
+
+
+
+
Type: boolean
+
override the default lsp markdown formatter with Noice
+
+
Default: true
+
+
+
+
+
Type: boolean
+
override the lsp markdown formatter with Noice
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to enable signature help.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
use a classic bottom cmdline for search
+
+
Default: true
+
+
+
+
+
Type: boolean
+
position the cmdline and popupmenu together
+
+
Default: true
+
+
+
+
+
Type: boolean
+
enables an input dialog for inc-rename.nvim
+
+
Default: false
+
+
+
+
+
Type: boolean
+
long messages will be sent to a split
+
+
Default: true
+
+
+
+
+
Type: boolean
+
add a border to hover docs and signature help
+
+
Default: false
+
+
+
+
+
Type: list of (submodule)
+
+
Default: "Hide written messages"
+
+
+
+
+
Type: anything
+
a filter for messages matching this route
+
+
+
+
+
+
Type: null or anything
+
options for the view and the route
+
+
Default: null
+
+
+
+
+
Type: null or string
+
how this route is viewed
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Whether to enable color highlighting [nvim-highlight-colors.lua].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of nvim-highlight-colors
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: one of "background", "foreground", "virtual"
+
Style to render color highlighting with.
+
+
Note
+
Each render style works as follows:
+
+-
+
'background' sets the background
+highlight of the matched color string
+to the RGB color it describes.
+
+-
+
'foreground' sets the foreground
+highlight of the matched color string
+to the RGB color it describes.
+
+-
+
'virtual' displays the matched color
+with virtual text alongside the color
+string in the buffer. Virtual text can
+be configured to display the color in
+various ways, i.e custom virtual symbol
+(via virtual_symbol) positioning
+relative to string, suffix/prefix, etc.
+
+
+
+
+
Default: "background"
+
Example: "virtual"
+
+
+
+
+
Type: one of "inline", "eol", "eow"
+
Where to render the virtual symbol in
+relation to the color string.
+
+
Note
+
Each render style works as follows:
+
+-
+
'inline' render virtual text inline,
+similar to the style of VSCode color
+hinting.
+
+-
+
'eol' render virtual text at the end
+of the line which the color string
+occurs (last column). Recommended to
+set virtual_symbol_suffix to an
+empty string when used.
+
+-
+
'eow' render virtual text at the end
+of the word where the color string
+occurs. Recommended to set
+virtual_symbol_prefix to a single
+space for padding and the suffix to
+an empty string for no padding.
+
+
+
+
+
Default: "inline"
+
Example: "eol"
+
+
+
+
+
Type: boolean
+
Whether to enable nvim-ufo.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of nvim-ufo
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable line length indicator.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of smartcolumn.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: null or string or list of string
+
The position at which the column will be displayed. Set to null to disable
+
+
Default: "120"
+
+
+
+
+
Type: attribute set of (string or list of string)
+
The position at which smart column should be displayed for each individual buffer type
+
+
Default: { }
+
Example:
vim.ui.smartcolumn.setupOpts.custom_colorcolumn = {
+ nix = "110";
+ ruby = "120";
+ java = "130";
+ go = ["90" "130"];
+};
+
+
+
+
+
+
Type: list of string
+
The filetypes smartcolumn will be disabled for.
+
+
Default: [
+ "help"
+ "text"
+ "markdown"
+ "NvimTree"
+ "alpha"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable undofile for persistent undo behaviour.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: string or (luaInline)
+
Path to the directory in which undo history will be stored
+
+
Default: ```nix
+mkLuaInline "vim.fn.stdpath('state') .. '/undo'"
+```
+
+
Example:
```nix
+mkLuaInline "os.getenv('XDG_DATA_HOME') .. '/nvf/undo'"
+```
+
+
+
+
+
+
Type: boolean
+
Whether to enable ccc color picker for neovim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
Decrease the value times delta of the slider
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Increase the value times delta of the slider
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Cancel and close the UI without replace or insert
+
+
Default: ""
+
+
+
+
+
Type: boolean
+
Whether to enable diffview-nvim: cycle through diffs for all modified files for any git rev.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of Fidget
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable syncing nvim shell environment with direnv's using direnv.vim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable nerdfonts icon picker for nvim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable image support in Neovim [image.nvim].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of image.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: one of "kitty", "ueberzug", "sixel"
+
The backend to use for rendering images.
+
+kitty - best in class, works great and is very snappy. Recommended
+by upstream.
+ueberzug - backed by ueberzugpp, supports any terminal,
+but has lower performance
+sixel - uses the Sixel graphics protocol, widely supported by many terminals
+
+
+
Default: "ueberzug"
+
+
+
+
+
Type: boolean
+
Whether to enable only rendering images when the editor is focused.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of string
+
File patterns to hijack for image.nvim. This is useful for
+filetypes that don't have a dedicated integration.
+
+
Default: [
+ "*.png"
+ "*.jpg"
+ "*.jpeg"
+ "*.gif"
+ "*.webp"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable clearing of images when entering insert mode.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable downloading remote images.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable image.nvim in markdown files.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: list of string
+
Filetypes to enable image.nvim in. Markdown extensions
+(i.e. quarto) can go here
+
+
Default: [
+ "markdown"
+ "vimwiki"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable only rendering images at cursor.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or signed integer
+
The maximum width of images to render. Images larger than
+this will be scaled down to fit within this width.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Whether to enable clearing of images when entering insert mode.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable downloading remote images.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable image.nvim in Neorg files.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: list of string
+
Filetypes to enable image.nvim in.
+
+
Default: [
+ "neorg"
+]
+
+
+
+
+
Type: boolean
+
Whether to enable only rendering images at cursor.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or signed integer
+
The maximum height of images to render. Images larger than
+this will be scaled down to fit within this height.
+
+
Default: null
+
+
+
+
+
Type: null or signed integer
+
The maximum height of images to render as a percentage of the
+window height. Images larger than this will be scaled down to
+fit within this height.
+
+
Default: 50
+
+
+
+
+
Type: null or signed integer
+
The maximum width of images to render as a percentage of the
+window width. Images larger than this will be scaled down to
+fit within this width.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Whether to enable clearing of images when they overlap with the window.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of string
+
Filetypes to ignore window overlap clearing in.
+
+
Default: [
+ "cmp_menu"
+ "cmp_docs"
+ ""
+]
+
+
+
+
+
Type: boolean
+
Whether to enable img-clip to paste images into any markup language.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of img-clip
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable complementary neovim plugin for leetcode.nvim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of leetcode-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: string
+
+
Default: "leetcode.nvim"
+
+
+
+
+
Type: boolean
+
Whether to enable leetcode.cn instead of leetcode.com.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable translation for problem questions.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable translator.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable question description images using image.nvim (image-nvim must be enabled)..
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: one of "cpp", "java", "python", "python3", "c", "csharp", "javascript", "typescript", "php", "swift", "kotlin", "dart", "golang", "ruby", "scala", "rust", "racket", "erlang", "elixir", "bash"
+
Language to start your session with
+
+
Default: "python3"
+
+
+
+
+
Type: boolean
+
Whether to enable logging for leetcode.nvim status notifications..
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable leetcode.nvim in a non-standalone mode.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: luaInline
+
Cache storage directory
+
+
Default: {
+ _type = "lua-inline";
+ expr = "vim.fn.stdpath(\"cache\") .. \"/leetcode\"";
+}
+
+
+
+
+
Type: luaInline
+
+
Default: {
+ _type = "lua-inline";
+ expr = "vim.fn.stdpath(\"data\") .. \"/leetcode\"";
+}
+
+
+
+
+
Type: boolean
+
Whether to enable parent directory creation when editing a nested path that does not exist using mkdir.nvim
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable enhanced code navigation with flash.nvim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: "s"
+
+
+
+
+
Type: null or string
+
+
Default: "r"
+
+
+
+
+
Type: null or string
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
+
Default: "S"
+
+
+
+
+
Type: null or string
+
+
Default: "R"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of flash-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable Hop.nvim plugin (easy motion).
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
Jump to occurrences [hop.nvim]
+
+
Default: "h"
+
+
+
+
+
Type: boolean
+
Whether to enable leap.nvim plugin (easy motion).
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: "sX"
+
+
+
+
+
Type: null or string
+
+
Default: "sS"
+
+
+
+
+
Type: null or string
+
+
Default: "sx"
+
+
+
+
+
Type: null or string
+
+
Default: "ss"
+
+
+
+
+
Type: null or string
+
+
Default: "gs"
+
+
+
+
+
Type: boolean
+
Whether to enable assisted motion discovery[precognition.nvim].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of precognition.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: list of string
+
Filetypes that automatically disable 'precognition'
+
+
Default: [
+ "startify"
+]
+
Example: ["startify"]
+
+
+
+
+
Type: attribute set of (submodule)
+
What motions display and at what priority. Only appears in gutters
+
+
Default: { }
+
+
+
+
+
Type: signed integer
+
The priority of the hint
+
+
Default: 1
+
Example: 10
+
+
+
+
+
Type: string
+
The easier-to-read depiction of the motion
+
+
+
+
+
+
Type: attribute set of string
+
The highlight for the virtual text
+
+
Default: {
+ link = "Comment";
+}
+
Example:
{ link = "Comment"; }
+# or
+{ foreground = "#0000FF"; background = "#000000"; };
+
+
+
+
+
+
Type: attribute set of (submodule)
+
What motions display, and at what priority
+
+
Default: { }
+
+
+
+
+
Type: signed integer
+
The priority of the hint
+
+
Default: 1
+
Example: 10
+
+
+
+
+
Type: string
+
The easier-to-read depiction of the motion
+
+
+
+
+
+
Type: boolean
+
Whether to show a blank virtual line when no movements are shown
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to start 'precognition' automatically
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to enable vscode like multiple cursors [multicursor.nvim].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of multicursors
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Create Multicursor user commands
+
+
Default: true
+
+
+
+
+
Type: submodule
+
The configuration for generating hints
+
+
Default: {
+ config = {
+ column_count = null;
+ max_hint_length = 25;
+ };
+ extend = true;
+ insert = true;
+ normal = true;
+}
+
+
+
+
+
Type: submodule
+
The configuration for generating hints for multicursors.nvim
+
+
Default: {
+ column_count = null;
+ max_hint_length = 25;
+}
+
+
+
+
+
Type: null or signed integer
+
The number of columns to use for the hint window
+
+
Default: null
+
+
+
+
+
Type: signed integer
+
The maximum length of the hint
+
+
Default: 25
+
+
+
+
+
Type: boolean
+
Generate hints for the extend mode
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Generate hints for the insert mode
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Generate hints for the normal mode
+
+
Default: true
+
+
+
+
+
Type: submodule
+
The configuration for the hint window
+
+
Default: {
+ float_opts = {
+ border = "none";
+ };
+ position = "bottom";
+}
+
+
+
+
+
Type: submodule
+
The options for the floating hint window
+
+
+
+
+
+
Type: string
+
The border style for the hint window
+
+
Default: "none"
+
+
+
+
+
Type: string
+
The position of the hint window
+
+
Default: "bottom"
+
+
+
+
+
Type: attribute set of string
+
The keys to use for each mode
+
+
Default: {
+ append = "a";
+ change = "c";
+ extend = "e";
+ insert = "i";
+}
+
+
+
+
+
Type: boolean
+
Don't wait for the cursor to move before updating the cursor
+
+
Default: true
+
+
+
+
+
Type: signed integer
+
The time in milliseconds to wait before updating the cursor in insert mode
+
+
Default: 50
+
+
+
+
+
Type: boolean
+
new-file-template.nvim: Automatically insert a template on new files in neovim.
+
+
Note
+
For custom templates add a directory containing lua/templates/*.lua
+to vim.additionalRuntimePaths.
+
+[custom-template-docs]: https://github.com/otavioschwanck/new-file-template.nvim?tab=readme-ov-file#creating-new-templates
+More documentation on the templates available at [custom-template-docs]
+
+
Default: false
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of nvim-file-template.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Disable the autocmd that creates the template
+
+
Default: false
+
+
+
+
+
Type: list of string
+
Disable default templates for specific filetypes
+
+
Default: [ ]
+
+
+
+
+
Type: boolean
+
Enter insert mode after inserting the template
+
+
Default: false
+
+
+
+
+
Type: attribute set of list of string
+
Disable specific regexp for the default templates.
+
+
Default: { }
+
Example: "{ ruby = [\".*\"]; }"
+
+
+
+
+
Type: boolean
+
Use suffix of filename rather than vim.bo.filetype as filetype
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to enable in-neovim nix develop, nix shell, and more using nix-develop.nvim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable a Neovim port of Assorted Biscuits [nvim-biscuits].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of nvim-biscuits
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable Neovim file explorer: edit your filesystem like a buffer [oil-nvim]
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Git status on [oil-nvim] directory listings
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of oil-git-status-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of oil-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable Aerial.nvim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: "gO"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of aerial.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable markdown preview in neovim with glow.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
+
Default: "p"
+
+
+
+
+
Type: boolean
+
Allow preview on all filetypes
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Automatically close the preview window after leaving a Markdown buffer
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Automatically open the preview window after entering a Markdown buffer
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Allow for outside and network wide connections
+
+
Default: false
+
+
+
+
+
Type: string
+
+
Default: ""
+
+
+
+
+
Type: string
+
+
Default: ""
+
+
+
+
+
Type: boolean
+
Whether to enable Markdown preview in neovim with markdown-preview.nvim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: list of string
+
+
Default: [
+ "markdown"
+]
+
+
+
+
+
Type: boolean
+
Only update preview when saving or leaving insert mode
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to enable QMK and ZMK keymaps in nvim.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of qmk.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
+
+
Type: null or strings concatenated with "\n"
+
+
Default: null
+
+
+
+
+
Type: null or string
+
+
Default: null
+
+
+
+
+
Type: one of "qmk", "zmk"
+
Chooses the expected hardware target
+
+
Default: "qmk"
+
+
+
+
+
Type: boolean
+
Whether to enable automatically adjusting options such as shiftwidth or expandtab, using vim-sleuth
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable smart-splits.nvim, a Neovim plugin for smart,
+seamless, directional navigation and resizing of splits.
+
Supports tmux, Wezterm, Kitty, and Zellij multiplexer integrations.
+
+
Default: false
+
+
+
+
+
Type: null or string
+
Focus Window/Pane Below
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Focus Window/Pane on the Left
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Focus Previous Window/Pane
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Focus Window/Pane on the Right
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Focus Window/Pane Above
+
+
Default: ""
+
+
+
+
+
Type: null or string
+
Resize Window/Pane Down
+
+
+
+
+
+
+
Type: null or string
+
Resize Window/Pane Left
+
+
+
+
+
+
+
Type: null or string
+
Resize Window/Pane Right
+
+
+
+
+
+
+
Type: null or string
+
+
+
+
+
+
+
Type: null or string
+
+
Default: "j"
+
+
+
+
+
Type: null or string
+
+
Default: "h"
+
+
+
+
+
Type: null or string
+
+
Default: "l"
+
+
+
+
+
Type: null or string
+
+
Default: "k"
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of smart-splits
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable collection of QoL plugins for Neovim [snacks-nvim]
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of snacks-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable nvim-surround, Neovim plugin to add/change/delete
+surrounding delimiter pairs with ease.
+
+
Note
+
The default mappings deviate from upstream to avoid conflicts with nvim-leap.
+You may change those in your configuration if you do not use nvim-leap
+
+
+
Default: false
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of nvim-surround
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: string
+
+
Default: "gzr"
+
+
+
+
+
Type: string
+
+
Default: "gZR"
+
+
+
+
+
Type: string
+
+
Default: "gzd"
+
+
+
+
+
Type: string
+
+
Default: "z"
+
+
+
+
+
Type: string
+
+
Default: "Z"
+
+
+
+
+
Type: string
+
+
Default: "gz"
+
+
+
+
+
Type: string
+
+
Default: "gZ"
+
+
+
+
+
Type: string
+
keymap for normal_cur_line
+
+
Default: "gZZ"
+
+
+
+
+
Type: string
+
+
Default: "gzz"
+
+
+
+
+
Type: string
+
+
Default: "gz"
+
+
+
+
+
Type: string
+
+
Default: "gZ"
+
+
+
+
+
Type: boolean
+
Use alternative set of keybindings that avoids conflicts with other popular plugins, e.g. nvim-leap
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to enable undo history visualizer for Vim [undotree].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or package
+
The package that should be used for wakatime-cli.
+Set as null to use the default path in $XDG_DATA_HOME
+
+
Default:
+
Example: null
+
+
+
+
+
Type: boolean
+
Whether to enable automatic time tracking and metrics generated from your programming activity [vim-wakatime]
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable improved Yank and Put functionalities for Neovim [yanky-nvim]
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of yanky-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: one of "shada", "sqlite", "memory"
+
storage mode for ring values.
+
+- shada: this will save pesistantly using Neovim ShaDa feature.
+This means that history will be persisted between each session of Neovim.
+- memory: each Neovim instance will have his own history and it will be
+lost between sessions.
+- sqlite: more reliable than
shada, requires sqlite.lua as a dependency.
+nvf will add this dependency to PATH automatically.
+
+
+
Default: "shada"
+
Example: "sqlite"
+
+
+
+
+
Type: boolean
+
Whether to enable companion plugin for the yazi terminal file manager [yazi-nvim]
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
Open yazi at the current file [yazi.nvim]
+
+
Default: "-"
+
+
+
+
+
Type: null or string
+
Open the file manager in nvim's working directory [yazi.nvim]
+
+
Default: "cw"
+
+
+
+
+
Type: null or string
+
Resume the last yazi session [yazi.nvim]
+
+
Default: ""
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of yazi-nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to open Yazi instead of netrw
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Enable the vi alias for nvim
+
+
Default: true
+
Example: false
+
+
+
+
+
Type: boolean
+
Enable the vim alias for nvim
+
+
Default: true
+
Example: false
+
+
+
+
+
Type: boolean
+
Whether to enable registering configured animation(s) automatically.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: luaInline
+
Configuration used to generate an animation to be registered.
+
The final value for ca_config will be used to register a new
+animation using require("cellular-automaton").register_animation(ca_config)
+
+
Warning
+
ca_config must eval to a valid Lua table. nvf does not and cannot
+perform any kind of validation on your Lua code, so bogus values will
+result in errors when the animation is registered.
+
+
+
Default: {
+ _type = "lua-inline";
+ expr = ''
+ local ca_config = {
+ fps = 50,
+ name = 'slide',
+ }
+
+ -- init function is invoked only once at the start
+ -- config.init = function (grid)
+ --
+ -- end
+
+ -- update function
+ ca_config.update = function (grid)
+ for i = 1, #grid do
+ local prev = grid[i][#(grid[i])]
+ for j = 1, #(grid[i]) do
+ grid[i][j], prev = prev, grid[i][j]
+ end
+ end
+ return true
+ end
+ '';
+}
+
+
+
+
+
Type: boolean
+
Whether to enable cellular-automaton to help you cope with stubborn code [cellular-automaton].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: null or string
+
Make it rain [cellular-automaton]
+
+
Default: "fml"
+
+
+
+
+
Type: boolean
+
Whether to enable smooth scrolling for ANY command [cinnamon-nvim].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of cinnamon.nvim
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable basic animation keymaps.
+
+
Default: false
+
Example: true
+
+
+
+
+
+
Type: attribute set
+
+
Default: {
+ count_only = false;
+ mode = "cursor";
+}
+
+
+
+
+
Type: boolean
+
Whether to enable nvim LSP UI element [fidget-nvim].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of Fidget
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Integrate with nvim-tree/nvim-tree.lua (if enabled)
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Integrate with wojciech-kulik/xcodebuild.nvim (if enabled)
+
+
Default: true
+
+
+
+
+
Type: floating point number
+
Limit the number of decimals displayed for floats
+
+
Default: 0.01
+
+
+
+
+
Type: one of "debug", "error", "info", "trace", "warn", "off"
+
+
Default: "warn"
+
+
+
+
+
Type: signed integer
+
Maximum log file size, in KB
+
+
Default: 10000
+
+
+
+
+
Type: luaInline
+
Where Fidget writes its logs to
+
+
Default: {
+ _type = "lua-inline";
+ expr = ''
+ string.format("%s/fidget.nvim.log", vim.fn.stdpath("cache"))
+ '';
+}
+
+
+
+
+
Type: attribute set of (luaInline)
+
How to configure notification groups when instantiated
+
+
Default: {
+ default = {
+ _type = "lua-inline";
+ expr = "require('fidget.notification').default_config";
+ };
+}
+
+
+
+
+
Type: one of "debug", "info", "warn", "error"
+
Minimum notifications level
+
+
Default: "info"
+
+
+
+
+
Type: signed integer
+
Number of removed messages to retain in history
+
+
Default: 128
+
+
+
+
+
Type: boolean
+
Automatically override vim.notify() with Fidget
+
+
Default: false
+
+
+
+
+
Type: signed integer
+
How frequently to update and render notifications
+
+
Default: 10
+
+
+
+
+
Type: luaInline
+
Conditionally redirect notifications to another backend
+
+
Default: {
+ _type = "lua-inline";
+ expr = ''
+ function(msg, level, opts)
+ if opts and opts.on_open then
+ return require("fidget.integration.nvim-notify").delegate(msg, level, opts)
+ end
+ end
+ '';
+}
+
+
+
+
+
Type: string
+
Separator between notification groups
+
+
Default: "---"
+
+
+
+
+
Type: string
+
Highlight group used for group separator
+
+
Default: "Comment"
+
+
+
+
+
Type: string
+
Separator between group name and icon
+
+
Default: " "
+
+
+
+
+
Type: luaInline
+
How to render notification messages
+
+
Default: {
+ _type = "lua-inline";
+ expr = ''
+ function(msg, cnt)
+ return cnt == 1 and msg or string.format("(%dx) %s", cnt, msg)
+ end
+ '';
+}
+
+
+
+
+
Type: boolean
+
Display notification items from bottom to top
+
+
Default: true
+
+
+
+
+
Type: one of "top", "bottom"
+
How to align the notification window
+
+
Default: "bottom"
+
+
+
+
+
Type: one of "none", "single", "double", "rounded", "solid", "shadow" or list of (string or list of string)
+
Border style of the notification window
+
+
Default: "none"
+
+
+
+
+
Type: signed integer
+
Maximum height of the notification window
+
+
Default: 0
+
+
+
+
+
Type: signed integer
+
Maximum width of the notification window
+
+
Default: 0
+
+
+
+
+
Type: string
+
Base highlight group in the notification window
+
+
Default: "Comment"
+
+
+
+
+
Type: one of "editor", "win"
+
What the notification window position is relative to
+
+
Default: "editor"
+
+
+
+
+
Type: signed integer
+
Background color opacity in the notification window
+
+
Default: 100
+
+
+
+
+
Type: signed integer
+
Padding from right edge of window boundary
+
+
Default: 1
+
+
+
+
+
Type: signed integer
+
Padding from bottom edge of window boundary
+
+
Default: 0
+
+
+
+
+
Type: signed integer
+
Stacking priority of the notification window
+
+
Default: 45
+
+
+
+
+
Type: string
+
Icon shown when LSP progress tasks are completed
+
+
Default: "✓"
+
+
+
+
+
Type: string
+
Highlight group for completed LSP tasks
+
+
Default: "Constant"
+
+
+
+
+
Type: signed integer
+
How long a message should persist when complete
+
+
Default: 3
+
+
+
+
+
+
+
+
Type: string
+
Highlight group for group name (LSP server name)
+
+
Default: "Title"
+
+
+
+
+
Type: string
+
Highlight group for group icons
+
+
Default: "Question"
+
+
+
+
+
Type: attribute set of (submodule)
+
Overrides the default configuration for a notification group defined
+in vim.visuals.fidget-nvim.setupOpts.notification.configs.
+
If any of the fields are null, the value from the default
+configuration is used.
+
If default configuration is not defined, the following defaults are used:
+
{
name = "Notifications",
icon = "❰❰",
ttl = 5,
group_style = "Title",
icon_style = "Special",
annote_style = "Question",
debug_style = "Comment",
info_style = "Question",
warn_style = "WarningMsg",
error_style = "ErrorMsg",
debug_annote = "DEBUG",
info_annote = "INFO",
warn_annote = "WARN",
error_annote = "ERROR",
update_hook = function(item)
notification.set_content_key(item)
end,
}
+
+
Default: { }
+
Example:
{
+ rust_analyzer = {
+ name = "Rust Analyzer";
+ };
+}
+
+
+
+
+
+
Type: null or string
+
Separator between message from annote
+
+
Default: " "
+
+
+
+
+
Type: null or string
+
Default style used to highlight item annotes
+
+
Default: "Question"
+
+
+
+
+
Type: null or string
+
Default annotation for debug items
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Style used to highlight debug item annotes
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Default annotation for error items
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Style used to highlight error item annotes
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Style used to highlight group name
+
+
Default: "Title"
+
+
+
+
+
Type: null or string or (luaInline)
+
Icon of the group, displayed in the notification window.
+Can be a string or a function that returns a string.
+
If a function, it is invoked every render cycle with the items
+list, useful for rendering animations and other dynamic content.
+
+
Note
+
If you're looking for detailed information into the function
+signature, you can refer to the fidget API documentation available
+here
+
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
If true, icon is rendered on the left instead of right
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Style used to highlight icon, if null, use group_style
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Default annotation for info items
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Style used to highlight info item annotes
+
+
Default: null
+
+
+
+
+
Type: null or string or (luaInline)
+
Name of the group, displayed in the notification window.
+Can be a string or a function that returns a string.
+
If a function, it is invoked every render cycle with the items
+list, useful for rendering animations and other dynamic content.
+
+
Note
+
If you're looking for detailed information into the function
+signature, you can refer to the fidget API documentation available
+here
+
+
+
Default: null
+
+
+
+
+
Type: null or signed integer
+
Order in which group should be displayed
+
+
Default: 50
+
+
+
+
+
Type: null or signed integer
+
How many notification items to show at once
+
+
Default: null
+
+
+
+
+
Type: null or boolean
+
Whether messages should be preserved in history
+
+
Default: null
+
+
+
+
+
Type: null or signed integer
+
How long a notification item should exist
+
+
Default: 5
+
+
+
+
+
Type: null or boolean or (luaInline)
+
Called when an item is updated.
+
If false, no action is taken.
+If a function, it is invoked with the item being updated.
+
+
Note
+
If you're looking for detailed information into the function
+signature, you can refer to the fidget API documentation available
+here
+
+
+
Default: false
+
+
+
+
+
Type: null or string
+
Default annotation for warn items
+
+
Default: null
+
+
+
+
+
Type: null or string
+
Style used to highlight warn item annotes
+
+
Default: null
+
+
+
+
+
Type: signed integer
+
Priority of the progress notification
+
+
Default: 30
+
+
+
+
+
Type: one of "dots", "dots_negative", "dots_snake", "dots_footsteps", "dots_hop", "line", "pipe", "dots_ellipsis", "dots_scrolling", "star", "flip", "hamburger", "grow_vertical", "grow_horizontal", "noise", "dots_bounce", "triangle", "arc", "circle", "square_corners", "circle_quarters", "circle_halves", "dots_toggle", "box_toggle", "arrow", "zip", "bouncing_bar", "bouncing_ball", "clock", "earth", "moon", "dots_pulse", "meter"
+
Pattern shown when LSP progress tasks are in progress
+
+
Default: "dots"
+
+
+
+
+
Type: signed integer
+
+
Default: 1
+
+
+
+
+
Type: string
+
Highlight group for in-progress LSP tasks
+
+
Default: "WarningMsg"
+
+
+
+
+
Type: signed integer
+
How long a message should persist when in progress
+
+
Default: 99999
+
+
+
+
+
Type: signed integer
+
Maximum number of messages to render
+
+
Default: 16
+
+
+
+
+
Type: boolean
+
Skip adding messages to history
+
+
Default: true
+
+
+
+
+
Type: list of string
+
Ignore LSP servers by name
+
+
Default: [ ]
+
+
+
+
+
Type: boolean
+
Ignore new tasks that are already done
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Ignore new tasks with empty messages
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Log $/progress handler invocations
+
+
Default: false
+
+
+
+
+
Type: signed integer
+
Nvim's LSP client ring buffer size
+
+
Default: 100
+
+
+
+
+
Type: luaInline
+
How to get a progress message's notification group key
+
+
Default: {
+ _type = "lua-inline";
+ expr = ''
+ function(msg)
+ return msg.lsp_client.name
+ end
+ '';
+}
+
+
+
+
+
Type: signed integer
+
How frequently to poll for LSP progress messages
+
+
Default: 0
+
+
+
+
+
Type: boolean
+
Suppress new messages when in insert mode
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Whether to enable highlight undo [highlight-undo].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of highlight-undo
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: signed integer
+
Duration of the highlight
+
+
Default: 500
+
+
+
+
+
Type: boolean
+
Whether to enable indentation guides [indent-blankline].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of indent-blankline
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: signed integer
+
Debounce time in milliseconds
+
+
Default: 200
+
+
+
+
+
Type: string or list of string
+
Character(s) for indentation guide
+
+
Default: "│"
+
+
+
+
+
Type: null or string or list of string
+
The highlight group(s) applied to the indentation guide.
+
See :help ibl.config.indent.highlight.
+
+
Default: null
+
+
+
+
+
Type: signed integer
+
Virtual text priority for the indentation guide
+
+
Default: 1
+
+
+
+
+
Type: boolean
+
Repeat indentation guides on wrapped lines
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Caps the number of indentation levels based on surrounding code
+
+
Default: true
+
+
+
+
+
Type: null or string or list of string
+
Character(s) for tab indentation guide.
+
See :help ibl.config.indent.tab_char.
+
+
Default: null
+
+
+
+
+
Type: string or list of string
+
The character(s) for the scope indentation guide
+
+
Default: config.vim.visuals.indent-blankline.setupOpts.indent.char
+
+
+
+
+
Type: boolean
+
Highlight current scope from treesitter
+
+
Default: config.vim.treesitter.enable
+
+
+
+
+
Type: list of string
+
The list of treesitter languages to disable scope for.
+
* can be used as a wildcard for every language/node type.
+
+
Default: [ ]
+
+
+
+
+
Type: attribute set of list of string
+
Nodes to ignore in scope checking, per language.
+
* can be used as a wildcard for every language.
+
+
Default: {
+ "*" = [
+ "source_file"
+ "program"
+ ];
+ lua = [
+ "chunk"
+ ];
+ python = [
+ "module"
+ ];
+}
+
+
+
+
+
Type: null or string or list of string
+
The highlight group(s) applied to the scope.
+
See :help ibl.config.scope.highlight`.
+
+
Default: null
+
+
+
+
+
Type: attribute set of list of string
+
Additional nodes to be used for scope checking, per language
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Check for injected languages (treesitter)
+
+
Default: config.vim.treesitter.enable
+
+
+
+
+
Type: signed integer
+
Virtual text priority for the scope
+
+
Default: 1024
+
+
+
+
+
Type: boolean
+
Show an underline on the last line of the scope
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Show the scope underline at the exact start of the scope, even if that's to the right of the indentation guide
+
+
Default: false
+
+
+
+
+
Type: boolean
+
Show an underline on the first line of the scope
+
+
Default: false
+
+
+
+
+
Type: signed integer
+
Number of lines above and below of what is currently
+visible in the window
+
+
Default: 500
+
+
+
+
+
Type: signed integer
+
Number of lines above and below of what is currently
+visible in the window
+
+
Default: 30
+
+
+
+
+
Type: null or string or list of string
+
The highlight group(s) applied to whitespace.
+
See :help ibl.config.whitespace.highlight.
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Remove trailing whitespace on blanklines
+
+
Default: true
+
+
+
+
+
Type: boolean
+
Whether to enable cursor word and line highlighting [nvim-cursorline].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of nvim-cursorline
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable cursor line highlighting.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
If true, vim.wo.cursorlineopt will be set to "number"
+when the trigger conditions are met.
+
+
Default: false
+
+
+
+
+
Type: signed integer
+
+
Default: 1000
+
+
+
+
+
Type: boolean
+
Whether to enable cursor word highlighting.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to underline matching cursorword
+
+
Default: true
+
+
+
+
+
Type: signed integer
+
The min_length option defines the minimum number of characters
+a word must have to be highlighted as a "cursor word." Any word
+shorter than this value will be ignored and not highlighted.
+
+
Default: 3
+
+
+
+
+
Type: signed integer
+
+
Default: 1000
+
+
+
+
+
+
+
+
Type: boolean
+
Whether to enable Neovim dev icons [nvim-web-devicons].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of nvim-web-devicons
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable different highlight colors per icon.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: attribute set of (attribute set)
+
Your personal icon overrides.
+
You can specify color or cterm_color instead of specifying
+both of them. DevIcon will be appended to name
+
+
Default: { }
+
Example:
{
+ zsh = {
+ name = "Zsh";
+ icon = "";
+ color = "#428850";
+ cterm_color = "65";
+ };
+}
+
+
+
+
+
+
Type: null or one of "light", "dark"
+
Set the light or dark variant manually, instead of relying on background
+
+
Default: null
+
+
+
+
+
Type: boolean
+
Whether to enable rainbow-delimiters.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of rainbow-delimiters
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable alternative nvim-web-devicons icon colors [tiny-devicons-auto-colors].
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: open submodule of anything
+
Option table to pass into the setup function of tiny-devicons-auto-colors
+
You can pass in any additional options even if they're
+not listed in the docs
+
+
Default: { }
+
+
+
+
+
Type: boolean
+
Whether to enable caching of icon colors. This will greatly improve performance.
+
+
Default: true
+
Example: true
+
+
+
+
+
Type: luaInline
+
+
Default: {
+ _type = "lua-inline";
+ expr = "vim.fn.stdpath(\"cache\") .. \"/tiny-devicons-auto-colors-cache.json\"";
+}
+
+
+
+
+
Type: signed integer
+
+
Default: 1
+
+
+
+
+
Type: floating point number
+
+
Default: 1.25
+
+
+
+
+
Type: floating point number
+
Lightness factor of icons
+
+
Default: 1.76
+
+
+
+
+
Type: boolean
+
Whether to enable NodeJS support in the Neovim wrapper
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Python3 support in the Neovim wrapper
+.
+
+
Default: false
+
Example: true
+
+
+
+
+
Type: boolean
+
Whether to enable Ruby support in the Neovim wrapper.
+.
+
+
Default: true
+
Example: true
+
+
+
+
+
+