mirror of
https://github.com/NotAShelf/nvf.git
synced 2026-03-21 11:53:50 +00:00
Merge branch 'main' into improve-terraformls
This commit is contained in:
commit
625f2c0fd2
71 changed files with 1370 additions and 233 deletions
2
.github/workflows/cachix.yml
vendored
2
.github/workflows/cachix.yml
vendored
|
|
@ -25,7 +25,7 @@ jobs:
|
||||||
name: Checkout
|
name: Checkout
|
||||||
|
|
||||||
- name: Install Nix
|
- name: Install Nix
|
||||||
uses: cachix/install-nix-action@v31.9.1
|
uses: cachix/install-nix-action@v31.10.1
|
||||||
with:
|
with:
|
||||||
nix_path: nixpkgs=channel:nixos-unstable
|
nix_path: nixpkgs=channel:nixos-unstable
|
||||||
extra_nix_config: |
|
extra_nix_config: |
|
||||||
|
|
|
||||||
10
.github/workflows/check.yml
vendored
10
.github/workflows/check.yml
vendored
|
|
@ -18,7 +18,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v6
|
||||||
- uses: cachix/install-nix-action@v31.9.1
|
- uses: cachix/install-nix-action@v31.10.1
|
||||||
with:
|
with:
|
||||||
nix_path: nixpkgs=channel:nixos-unstable
|
nix_path: nixpkgs=channel:nixos-unstable
|
||||||
extra_nix_config: |
|
extra_nix_config: |
|
||||||
|
|
@ -37,7 +37,7 @@ jobs:
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v6
|
||||||
|
|
||||||
- name: Install Nix
|
- name: Install Nix
|
||||||
uses: cachix/install-nix-action@v31.9.1
|
uses: cachix/install-nix-action@v31.10.1
|
||||||
with:
|
with:
|
||||||
nix_path: nixpkgs=channel:nixos-unstable
|
nix_path: nixpkgs=channel:nixos-unstable
|
||||||
extra_nix_config: |
|
extra_nix_config: |
|
||||||
|
|
@ -93,7 +93,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v6
|
||||||
- uses: cachix/install-nix-action@v31.9.1
|
- uses: cachix/install-nix-action@v31.10.1
|
||||||
with:
|
with:
|
||||||
nix_path: nixpkgs=channel:nixos-unstable
|
nix_path: nixpkgs=channel:nixos-unstable
|
||||||
extra_nix_config: |
|
extra_nix_config: |
|
||||||
|
|
@ -131,7 +131,7 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v6
|
||||||
- uses: cachix/install-nix-action@v31.9.1
|
- uses: cachix/install-nix-action@v31.10.1
|
||||||
with:
|
with:
|
||||||
nix_path: nixpkgs=channel:nixos-unstable
|
nix_path: nixpkgs=channel:nixos-unstable
|
||||||
extra_nix_config: |
|
extra_nix_config: |
|
||||||
|
|
@ -169,7 +169,7 @@ jobs:
|
||||||
cat "$HOME/changed_files"
|
cat "$HOME/changed_files"
|
||||||
|
|
||||||
- name: Install Nix
|
- name: Install Nix
|
||||||
uses: cachix/install-nix-action@v31.9.1
|
uses: cachix/install-nix-action@v31.10.1
|
||||||
with:
|
with:
|
||||||
nix_path: nixpkgs=channel:nixos-unstable
|
nix_path: nixpkgs=channel:nixos-unstable
|
||||||
extra_nix_config: |
|
extra_nix_config: |
|
||||||
|
|
|
||||||
2
.github/workflows/docs-preview.yml
vendored
2
.github/workflows/docs-preview.yml
vendored
|
|
@ -25,7 +25,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v6
|
- uses: actions/checkout@v6
|
||||||
- uses: cachix/install-nix-action@v31.9.1
|
- uses: cachix/install-nix-action@v31.10.1
|
||||||
with:
|
with:
|
||||||
nix_path: nixpkgs=channel:nixos-unstable
|
nix_path: nixpkgs=channel:nixos-unstable
|
||||||
extra_nix_config: |
|
extra_nix_config: |
|
||||||
|
|
|
||||||
2
.github/workflows/manual.yml
vendored
2
.github/workflows/manual.yml
vendored
|
|
@ -44,7 +44,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v6
|
- uses: actions/checkout@v6
|
||||||
- uses: cachix/install-nix-action@v31.9.1
|
- uses: cachix/install-nix-action@v31.10.1
|
||||||
with:
|
with:
|
||||||
nix_path: nixpkgs=channel:nixos-unstable
|
nix_path: nixpkgs=channel:nixos-unstable
|
||||||
extra_nix_config: |
|
extra_nix_config: |
|
||||||
|
|
|
||||||
2
.github/workflows/update.yml
vendored
2
.github/workflows/update.yml
vendored
|
|
@ -12,7 +12,7 @@ jobs:
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v6
|
||||||
|
|
||||||
- name: "Install Nix"
|
- name: "Install Nix"
|
||||||
uses: cachix/install-nix-action@v31.9.1
|
uses: cachix/install-nix-action@v31.10.1
|
||||||
|
|
||||||
- name: Set up Git
|
- name: Set up Git
|
||||||
run: |
|
run: |
|
||||||
|
|
|
||||||
|
|
@ -101,6 +101,8 @@ isMaximal: {
|
||||||
tailwind.enable = false;
|
tailwind.enable = false;
|
||||||
svelte.enable = false;
|
svelte.enable = false;
|
||||||
tera.enable = false;
|
tera.enable = false;
|
||||||
|
twig.enable = false;
|
||||||
|
fluent.enable = false;
|
||||||
|
|
||||||
# Nim LSP is broken on Darwin and therefore
|
# Nim LSP is broken on Darwin and therefore
|
||||||
# should be disabled by default. Users may still enable
|
# should be disabled by default. Users may still enable
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@
|
||||||
`vimPlugins.nvim-treesitter`. Namely, it changes from the frozen `master`
|
`vimPlugins.nvim-treesitter`. Namely, it changes from the frozen `master`
|
||||||
branch to the new main branch. This change removes incremental selections, so
|
branch to the new main branch. This change removes incremental selections, so
|
||||||
it is no longer available.
|
it is no longer available.
|
||||||
|
|
||||||
- [obsidian.nvim] now uses a maintained fork which has removed the `dir`
|
- [obsidian.nvim] now uses a maintained fork which has removed the `dir`
|
||||||
setting. Use `workspaces` instead:
|
setting. Use `workspaces` instead:
|
||||||
|
|
||||||
|
|
@ -51,6 +52,8 @@ Some other settings and commands are now deprecated but are still supported.
|
||||||
- Added [taplo](https://taplo.tamasfe.dev/) as the default formatter and lsp for
|
- Added [taplo](https://taplo.tamasfe.dev/) as the default formatter and lsp for
|
||||||
`languages.toml` so we don't default to AI-Slop.
|
`languages.toml` so we don't default to AI-Slop.
|
||||||
|
|
||||||
|
- Added `json5` into `languages.json`. Some options where renamed.
|
||||||
|
|
||||||
## Changelog {#sec-release-0-9-changelog}
|
## Changelog {#sec-release-0-9-changelog}
|
||||||
|
|
||||||
[taylrfnt](https://github.com/taylrfnt)
|
[taylrfnt](https://github.com/taylrfnt)
|
||||||
|
|
@ -79,6 +82,8 @@ Some other settings and commands are now deprecated but are still supported.
|
||||||
[NotAShelf](https://github.com/notashelf):
|
[NotAShelf](https://github.com/notashelf):
|
||||||
|
|
||||||
- Lazyload noice.nvim and nvim-web-devicons on `DeferredUIEnter`
|
- Lazyload noice.nvim and nvim-web-devicons on `DeferredUIEnter`
|
||||||
|
- Allow nulling treesitter packages for various language modules, filter `null`
|
||||||
|
values in `vim.treesitter.grammars`.
|
||||||
|
|
||||||
[jfeo](https://github.com/jfeo):
|
[jfeo](https://github.com/jfeo):
|
||||||
|
|
||||||
|
|
@ -219,6 +224,9 @@ Some other settings and commands are now deprecated but are still supported.
|
||||||
|
|
||||||
- Added [`golangci-lint`](https://golangci-lint.run/) for more diagnostics.
|
- Added [`golangci-lint`](https://golangci-lint.run/) for more diagnostics.
|
||||||
|
|
||||||
|
- Added [`gopher.nvim`](https://github.com/olexsmir/gopher.nvim) for extra
|
||||||
|
actions in `languages.go`.
|
||||||
|
|
||||||
- updated default filetypes for
|
- updated default filetypes for
|
||||||
[harper-ls](https://github.com/Automattic/harper) to match what they are
|
[harper-ls](https://github.com/Automattic/harper) to match what they are
|
||||||
supposed to be.
|
supposed to be.
|
||||||
|
|
@ -228,11 +236,19 @@ Some other settings and commands are now deprecated but are still supported.
|
||||||
- Fix `languages.hcl` init, depending on `comment-nvim` by checking if it is
|
- Fix `languages.hcl` init, depending on `comment-nvim` by checking if it is
|
||||||
enabled. Fixes a crash (#1350).
|
enabled. Fixes a crash (#1350).
|
||||||
|
|
||||||
|
- Add `languages.fluent` using the official plugin. This only provides
|
||||||
|
highlighting.
|
||||||
|
|
||||||
- Added Debugging support to `languages.php`.
|
- Added Debugging support to `languages.php`.
|
||||||
|
|
||||||
- Added Formatting support to `languages.php` via
|
- Added Formatting support to `languages.php` via
|
||||||
[PHP-CS-Fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer).
|
[PHP-CS-Fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer).
|
||||||
|
|
||||||
|
- Added minimal `languages.twig`. Currently using [djlint](https://djlint.com/)
|
||||||
|
for most options, as better alternatives like
|
||||||
|
[twig-cs-fixer](https://github.com/VincentLanglet/Twig-CS-Fixer) aren't
|
||||||
|
packaged for nix.
|
||||||
|
|
||||||
- Didn't Add
|
- Didn't Add
|
||||||
[`syntax-gaslighting`](https://github.com/NotAShelf/syntax-gaslighting.nvim),
|
[`syntax-gaslighting`](https://github.com/NotAShelf/syntax-gaslighting.nvim),
|
||||||
you're crazy.
|
you're crazy.
|
||||||
|
|
@ -282,4 +298,18 @@ https://github.com/gorbit99/codewindow.nvim
|
||||||
- [img-clip.nvim]'s configuration now has it's own DAG entry, separate from
|
- [img-clip.nvim]'s configuration now has it's own DAG entry, separate from
|
||||||
image-nvim.
|
image-nvim.
|
||||||
|
|
||||||
|
[phanirithvij](https://github.com/phanirithvij):
|
||||||
|
|
||||||
|
[elm-language-server]: https://github.com/elm-tooling/elm-language-server
|
||||||
|
|
||||||
|
- Add Elm support with [elm-language-server]
|
||||||
|
|
||||||
|
[alv-around](https://github.com/alv-around):
|
||||||
|
|
||||||
|
- Fix `vim.assistant.codecompanion-nvim` lazy loading with [blink-cmp]
|
||||||
|
|
||||||
|
[foobar14](https://github.com/foobar14):
|
||||||
|
|
||||||
|
- Fix `vim.formatter.conform-nvim.setupOpts.formatters` type for correct merging
|
||||||
|
|
||||||
<!-- vim: set textwidth=80: -->
|
<!-- vim: set textwidth=80: -->
|
||||||
|
|
|
||||||
26
flake/pkgs/by-name/json2go/package.nix
Normal file
26
flake/pkgs/by-name/json2go/package.nix
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
buildGoModule,
|
||||||
|
fetchFromGitHub,
|
||||||
|
}:
|
||||||
|
buildGoModule (finalAttrs: {
|
||||||
|
pname = "json2go";
|
||||||
|
version = "0.1.3";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "olexsmir";
|
||||||
|
repo = "json2go";
|
||||||
|
tag = "v${finalAttrs.version}";
|
||||||
|
hash = "sha256-2QGvPLQ7CADRNURTdnHgTCK2vyRHgtdR6YFPuTL9Ymo=";
|
||||||
|
};
|
||||||
|
|
||||||
|
vendorHash = null;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "convert json to go type annotations";
|
||||||
|
mainProgram = "json2go";
|
||||||
|
homepage = "https://github.com/olexsmir/json2go";
|
||||||
|
license = lib.licenses.unlicense;
|
||||||
|
changelog = "${finalAttrs.meta.homepage}/releases/tag/${finalAttrs.version}";
|
||||||
|
};
|
||||||
|
})
|
||||||
|
|
@ -31,6 +31,7 @@
|
||||||
mkGrammarOption = pkgs: grammar:
|
mkGrammarOption = pkgs: grammar:
|
||||||
mkPackageOption pkgs ["${grammar} treesitter"] {
|
mkPackageOption pkgs ["${grammar} treesitter"] {
|
||||||
default = ["vimPlugins" "nvim-treesitter" "grammarPlugins" grammar];
|
default = ["vimPlugins" "nvim-treesitter" "grammarPlugins" grammar];
|
||||||
|
nullable = true;
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
inherit diagnostics diagnosticSubmodule mkGrammarOption;
|
inherit diagnostics diagnosticSubmodule mkGrammarOption;
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,18 @@ in {
|
||||||
package = "codecompanion-nvim";
|
package = "codecompanion-nvim";
|
||||||
setupModule = "codecompanion";
|
setupModule = "codecompanion";
|
||||||
inherit (cfg) setupOpts;
|
inherit (cfg) setupOpts;
|
||||||
|
|
||||||
|
# Register commands with lz.n so Neovim recognizes them immediately
|
||||||
|
cmd = [
|
||||||
|
"CodeCompanion"
|
||||||
|
"CodeCompanionChat"
|
||||||
|
"CodeCompanionActions"
|
||||||
|
"CodeCompanionCmd"
|
||||||
|
];
|
||||||
|
|
||||||
|
# Ensure the plugin loads when entering Insert/Cmdline mode
|
||||||
|
# so the module is ready when blink.cmp requests it
|
||||||
|
event = ["InsertEnter" "CmdlineEnter"];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -33,10 +45,21 @@ in {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
autocomplete.nvim-cmp = {
|
autocomplete = {
|
||||||
|
nvim-cmp = {
|
||||||
sources = {codecompanion-nvim = "[codecompanion]";};
|
sources = {codecompanion-nvim = "[codecompanion]";};
|
||||||
sourcePlugins = ["codecompanion-nvim"];
|
sourcePlugins = ["codecompanion-nvim"];
|
||||||
};
|
};
|
||||||
|
blink-cmp = {
|
||||||
|
setupOpts.sources = {
|
||||||
|
default = ["codecompanion"];
|
||||||
|
providers.codecompanion = {
|
||||||
|
name = "CodeCompanion";
|
||||||
|
module = "codecompanion.providers.completion.blink";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
{lib, ...}: let
|
{lib, ...}: let
|
||||||
inherit (lib.generators) mkLuaInline;
|
inherit (lib.generators) mkLuaInline;
|
||||||
inherit (lib.options) mkOption mkEnableOption literalMD;
|
inherit (lib.options) mkOption mkEnableOption literalMD;
|
||||||
inherit (lib.types) attrs either nullOr listOf submodule str;
|
inherit (lib.types) attrs attrsOf either nullOr listOf submodule str;
|
||||||
inherit (lib.nvim.lua) toLuaObject;
|
inherit (lib.nvim.lua) toLuaObject;
|
||||||
inherit (lib.nvim.types) luaInline mkPluginSetupOption;
|
inherit (lib.nvim.types) luaInline mkPluginSetupOption;
|
||||||
|
|
||||||
|
|
@ -49,7 +49,7 @@ in {
|
||||||
enable = mkEnableOption "lightweight yet powerful formatter plugin for Neovim [conform-nvim]";
|
enable = mkEnableOption "lightweight yet powerful formatter plugin for Neovim [conform-nvim]";
|
||||||
setupOpts = mkPluginSetupOption "conform.nvim" {
|
setupOpts = mkPluginSetupOption "conform.nvim" {
|
||||||
formatters = mkOption {
|
formatters = mkOption {
|
||||||
type = formattersType;
|
type = attrsOf formattersType;
|
||||||
default = {};
|
default = {};
|
||||||
description = "Custom formatters and overrides for built-in formatters.";
|
description = "Custom formatters and overrides for built-in formatters.";
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
inherit (lib.generators) mkLuaInline;
|
inherit (lib.generators) mkLuaInline;
|
||||||
inherit (lib.meta) getExe getExe';
|
inherit (lib.meta) getExe getExe';
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.types) enum listOf str;
|
inherit (lib.types) enum listOf str;
|
||||||
inherit (lib.nvim.attrsets) mapListToAttrs;
|
inherit (lib.nvim.attrsets) mapListToAttrs;
|
||||||
inherit (lib.nvim.types) mkGrammarOption;
|
inherit (lib.nvim.types) mkGrammarOption;
|
||||||
|
|
@ -57,12 +57,22 @@ in {
|
||||||
enable = mkEnableOption "Arduino support";
|
enable = mkEnableOption "Arduino support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Arduino treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Arduino treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "arduino";
|
package = mkGrammarOption pkgs "arduino";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Arduino LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Arduino LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = listOf (enum (attrNames servers));
|
type = listOf (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
inherit (lib.nvim.types) mkGrammarOption deprecatedSingleOrListOf;
|
inherit (lib.nvim.types) mkGrammarOption deprecatedSingleOrListOf;
|
||||||
|
|
@ -27,12 +27,22 @@ in {
|
||||||
enable = mkEnableOption "Assembly support";
|
enable = mkEnableOption "Assembly support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Assembly treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Assembly treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "asm";
|
package = mkGrammarOption pkgs "asm";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Assembly LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Assembly LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.asm.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.asm.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum coercedTo;
|
inherit (lib.types) enum coercedTo;
|
||||||
|
|
@ -89,13 +89,23 @@ in {
|
||||||
enable = mkEnableOption "Astro language support";
|
enable = mkEnableOption "Astro language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Astro treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Astro treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
|
|
||||||
astroPackage = mkGrammarOption pkgs "astro";
|
astroPackage = mkGrammarOption pkgs "astro";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Astro LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Astro LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.astro.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.astro.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
@ -104,7 +114,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "Astro formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "Astro formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
type = formatType;
|
type = formatType;
|
||||||
|
|
@ -114,7 +129,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkEnableOption "extra Astro diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
enable =
|
||||||
|
mkEnableOption "extra Astro diagnostics"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableExtraDiagnostics;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableExtraDiagnostics";
|
||||||
|
};
|
||||||
|
|
||||||
types = diagnostics {
|
types = diagnostics {
|
||||||
langDesc = "Astro";
|
langDesc = "Astro";
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkOption mkEnableOption;
|
inherit (lib.options) mkOption mkEnableOption literalExpression;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) enum bool;
|
inherit (lib.types) enum bool;
|
||||||
|
|
@ -48,12 +48,22 @@ in {
|
||||||
enable = mkEnableOption "Bash language support";
|
enable = mkEnableOption "Bash language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Bash treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Bash treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "bash";
|
package = mkGrammarOption pkgs "bash";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Bash LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Bash LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.bash.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.bash.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
@ -65,6 +75,7 @@ in {
|
||||||
enable = mkOption {
|
enable = mkOption {
|
||||||
type = bool;
|
type = bool;
|
||||||
default = config.vim.languages.enableFormat;
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
description = "Enable Bash formatting";
|
description = "Enable Bash formatting";
|
||||||
};
|
};
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
|
|
@ -75,7 +86,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkEnableOption "extra Bash diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
enable =
|
||||||
|
mkEnableOption "extra Bash diagnostics"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableExtraDiagnostics;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableExtraDiagnostics";
|
||||||
|
};
|
||||||
types = diagnostics {
|
types = diagnostics {
|
||||||
langDesc = "Bash";
|
langDesc = "Bash";
|
||||||
inherit diagnosticsProviders;
|
inherit diagnosticsProviders;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.types) bool enum package;
|
inherit (lib.types) bool enum package;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
|
|
@ -184,13 +184,23 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "C/C++ treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "C/C++ treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
cPackage = mkGrammarOption pkgs "c";
|
cPackage = mkGrammarOption pkgs "c";
|
||||||
cppPackage = mkGrammarOption pkgs "cpp";
|
cppPackage = mkGrammarOption pkgs "cpp";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "clang LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "clang LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
description = "The clang LSP server to use";
|
description = "The clang LSP server to use";
|
||||||
|
|
@ -204,6 +214,7 @@ in {
|
||||||
description = "Enable clang Debug Adapter";
|
description = "Enable clang Debug Adapter";
|
||||||
type = bool;
|
type = bool;
|
||||||
default = config.vim.languages.enableDAP;
|
default = config.vim.languages.enableDAP;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableDAP";
|
||||||
};
|
};
|
||||||
debugger = mkOption {
|
debugger = mkOption {
|
||||||
description = "clang debugger to use";
|
description = "clang debugger to use";
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum listOf;
|
inherit (lib.types) enum listOf;
|
||||||
|
|
@ -28,12 +28,22 @@ in {
|
||||||
enable = mkEnableOption "Clojure language support";
|
enable = mkEnableOption "Clojure language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Clojure treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Clojure treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "clojure";
|
package = mkGrammarOption pkgs "clojure";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Clojure LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Clojure LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = listOf (enum (attrNames servers));
|
type = listOf (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum listOf package;
|
inherit (lib.types) enum listOf package;
|
||||||
|
|
@ -18,7 +18,7 @@
|
||||||
servers = {
|
servers = {
|
||||||
neocmakelsp = {
|
neocmakelsp = {
|
||||||
enable = true;
|
enable = true;
|
||||||
cmd = [(getExe pkgs.neocmakelsp) "--stdio"];
|
cmd = [(getExe pkgs.neocmakelsp) "stdio"];
|
||||||
filetypes = ["cmake"];
|
filetypes = ["cmake"];
|
||||||
root_markers = [".gersemirc" ".git" "build" "cmake"];
|
root_markers = [".gersemirc" ".git" "build" "cmake"];
|
||||||
capabilities = {
|
capabilities = {
|
||||||
|
|
@ -38,12 +38,22 @@ in {
|
||||||
enable = mkEnableOption "CMake language support";
|
enable = mkEnableOption "CMake language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "CMake treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "CMake treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "cmake";
|
package = mkGrammarOption pkgs "cmake";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "CMake LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "CMake LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = listOf (enum (attrNames servers));
|
type = listOf (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
@ -52,7 +62,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "CMake formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "CMake formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
description = "CMake formatter to use";
|
description = "CMake formatter to use";
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames concatMap;
|
inherit (builtins) attrNames concatMap;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
|
|
@ -177,12 +177,22 @@ in {
|
||||||
enable = mkEnableOption "C# language support";
|
enable = mkEnableOption "C# language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "C# treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "C# treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "c_sharp";
|
package = mkGrammarOption pkgs "c_sharp";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "C# LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "C# LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
description = "C# LSP server to use";
|
description = "C# LSP server to use";
|
||||||
type = deprecatedSingleOrListOf "vim.language.csharp.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.csharp.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
|
|
@ -49,13 +49,23 @@ in {
|
||||||
enable = mkEnableOption "CSS language support";
|
enable = mkEnableOption "CSS language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "CSS treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "CSS treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
|
|
||||||
package = mkGrammarOption pkgs "css";
|
package = mkGrammarOption pkgs "css";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "CSS LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "CSS LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.css.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.css.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (lib.options) mkEnableOption;
|
inherit (lib.options) mkEnableOption literalExpression;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.nvim.types) mkGrammarOption;
|
inherit (lib.nvim.types) mkGrammarOption;
|
||||||
|
|
@ -21,13 +21,23 @@ in {
|
||||||
enable = mkEnableOption "CUE language support";
|
enable = mkEnableOption "CUE language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "CUE treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "CUE treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
|
|
||||||
package = mkGrammarOption pkgs "cue";
|
package = mkGrammarOption pkgs "cue";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "CUE LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "CUE LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.trivial) boolToString;
|
inherit (lib.trivial) boolToString;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.types) enum package nullOr str bool;
|
inherit (lib.types) enum package nullOr str bool;
|
||||||
inherit (lib.strings) optionalString;
|
inherit (lib.strings) optionalString;
|
||||||
inherit (lib.nvim.types) mkGrammarOption deprecatedSingleOrListOf;
|
inherit (lib.nvim.types) mkGrammarOption deprecatedSingleOrListOf;
|
||||||
|
|
@ -45,12 +45,22 @@ in {
|
||||||
enable = mkEnableOption "Dart language support";
|
enable = mkEnableOption "Dart language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Dart treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Dart treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "dart";
|
package = mkGrammarOption pkgs "dart";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Dart LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Dart LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.dart.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.dart.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
@ -63,6 +73,7 @@ in {
|
||||||
description = "Enable Dart DAP support via flutter-tools";
|
description = "Enable Dart DAP support via flutter-tools";
|
||||||
type = bool;
|
type = bool;
|
||||||
default = config.vim.languages.enableDAP;
|
default = config.vim.languages.enableDAP;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableDAP";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -70,6 +81,7 @@ in {
|
||||||
enable = mkOption {
|
enable = mkOption {
|
||||||
type = bool;
|
type = bool;
|
||||||
default = config.vim.lsp.enable;
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
description = "Enable flutter-tools for flutter support";
|
description = "Enable flutter-tools for flutter support";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@ in {
|
||||||
./cmake.nix
|
./cmake.nix
|
||||||
./css.nix
|
./css.nix
|
||||||
./elixir.nix
|
./elixir.nix
|
||||||
|
./elm.nix
|
||||||
./fsharp.nix
|
./fsharp.nix
|
||||||
./gleam.nix
|
./gleam.nix
|
||||||
./glsl.nix
|
./glsl.nix
|
||||||
|
|
@ -23,6 +24,7 @@ in {
|
||||||
./kotlin.nix
|
./kotlin.nix
|
||||||
./html.nix
|
./html.nix
|
||||||
./tera.nix
|
./tera.nix
|
||||||
|
./twig.nix
|
||||||
./haskell.nix
|
./haskell.nix
|
||||||
./java.nix
|
./java.nix
|
||||||
./jinja.nix
|
./jinja.nix
|
||||||
|
|
@ -57,6 +59,7 @@ in {
|
||||||
./just.nix
|
./just.nix
|
||||||
./make.nix
|
./make.nix
|
||||||
./xml.nix
|
./xml.nix
|
||||||
|
./fluent.nix
|
||||||
|
|
||||||
# This is now a hard deprecation.
|
# This is now a hard deprecation.
|
||||||
(mkRenamedOptionModule ["vim" "languages" "enableLSP"] ["vim" "lsp" "enable"])
|
(mkRenamedOptionModule ["vim" "languages" "enableLSP"] ["vim" "lsp" "enable"])
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
|
|
@ -51,14 +51,24 @@ in {
|
||||||
enable = mkEnableOption "Elixir language support";
|
enable = mkEnableOption "Elixir language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Elixir treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Elixir treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "elixir";
|
package = mkGrammarOption pkgs "elixir";
|
||||||
heexPackage = mkGrammarOption pkgs "heex";
|
heexPackage = mkGrammarOption pkgs "heex";
|
||||||
eexPackage = mkGrammarOption pkgs "eex";
|
eexPackage = mkGrammarOption pkgs "eex";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Elixir LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Elixir LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.elixir.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.elixir.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
|
||||||
76
modules/plugins/languages/elm.nix
Normal file
76
modules/plugins/languages/elm.nix
Normal file
|
|
@ -0,0 +1,76 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (builtins) attrNames;
|
||||||
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
|
inherit (lib.types) enum;
|
||||||
|
inherit (lib.nvim.types) mkGrammarOption deprecatedSingleOrListOf;
|
||||||
|
inherit (lib.meta) getExe;
|
||||||
|
inherit (lib.nvim.attrsets) mapListToAttrs;
|
||||||
|
|
||||||
|
cfg = config.vim.languages.elm;
|
||||||
|
|
||||||
|
defaultServers = ["elm-language-server"];
|
||||||
|
servers = {
|
||||||
|
elm-language-server = {
|
||||||
|
enable = true;
|
||||||
|
cmd = [(getExe pkgs.elmPackages.elm-language-server)];
|
||||||
|
filetypes = ["elm"];
|
||||||
|
root_markers = ["elm.json"];
|
||||||
|
workspace_required = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
options.vim.languages.elm = {
|
||||||
|
enable = mkEnableOption "Elm language support";
|
||||||
|
|
||||||
|
treesitter = {
|
||||||
|
enable =
|
||||||
|
mkEnableOption "Elm treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
|
package = mkGrammarOption pkgs "elm";
|
||||||
|
};
|
||||||
|
|
||||||
|
lsp = {
|
||||||
|
enable =
|
||||||
|
mkEnableOption "Elm LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
|
servers = mkOption {
|
||||||
|
type = deprecatedSingleOrListOf "vim.language.elm.lsp.servers" (enum (attrNames servers));
|
||||||
|
default = defaultServers;
|
||||||
|
description = "Elm LSP servers to use";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable (mkMerge [
|
||||||
|
(mkIf cfg.treesitter.enable {
|
||||||
|
vim.treesitter = {
|
||||||
|
enable = true;
|
||||||
|
grammars = [cfg.treesitter.package];
|
||||||
|
};
|
||||||
|
})
|
||||||
|
|
||||||
|
(mkIf cfg.lsp.enable {
|
||||||
|
vim = {
|
||||||
|
lsp.servers =
|
||||||
|
mapListToAttrs (n: {
|
||||||
|
name = n;
|
||||||
|
value = servers.${n};
|
||||||
|
})
|
||||||
|
cfg.lsp.servers;
|
||||||
|
};
|
||||||
|
})
|
||||||
|
]);
|
||||||
|
}
|
||||||
34
modules/plugins/languages/fluent.nix
Normal file
34
modules/plugins/languages/fluent.nix
Normal file
|
|
@ -0,0 +1,34 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (lib.options) mkEnableOption;
|
||||||
|
inherit (lib.modules) mkIf;
|
||||||
|
|
||||||
|
cfg = config.vim.languages.fluent;
|
||||||
|
in {
|
||||||
|
options.vim.languages.fluent = {
|
||||||
|
enable = mkEnableOption "Fluent language support";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
vim = {
|
||||||
|
lazy.plugins.fluent-nvim = {
|
||||||
|
package = "fluent-nvim";
|
||||||
|
ft = ["fluent"];
|
||||||
|
};
|
||||||
|
autocmds = [
|
||||||
|
{
|
||||||
|
event = [
|
||||||
|
"BufRead"
|
||||||
|
"BufNewFile"
|
||||||
|
];
|
||||||
|
pattern = ["*.ftl"];
|
||||||
|
desc = "Set fluent filetype";
|
||||||
|
command = "set filetype=fluent";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
|
|
@ -65,12 +65,22 @@ in {
|
||||||
enable = mkEnableOption "F# language support";
|
enable = mkEnableOption "F# language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "F# treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "F# treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "fsharp";
|
package = mkGrammarOption pkgs "fsharp";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "F# LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "F# LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.fsharp.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.fsharp.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServer;
|
default = defaultServer;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
|
|
@ -28,12 +28,22 @@ in {
|
||||||
enable = mkEnableOption "Gleam language support";
|
enable = mkEnableOption "Gleam language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Gleam treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Gleam treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "gleam";
|
package = mkGrammarOption pkgs "gleam";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Gleam LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Gleam LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.gleam.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.gleam.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.nvim.types) mkGrammarOption;
|
inherit (lib.nvim.types) mkGrammarOption;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.types) enum listOf;
|
inherit (lib.types) enum listOf;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.nvim.attrsets) mapListToAttrs;
|
inherit (lib.nvim.attrsets) mapListToAttrs;
|
||||||
|
|
@ -28,12 +28,22 @@ in {
|
||||||
enable = mkEnableOption "GLSL language support";
|
enable = mkEnableOption "GLSL language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "GLSL treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "GLSL treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "glsl";
|
package = mkGrammarOption pkgs "glsl";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "GLSL LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "GLSL LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = listOf (enum (attrNames servers));
|
type = listOf (enum (attrNames servers));
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,17 @@
|
||||||
{
|
{
|
||||||
|
inputs,
|
||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption literalMD;
|
inherit (lib.options) mkEnableOption mkOption literalMD literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.generators) mkLuaInline;
|
inherit (lib.generators) mkLuaInline;
|
||||||
inherit (lib.types) bool enum package;
|
inherit (lib.types) bool enum package str;
|
||||||
inherit (lib.nvim.types) mkGrammarOption diagnostics deprecatedSingleOrListOf;
|
inherit (lib.nvim.types) mkGrammarOption diagnostics deprecatedSingleOrListOf mkPluginSetupOption;
|
||||||
inherit (lib.nvim.dag) entryAfter;
|
inherit (lib.nvim.dag) entryAfter;
|
||||||
inherit (lib.nvim.attrsets) mapListToAttrs;
|
inherit (lib.nvim.attrsets) mapListToAttrs;
|
||||||
|
|
||||||
|
|
@ -64,9 +65,11 @@
|
||||||
gofmt = {
|
gofmt = {
|
||||||
command = "${pkgs.go}/bin/gofmt";
|
command = "${pkgs.go}/bin/gofmt";
|
||||||
};
|
};
|
||||||
|
|
||||||
gofumpt = {
|
gofumpt = {
|
||||||
command = getExe pkgs.gofumpt;
|
command = getExe pkgs.gofumpt;
|
||||||
};
|
};
|
||||||
|
|
||||||
golines = {
|
golines = {
|
||||||
command = "${pkgs.golines}/bin/golines";
|
command = "${pkgs.golines}/bin/golines";
|
||||||
};
|
};
|
||||||
|
|
@ -168,7 +171,12 @@ in {
|
||||||
enable = mkEnableOption "Go language support";
|
enable = mkEnableOption "Go language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Go treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Go treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
|
|
||||||
goPackage = mkGrammarOption pkgs "go";
|
goPackage = mkGrammarOption pkgs "go";
|
||||||
gomodPackage = mkGrammarOption pkgs "gomod";
|
gomodPackage = mkGrammarOption pkgs "gomod";
|
||||||
|
|
@ -178,7 +186,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Go LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Go LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.go.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.go.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
@ -198,51 +211,111 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
description = "Go formatter to use";
|
|
||||||
type = deprecatedSingleOrListOf "vim.language.go.format.type" (enum (attrNames formats));
|
type = deprecatedSingleOrListOf "vim.language.go.format.type" (enum (attrNames formats));
|
||||||
default = defaultFormat;
|
default = defaultFormat;
|
||||||
|
description = "Go formatter to use";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
dap = {
|
dap = {
|
||||||
enable = mkOption {
|
enable =
|
||||||
description = "Enable Go Debug Adapter via nvim-dap-go plugin";
|
mkEnableOption "Go Debug Adapter (DAP) via `nvim-dap-go"
|
||||||
type = bool;
|
// {
|
||||||
default = config.vim.languages.enableDAP;
|
default = config.vim.languages.enableDAP;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableDAP";
|
||||||
};
|
};
|
||||||
|
|
||||||
debugger = mkOption {
|
debugger = mkOption {
|
||||||
description = "Go debugger to use";
|
|
||||||
type = enum (attrNames debuggers);
|
type = enum (attrNames debuggers);
|
||||||
default = defaultDebugger;
|
default = defaultDebugger;
|
||||||
|
description = "Go debugger to use";
|
||||||
};
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "Go debugger package.";
|
|
||||||
type = package;
|
type = package;
|
||||||
default = debuggers.${cfg.dap.debugger}.package;
|
default = debuggers.${cfg.dap.debugger}.package;
|
||||||
|
description = "Go debugger package.";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkEnableOption "extra Go diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
enable =
|
||||||
|
mkEnableOption "extra Go diagnostics"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableExtraDiagnostics;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableExtraDiagnostic";
|
||||||
|
};
|
||||||
|
|
||||||
types = diagnostics {
|
types = diagnostics {
|
||||||
langDesc = "Go";
|
langDesc = "Go";
|
||||||
inherit diagnosticsProviders;
|
inherit diagnosticsProviders;
|
||||||
inherit defaultDiagnosticsProvider;
|
inherit defaultDiagnosticsProvider;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
extensions = {
|
||||||
|
gopher-nvim = {
|
||||||
|
enable = mkEnableOption "Minimalistic plugin for Go development";
|
||||||
|
setupOpts = mkPluginSetupOption "gopher-nvim" {
|
||||||
|
commands = {
|
||||||
|
go = mkOption {
|
||||||
|
type = str;
|
||||||
|
default = "go";
|
||||||
|
description = "Go binary to use";
|
||||||
|
};
|
||||||
|
|
||||||
|
gomodifytags = mkOption {
|
||||||
|
type = str;
|
||||||
|
default = getExe pkgs.gomodifytags;
|
||||||
|
defaultText = literalExpression "getExe pkgs.gomodifytags";
|
||||||
|
description = "gomodifytags binary to use";
|
||||||
|
};
|
||||||
|
|
||||||
|
gotests = mkOption {
|
||||||
|
type = str;
|
||||||
|
default = getExe pkgs.gotests;
|
||||||
|
defaultText = literalExpression "getExe pkgs.gotests";
|
||||||
|
description = "gotests binary to use";
|
||||||
|
};
|
||||||
|
|
||||||
|
impl = mkOption {
|
||||||
|
type = str;
|
||||||
|
default = getExe pkgs.impl;
|
||||||
|
defaultText = literalExpression "getExe pkgs.impl";
|
||||||
|
description = "impl binary to use";
|
||||||
|
};
|
||||||
|
|
||||||
|
iferr = mkOption {
|
||||||
|
type = str;
|
||||||
|
default = getExe pkgs.iferr;
|
||||||
|
defaultText = literalExpression "getExe pkgs.iferr";
|
||||||
|
description = "iferr binary to use";
|
||||||
|
};
|
||||||
|
|
||||||
|
json2go = mkOption {
|
||||||
|
type = str;
|
||||||
|
default = getExe inputs.self.packages.${pkgs.stdenv.hostPlatform.system}.json2go;
|
||||||
|
defaultText = literalExpression "getExe inputs.self.packages.$${pkgs.stdenv.hostPlatform.system}.json2go";
|
||||||
|
description = "json2go binary to use";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable (mkMerge [
|
config = mkIf cfg.enable (mkMerge [
|
||||||
(mkIf cfg.treesitter.enable {
|
(mkIf cfg.treesitter.enable {
|
||||||
vim.treesitter.enable = true;
|
vim.treesitter = {
|
||||||
vim.treesitter.grammars = [
|
enable = true;
|
||||||
|
grammars = [
|
||||||
cfg.treesitter.goPackage
|
cfg.treesitter.goPackage
|
||||||
cfg.treesitter.gomodPackage
|
cfg.treesitter.gomodPackage
|
||||||
cfg.treesitter.gosumPackage
|
cfg.treesitter.gosumPackage
|
||||||
cfg.treesitter.goworkPackage
|
cfg.treesitter.goworkPackage
|
||||||
cfg.treesitter.gotmplPackage
|
cfg.treesitter.gotmplPackage
|
||||||
];
|
];
|
||||||
|
};
|
||||||
})
|
})
|
||||||
|
|
||||||
(mkIf cfg.lsp.enable {
|
(mkIf cfg.lsp.enable {
|
||||||
|
|
@ -292,5 +365,14 @@ in {
|
||||||
cfg.extraDiagnostics.types);
|
cfg.extraDiagnostics.types);
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
|
||||||
|
(mkIf cfg.extensions.gopher-nvim.enable {
|
||||||
|
vim.lazy.plugins.gopher-nvim = {
|
||||||
|
package = "gopher-nvim";
|
||||||
|
setupModule = "gopher";
|
||||||
|
inherit (cfg.extensions.gopher-nvim) setupOpts;
|
||||||
|
ft = ["go"];
|
||||||
|
};
|
||||||
|
})
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) isList attrNames;
|
inherit (builtins) isList attrNames;
|
||||||
inherit (lib.types) either package enum listOf str;
|
inherit (lib.types) either package enum listOf str;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.strings) optionalString;
|
inherit (lib.strings) optionalString;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.nvim.types) mkGrammarOption;
|
inherit (lib.nvim.types) mkGrammarOption;
|
||||||
|
|
@ -57,7 +57,7 @@
|
||||||
settings = {
|
settings = {
|
||||||
haskell = {
|
haskell = {
|
||||||
formattingProvider = "ormolu";
|
formattingProvider = "ormolu";
|
||||||
cabalFormattingProvider = "cabalfmt";
|
cabalFormattingProvider = "cabal-fmt";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -67,12 +67,22 @@ in {
|
||||||
enable = mkEnableOption "Haskell support";
|
enable = mkEnableOption "Haskell support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Treesitter support for Haskell" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Treesitter support for Haskell"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "haskell";
|
package = mkGrammarOption pkgs "haskell";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Haskell LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Haskell LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = listOf (enum (attrNames servers));
|
type = listOf (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
@ -81,7 +91,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
dap = {
|
dap = {
|
||||||
enable = mkEnableOption "DAP support for Haskell" // {default = config.vim.languages.enableDAP;};
|
enable =
|
||||||
|
mkEnableOption "DAP support for Haskell"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableDAP;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableDAP";
|
||||||
|
};
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
default = haskellPackages.haskell-debug-adapter;
|
default = haskellPackages.haskell-debug-adapter;
|
||||||
type = either package (listOf str);
|
type = either package (listOf str);
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) enum listOf;
|
inherit (lib.types) enum listOf;
|
||||||
|
|
@ -47,12 +47,22 @@ in {
|
||||||
enable = mkEnableOption "HCL support";
|
enable = mkEnableOption "HCL support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "HCL treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "HCL treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "hcl";
|
package = mkGrammarOption pkgs "hcl";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "HCL LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "HCL LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = listOf (enum (attrNames servers));
|
type = listOf (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
@ -61,7 +71,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "Enable HCL formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "HCL formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.hcl.format.type" (enum (attrNames formats));
|
type = deprecatedSingleOrListOf "vim.language.hcl.format.type" (enum (attrNames formats));
|
||||||
default = defaultFormat;
|
default = defaultFormat;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames head;
|
inherit (builtins) attrNames head;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) literalExpression mkEnableOption mkOption;
|
||||||
inherit (lib.modules) mkDefault mkIf mkMerge;
|
inherit (lib.modules) mkDefault mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
|
|
@ -44,12 +44,22 @@ in {
|
||||||
enable = mkEnableOption "Helm language support";
|
enable = mkEnableOption "Helm language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Helm treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Helm treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "helm";
|
package = mkGrammarOption pkgs "helm";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Helm LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Helm LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.helm.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.helm.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) literalExpression mkEnableOption mkOption;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) bool enum;
|
inherit (lib.types) bool enum;
|
||||||
inherit (lib.lists) optional;
|
inherit (lib.lists) optional;
|
||||||
|
|
@ -48,7 +48,12 @@ in {
|
||||||
options.vim.languages.html = {
|
options.vim.languages.html = {
|
||||||
enable = mkEnableOption "HTML language support";
|
enable = mkEnableOption "HTML language support";
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "HTML treesitter support" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "HTML treesitter support"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "html";
|
package = mkGrammarOption pkgs "html";
|
||||||
autotagHtml = mkOption {
|
autotagHtml = mkOption {
|
||||||
type = bool;
|
type = bool;
|
||||||
|
|
@ -58,7 +63,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "HTML LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "HTML LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.html.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.html.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
@ -67,7 +77,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "HTML formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "HTML formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.html.format.type" (enum (attrNames formats));
|
type = deprecatedSingleOrListOf "vim.language.html.format.type" (enum (attrNames formats));
|
||||||
|
|
@ -77,7 +92,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkEnableOption "extra HTML diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
enable =
|
||||||
|
mkEnableOption "extra HTML diagnostics"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableExtraDiagnostics;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableExtraDiagnostics";
|
||||||
|
};
|
||||||
|
|
||||||
types = diagnostics {
|
types = diagnostics {
|
||||||
langDesc = "HTML";
|
langDesc = "HTML";
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) literalExpression mkEnableOption mkOption;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
|
|
@ -65,12 +65,22 @@ in {
|
||||||
enable = mkEnableOption "Java language support";
|
enable = mkEnableOption "Java language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Java treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Java treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "java";
|
package = mkGrammarOption pkgs "java";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Java LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Java LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = listOf (enum (attrNames servers));
|
type = listOf (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) literalExpression mkEnableOption mkOption;
|
||||||
inherit (lib.types) enum listOf;
|
inherit (lib.types) enum listOf;
|
||||||
inherit (lib.nvim.types) mkGrammarOption;
|
inherit (lib.nvim.types) mkGrammarOption;
|
||||||
inherit (lib.nvim.attrsets) mapListToAttrs;
|
inherit (lib.nvim.attrsets) mapListToAttrs;
|
||||||
|
|
@ -29,13 +29,23 @@ in {
|
||||||
enable = mkEnableOption "Jinja template language support";
|
enable = mkEnableOption "Jinja template language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Jinja treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Jinja treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "jinja";
|
package = mkGrammarOption pkgs "jinja";
|
||||||
inlinePackage = mkGrammarOption pkgs "jinja_inline";
|
inlinePackage = mkGrammarOption pkgs "jinja_inline";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Jinja LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Jinja LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
description = "Jinja LSP server to use";
|
description = "Jinja LSP server to use";
|
||||||
type = listOf (enum (attrNames servers));
|
type = listOf (enum (attrNames servers));
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkOption mkEnableOption;
|
inherit (lib.options) mkOption mkEnableOption literalExpression;
|
||||||
inherit (lib.meta) getExe' getExe;
|
inherit (lib.meta) getExe' getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
|
|
@ -18,7 +18,7 @@
|
||||||
servers = {
|
servers = {
|
||||||
jsonls = {
|
jsonls = {
|
||||||
cmd = [(getExe' pkgs.vscode-langservers-extracted "vscode-json-language-server") "--stdio"];
|
cmd = [(getExe' pkgs.vscode-langservers-extracted "vscode-json-language-server") "--stdio"];
|
||||||
filetypes = ["json" "jsonc"];
|
filetypes = ["json" "jsonc" "json5"];
|
||||||
init_options = {provideFormatter = true;};
|
init_options = {provideFormatter = true;};
|
||||||
root_markers = [".git"];
|
root_markers = [".git"];
|
||||||
};
|
};
|
||||||
|
|
@ -37,13 +37,24 @@ in {
|
||||||
enable = mkEnableOption "JSON language support";
|
enable = mkEnableOption "JSON language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "JSON treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "JSON treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
|
|
||||||
package = mkGrammarOption pkgs "json";
|
jsonPackage = mkGrammarOption pkgs "json";
|
||||||
|
json5Package = mkGrammarOption pkgs "json5";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "JSON LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "JSON LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.json.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.json.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
@ -53,7 +64,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "JSON formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "JSON formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
description = "JSON formatter to use";
|
description = "JSON formatter to use";
|
||||||
|
|
@ -66,7 +82,10 @@ in {
|
||||||
config = mkIf cfg.enable (mkMerge [
|
config = mkIf cfg.enable (mkMerge [
|
||||||
(mkIf cfg.treesitter.enable {
|
(mkIf cfg.treesitter.enable {
|
||||||
vim.treesitter.enable = true;
|
vim.treesitter.enable = true;
|
||||||
vim.treesitter.grammars = [cfg.treesitter.package];
|
vim.treesitter.grammars = [
|
||||||
|
cfg.treesitter.jsonPackage
|
||||||
|
cfg.treesitter.json5Package
|
||||||
|
];
|
||||||
})
|
})
|
||||||
|
|
||||||
(mkIf cfg.lsp.enable {
|
(mkIf cfg.lsp.enable {
|
||||||
|
|
@ -83,6 +102,7 @@ in {
|
||||||
enable = true;
|
enable = true;
|
||||||
setupOpts = {
|
setupOpts = {
|
||||||
formatters_by_ft.json = cfg.format.type;
|
formatters_by_ft.json = cfg.format.type;
|
||||||
|
formatters_by_ft.json5 = cfg.format.type;
|
||||||
formatters =
|
formatters =
|
||||||
mapListToAttrs (name: {
|
mapListToAttrs (name: {
|
||||||
inherit name;
|
inherit name;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) literalExpression mkEnableOption mkOption;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
|
|
@ -90,12 +90,22 @@ in {
|
||||||
enable = mkEnableOption "Julia language support";
|
enable = mkEnableOption "Julia language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Julia treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Julia treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "julia";
|
package = mkGrammarOption pkgs "julia";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Julia LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Julia LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.julia.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.julia.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) literalExpression mkEnableOption mkOption;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum listOf;
|
inherit (lib.types) enum listOf;
|
||||||
|
|
@ -29,13 +29,21 @@ in {
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable =
|
enable =
|
||||||
mkEnableOption "Just treesitter" // {default = config.vim.languages.enableTreesitter;};
|
mkEnableOption "Just treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "just";
|
package = mkGrammarOption pkgs "just";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable =
|
enable =
|
||||||
mkEnableOption "Just LSP support" // {default = config.vim.lsp.enable;};
|
mkEnableOption "Just LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = listOf (enum (attrNames servers));
|
type = listOf (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) literalExpression mkEnableOption mkOption;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe' getExe;
|
inherit (lib.meta) getExe' getExe;
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
|
|
@ -56,12 +56,22 @@ in {
|
||||||
enable = mkEnableOption "Kotlin/HCL support";
|
enable = mkEnableOption "Kotlin/HCL support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Kotlin treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Kotlin treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "kotlin";
|
package = mkGrammarOption pkgs "kotlin";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Kotlin LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Kotlin LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = listOf (enum (attrNames servers));
|
type = listOf (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
@ -70,7 +80,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkEnableOption "extra Kotlin diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
enable =
|
||||||
|
mkEnableOption "extra Kotlin diagnostics"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableExtraDiagnostics;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableExtraDiagnostics";
|
||||||
|
};
|
||||||
|
|
||||||
types = diagnostics {
|
types = diagnostics {
|
||||||
langDesc = "Kotlin";
|
langDesc = "Kotlin";
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) literalExpression mkEnableOption mkOption;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) bool enum listOf;
|
inherit (lib.types) bool enum listOf;
|
||||||
|
|
@ -60,12 +60,22 @@ in {
|
||||||
options.vim.languages.lua = {
|
options.vim.languages.lua = {
|
||||||
enable = mkEnableOption "Lua language support";
|
enable = mkEnableOption "Lua language support";
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Lua Treesitter support" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Lua Treesitter support"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "lua";
|
package = mkGrammarOption pkgs "lua";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Lua LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Lua LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = listOf (enum (attrNames servers));
|
type = listOf (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
@ -79,6 +89,7 @@ in {
|
||||||
enable = mkOption {
|
enable = mkOption {
|
||||||
type = bool;
|
type = bool;
|
||||||
default = config.vim.languages.enableFormat;
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
description = "Enable Lua formatting";
|
description = "Enable Lua formatting";
|
||||||
};
|
};
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
|
|
@ -89,7 +100,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkEnableOption "extra Lua diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
enable =
|
||||||
|
mkEnableOption "extra Lua diagnostics"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableExtraDiagnostics;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableExtraDiagnostics";
|
||||||
|
};
|
||||||
types = diagnostics {
|
types = diagnostics {
|
||||||
langDesc = "Lua";
|
langDesc = "Lua";
|
||||||
inherit diagnosticsProviders;
|
inherit diagnosticsProviders;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) literalExpression mkEnableOption mkOption;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) listOf enum;
|
inherit (lib.types) listOf enum;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
|
|
@ -34,12 +34,22 @@ in {
|
||||||
enable = mkEnableOption "Make support";
|
enable = mkEnableOption "Make support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Make treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Make treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "make";
|
package = mkGrammarOption pkgs "make";
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "Make formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "Make formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
description = "make formatter to use";
|
description = "make formatter to use";
|
||||||
type = listOf (enum (attrNames formats));
|
type = listOf (enum (attrNames formats));
|
||||||
|
|
@ -48,7 +58,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkEnableOption "extra Make diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
enable =
|
||||||
|
mkEnableOption "extra Make diagnostics"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableExtraDiagnostics;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableExtraDiagnostics";
|
||||||
|
};
|
||||||
types = diagnostics {
|
types = diagnostics {
|
||||||
langDesc = "Make";
|
langDesc = "Make";
|
||||||
inherit diagnosticsProviders;
|
inherit diagnosticsProviders;
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.meta) getExe getExe';
|
inherit (lib.meta) getExe getExe';
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) literalExpression mkEnableOption mkOption;
|
||||||
inherit (lib.types) bool enum listOf str nullOr;
|
inherit (lib.types) bool enum listOf str nullOr;
|
||||||
inherit (lib.nvim.lua) toLuaObject;
|
inherit (lib.nvim.lua) toLuaObject;
|
||||||
inherit (lib.nvim.types) diagnostics mkGrammarOption mkPluginSetupOption deprecatedSingleOrListOf;
|
inherit (lib.nvim.types) diagnostics mkGrammarOption mkPluginSetupOption deprecatedSingleOrListOf;
|
||||||
|
|
@ -82,6 +82,7 @@ in {
|
||||||
enable = mkOption {
|
enable = mkOption {
|
||||||
type = bool;
|
type = bool;
|
||||||
default = config.vim.languages.enableTreesitter;
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
description = "Enable Markdown treesitter";
|
description = "Enable Markdown treesitter";
|
||||||
};
|
};
|
||||||
mdPackage = mkGrammarOption pkgs "markdown";
|
mdPackage = mkGrammarOption pkgs "markdown";
|
||||||
|
|
@ -89,7 +90,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Markdown LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Markdown LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
description = "Markdown LSP server to use";
|
description = "Markdown LSP server to use";
|
||||||
|
|
@ -99,7 +105,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "Markdown formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "Markdown formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.markdown.format.type" (enum (attrNames formats));
|
type = deprecatedSingleOrListOf "vim.language.markdown.format.type" (enum (attrNames formats));
|
||||||
|
|
@ -154,7 +165,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkEnableOption "extra Markdown diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
enable =
|
||||||
|
mkEnableOption "extra Markdown diagnostics"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableExtraDiagnostics;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableExtraDiagnostics";
|
||||||
|
};
|
||||||
types = diagnostics {
|
types = diagnostics {
|
||||||
langDesc = "Markdown";
|
langDesc = "Markdown";
|
||||||
inherit diagnosticsProviders;
|
inherit diagnosticsProviders;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.meta) getExe';
|
inherit (lib.meta) getExe';
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
|
|
@ -48,12 +48,22 @@ in {
|
||||||
enable = mkEnableOption "Nim language support";
|
enable = mkEnableOption "Nim language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Nim treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Nim treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "nim";
|
package = mkGrammarOption pkgs "nim";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Nim LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Nim LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.nim.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.nim.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
@ -63,7 +73,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "Nim formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "Nim formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.nim.format.type" (enum (attrNames formats));
|
type = deprecatedSingleOrListOf "vim.language.nim.format.type" (enum (attrNames formats));
|
||||||
default = defaultFormat;
|
default = defaultFormat;
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib) concatStringsSep;
|
inherit (lib) concatStringsSep;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
inherit (lib.nvim.types) mkGrammarOption diagnostics deprecatedSingleOrListOf;
|
inherit (lib.nvim.types) mkGrammarOption diagnostics deprecatedSingleOrListOf;
|
||||||
|
|
@ -74,12 +74,22 @@ in {
|
||||||
enable = mkEnableOption "Nix language support";
|
enable = mkEnableOption "Nix language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Nix treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Nix treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "nix";
|
package = mkGrammarOption pkgs "nix";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Nix LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Nix LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.nix.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.nix.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
@ -88,7 +98,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "Nix formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "Nix formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
description = "Nix formatter to use";
|
description = "Nix formatter to use";
|
||||||
|
|
@ -98,7 +113,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkEnableOption "extra Nix diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
enable =
|
||||||
|
mkEnableOption "extra Nix diagnostics"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableExtraDiagnostics;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableExtraDiagnostics";
|
||||||
|
};
|
||||||
|
|
||||||
types = diagnostics {
|
types = diagnostics {
|
||||||
langDesc = "Nix";
|
langDesc = "Nix";
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.nvim.types) mkGrammarOption deprecatedSingleOrListOf;
|
inherit (lib.nvim.types) mkGrammarOption deprecatedSingleOrListOf;
|
||||||
|
|
@ -38,12 +38,22 @@ in {
|
||||||
enable = mkEnableOption "Nu language support";
|
enable = mkEnableOption "Nu language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Nu treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Nu treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "nu";
|
package = mkGrammarOption pkgs "nu";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Nu LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Nu LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.nu.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.nu.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
|
|
@ -66,12 +66,22 @@ in {
|
||||||
enable = mkEnableOption "OCaml language support";
|
enable = mkEnableOption "OCaml language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "OCaml treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "OCaml treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "ocaml";
|
package = mkGrammarOption pkgs "ocaml";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "OCaml LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "OCaml LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.ocaml.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.ocaml.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) enum package;
|
inherit (lib.types) enum package;
|
||||||
inherit (lib.nvim.dag) entryAfter;
|
inherit (lib.nvim.dag) entryAfter;
|
||||||
|
|
@ -53,12 +53,22 @@ in {
|
||||||
enable = mkEnableOption "Odin language support";
|
enable = mkEnableOption "Odin language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Odin treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Odin treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "odin";
|
package = mkGrammarOption pkgs "odin";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Odin LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Odin LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.odin.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.odin.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
@ -68,7 +78,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
dap = {
|
dap = {
|
||||||
enable = mkEnableOption "Enable Odin Debug Adapter" // {default = config.vim.languages.enableDAP;};
|
enable =
|
||||||
|
mkEnableOption "Enable Odin Debug Adapter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableDAP;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableDAP";
|
||||||
|
};
|
||||||
|
|
||||||
debugger = mkOption {
|
debugger = mkOption {
|
||||||
description = "Odin debugger to use";
|
description = "Odin debugger to use";
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames toString;
|
inherit (builtins) attrNames toString;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) enum int attrs listOf;
|
inherit (lib.types) enum int attrs listOf;
|
||||||
|
|
@ -85,12 +85,22 @@ in {
|
||||||
enable = mkEnableOption "PHP language support";
|
enable = mkEnableOption "PHP language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "PHP treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "PHP treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "php";
|
package = mkGrammarOption pkgs "php";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "PHP LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "PHP LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.php.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.php.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
@ -100,7 +110,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "PHP formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "PHP formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
description = "PHP formatter to use";
|
description = "PHP formatter to use";
|
||||||
|
|
@ -110,7 +125,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
dap = {
|
dap = {
|
||||||
enable = mkEnableOption "Enable PHP Debug Adapter" // {default = config.vim.languages.enableDAP;};
|
enable =
|
||||||
|
mkEnableOption "Enable PHP Debug Adapter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableDAP;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableDAP";
|
||||||
|
};
|
||||||
xdebug = {
|
xdebug = {
|
||||||
adapter = mkOption {
|
adapter = mkOption {
|
||||||
type = attrs;
|
type = attrs;
|
||||||
|
|
|
||||||
|
|
@ -291,7 +291,12 @@ in {
|
||||||
enable = mkEnableOption "Python language support";
|
enable = mkEnableOption "Python language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Python treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Python treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "Python treesitter grammar to use";
|
description = "Python treesitter grammar to use";
|
||||||
type = package;
|
type = package;
|
||||||
|
|
@ -300,7 +305,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Python LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Python LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.python.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.python.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
@ -310,7 +320,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "Python formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "Python formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.python.format.type" (enum (attrNames formats));
|
type = deprecatedSingleOrListOf "vim.language.python.format.type" (enum (attrNames formats));
|
||||||
|
|
@ -324,6 +339,7 @@ in {
|
||||||
enable = mkOption {
|
enable = mkOption {
|
||||||
type = bool;
|
type = bool;
|
||||||
default = config.vim.languages.enableDAP;
|
default = config.vim.languages.enableDAP;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableDAP";
|
||||||
description = "Enable Python Debug Adapter";
|
description = "Enable Python Debug Adapter";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -345,7 +361,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkEnableOption "extra Python diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
enable =
|
||||||
|
mkEnableOption "extra Python diagnostics"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableExtraDiagnostics;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableExtraDiagnostics";
|
||||||
|
};
|
||||||
types = diagnostics {
|
types = diagnostics {
|
||||||
langDesc = "Python";
|
langDesc = "Python";
|
||||||
inherit diagnosticsProviders;
|
inherit diagnosticsProviders;
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.meta) getExe';
|
inherit (lib.meta) getExe';
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
inherit (lib.nvim.types) mkGrammarOption deprecatedSingleOrListOf;
|
inherit (lib.nvim.types) mkGrammarOption deprecatedSingleOrListOf;
|
||||||
|
|
@ -37,12 +37,22 @@ in {
|
||||||
options.vim.languages.qml = {
|
options.vim.languages.qml = {
|
||||||
enable = mkEnableOption "QML language support";
|
enable = mkEnableOption "QML language support";
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "QML treesitter support" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "QML treesitter support"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "qmljs";
|
package = mkGrammarOption pkgs "qmljs";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "QML LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "QML LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.qml.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.qml.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
@ -51,7 +61,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "QML formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "QML formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.qml.format.type" (enum (attrNames formats));
|
type = deprecatedSingleOrListOf "vim.language.qml.format.type" (enum (attrNames formats));
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
|
|
@ -65,12 +65,22 @@ in {
|
||||||
enable = mkEnableOption "R language support";
|
enable = mkEnableOption "R language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "R treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "R treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "r";
|
package = mkGrammarOption pkgs "r";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "R LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "R LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.r.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.r.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
@ -80,7 +90,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "R formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "R formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.r.format.type" (enum (attrNames formats));
|
type = deprecatedSingleOrListOf "vim.language.r.format.type" (enum (attrNames formats));
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.nvim.types) mkGrammarOption diagnostics deprecatedSingleOrListOf;
|
inherit (lib.nvim.types) mkGrammarOption diagnostics deprecatedSingleOrListOf;
|
||||||
|
|
@ -67,12 +67,22 @@ in {
|
||||||
enable = mkEnableOption "Ruby language support";
|
enable = mkEnableOption "Ruby language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Ruby treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Ruby treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "ruby";
|
package = mkGrammarOption pkgs "ruby";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Ruby LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Ruby LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.ruby.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.ruby.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
}: let
|
}: let
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.options) mkOption mkEnableOption literalMD;
|
inherit (lib.options) mkOption mkEnableOption literalMD literalExpression;
|
||||||
inherit (lib.strings) optionalString;
|
inherit (lib.strings) optionalString;
|
||||||
inherit (lib.lists) isList;
|
inherit (lib.lists) isList;
|
||||||
inherit (lib.attrsets) attrNames;
|
inherit (lib.attrsets) attrNames;
|
||||||
|
|
@ -29,12 +29,22 @@ in {
|
||||||
enable = mkEnableOption "Rust language support";
|
enable = mkEnableOption "Rust language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Rust treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Rust treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "rust";
|
package = mkGrammarOption pkgs "rust";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Rust LSP support (rust-analyzer with extra tools)" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Rust LSP support (rust-analyzer with extra tools)"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "rust-analyzer package, or the command to run as a list of strings";
|
description = "rust-analyzer package, or the command to run as a list of strings";
|
||||||
example = ''[lib.getExe pkgs.jdt-language-server "-data" "~/.cache/jdtls/workspace"]'';
|
example = ''[lib.getExe pkgs.jdt-language-server "-data" "~/.cache/jdtls/workspace"]'';
|
||||||
|
|
@ -80,6 +90,7 @@ in {
|
||||||
description = "Rust Debug Adapter support";
|
description = "Rust Debug Adapter support";
|
||||||
type = bool;
|
type = bool;
|
||||||
default = config.vim.languages.enableDAP;
|
default = config.vim.languages.enableDAP;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableDAP";
|
||||||
};
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
|
|
@ -108,14 +119,39 @@ in {
|
||||||
|
|
||||||
setupOpts = mkPluginSetupOption "crates-nvim" {
|
setupOpts = mkPluginSetupOption "crates-nvim" {
|
||||||
lsp = {
|
lsp = {
|
||||||
enabled = mkEnableOption "crates.nvim's in-process language server" // {default = cfg.extensions.crates-nvim.enable;};
|
enabled =
|
||||||
actions = mkEnableOption "actions for crates-nvim's in-process language server" // {default = cfg.extensions.crates-nvim.enable;};
|
mkEnableOption "crates.nvim's in-process language server"
|
||||||
completion = mkEnableOption "completion for crates-nvim's in-process language server" // {default = cfg.extensions.crates-nvim.enable;};
|
// {
|
||||||
hover = mkEnableOption "hover actions for crates-nvim's in-process language server" // {default = cfg.extensions.crates-nvim.enable;};
|
default = cfg.extensions.crates-nvim.enable;
|
||||||
|
defaultText = literalExpression "config.vim.languages.rust.extensions.crates-nvim.enable";
|
||||||
|
};
|
||||||
|
actions =
|
||||||
|
mkEnableOption "actions for crates-nvim's in-process language server"
|
||||||
|
// {
|
||||||
|
default = cfg.extensions.crates-nvim.enable;
|
||||||
|
defaultText = literalExpression "config.vim.languages.rust.extensions.crates-nvim.enable";
|
||||||
|
};
|
||||||
|
completion =
|
||||||
|
mkEnableOption "completion for crates-nvim's in-process language server"
|
||||||
|
// {
|
||||||
|
default = cfg.extensions.crates-nvim.enable;
|
||||||
|
defaultText = literalExpression "config.vim.languages.rust.extensions.crates-nvim.enable";
|
||||||
|
};
|
||||||
|
hover =
|
||||||
|
mkEnableOption "hover actions for crates-nvim's in-process language server"
|
||||||
|
// {
|
||||||
|
default = cfg.extensions.crates-nvim.enable;
|
||||||
|
defaultText = literalExpression "config.vim.languages.rust.extensions.crates-nvim.enable";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
completion = {
|
completion = {
|
||||||
crates = {
|
crates = {
|
||||||
enabled = mkEnableOption "completion for crates-nvim's in-process language server" // {default = cfg.extensions.crates-nvim.enable;};
|
enabled =
|
||||||
|
mkEnableOption "completion for crates-nvim's in-process language server"
|
||||||
|
// {
|
||||||
|
default = cfg.extensions.crates-nvim.enable;
|
||||||
|
defaultText = literalExpression "config.vim.languages.rust.extensions.crates-nvim.enable";
|
||||||
|
};
|
||||||
max_results = mkOption {
|
max_results = mkOption {
|
||||||
description = "The maximum number of search results to display";
|
description = "The maximum number of search results to display";
|
||||||
type = int;
|
type = int;
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
inherit (lib.nvim.dag) entryAfter;
|
inherit (lib.nvim.dag) entryAfter;
|
||||||
inherit (lib.nvim.lua) toLuaObject;
|
inherit (lib.nvim.lua) toLuaObject;
|
||||||
inherit (lib.nvim.types) mkGrammarOption luaInline;
|
inherit (lib.nvim.types) mkGrammarOption luaInline;
|
||||||
inherit (lib.options) mkOption mkEnableOption mkPackageOption;
|
inherit (lib.options) mkOption mkEnableOption mkPackageOption literalExpression;
|
||||||
inherit (lib.strings) optionalString;
|
inherit (lib.strings) optionalString;
|
||||||
inherit (lib.types) attrsOf anything bool;
|
inherit (lib.types) attrsOf anything bool;
|
||||||
|
|
||||||
|
|
@ -28,12 +28,22 @@ in {
|
||||||
enable = mkEnableOption "Scala language support";
|
enable = mkEnableOption "Scala language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Scala treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Scala treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "scala";
|
package = mkGrammarOption pkgs "scala";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Scala LSP support (metals)" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Scala LSP support (metals)"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
package = mkPackageOption pkgs "metals" {
|
package = mkPackageOption pkgs "metals" {
|
||||||
default = ["metals"];
|
default = ["metals"];
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) enum package str;
|
inherit (lib.types) enum package str;
|
||||||
|
|
@ -74,7 +74,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "SQL treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "SQL treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
type = package;
|
type = package;
|
||||||
|
|
@ -84,7 +89,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "SQL LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "SQL LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.sql.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.sql.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
@ -94,7 +104,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "SQL formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "SQL formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.sql.format.type" (enum (attrNames formats));
|
type = deprecatedSingleOrListOf "vim.language.sql.format.type" (enum (attrNames formats));
|
||||||
|
|
@ -104,7 +119,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkEnableOption "extra SQL diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
enable =
|
||||||
|
mkEnableOption "extra SQL diagnostics"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableExtraDiagnostics;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableExtraDiagnostics";
|
||||||
|
};
|
||||||
|
|
||||||
types = diagnostics {
|
types = diagnostics {
|
||||||
langDesc = "SQL";
|
langDesc = "SQL";
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum package coercedTo;
|
inherit (lib.types) enum package coercedTo;
|
||||||
|
|
@ -104,13 +104,23 @@ in {
|
||||||
enable = mkEnableOption "Svelte language support";
|
enable = mkEnableOption "Svelte language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Svelte treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Svelte treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
|
|
||||||
sveltePackage = mkGrammarOption pkgs "svelte";
|
sveltePackage = mkGrammarOption pkgs "svelte";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Svelte LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Svelte LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.svelte.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.svelte.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
|
|
@ -151,7 +151,12 @@ in {
|
||||||
enable = mkEnableOption "Tailwindcss language support";
|
enable = mkEnableOption "Tailwindcss language support";
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Tailwindcss LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Tailwindcss LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.tailwind.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.tailwind.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (lib.options) mkEnableOption;
|
inherit (lib.options) mkEnableOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.nvim.types) mkGrammarOption;
|
inherit (lib.nvim.types) mkGrammarOption;
|
||||||
|
|
||||||
|
|
@ -14,7 +14,12 @@ in {
|
||||||
enable = mkEnableOption "Tera templating language support";
|
enable = mkEnableOption "Tera templating language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Tera treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Tera treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "tera";
|
package = mkGrammarOption pkgs "tera";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum listOf;
|
inherit (lib.types) enum listOf;
|
||||||
|
|
@ -48,12 +48,23 @@ in {
|
||||||
enable = mkEnableOption "Terraform support";
|
enable = mkEnableOption "Terraform support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Terraform treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Terraform treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "terraform";
|
package = mkGrammarOption pkgs "terraform";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Terraform LSP support (terraform-ls)" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Terraform LSP support (terraform-ls)"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = listOf (enum (attrNames servers));
|
type = listOf (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
inherit (lib.nvim.types) diagnostics mkGrammarOption deprecatedSingleOrListOf;
|
inherit (lib.nvim.types) diagnostics mkGrammarOption deprecatedSingleOrListOf;
|
||||||
inherit (lib.nvim.attrsets) mapListToAttrs;
|
inherit (lib.nvim.attrsets) mapListToAttrs;
|
||||||
|
|
@ -78,6 +78,7 @@ in {
|
||||||
mkEnableOption "TOML treesitter"
|
mkEnableOption "TOML treesitter"
|
||||||
// {
|
// {
|
||||||
default = config.vim.languages.enableTreesitter;
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
};
|
};
|
||||||
package = mkGrammarOption pkgs "toml";
|
package = mkGrammarOption pkgs "toml";
|
||||||
};
|
};
|
||||||
|
|
@ -87,6 +88,7 @@ in {
|
||||||
mkEnableOption "TOML LSP support"
|
mkEnableOption "TOML LSP support"
|
||||||
// {
|
// {
|
||||||
default = config.vim.lsp.enable;
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
};
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
|
|
@ -101,6 +103,7 @@ in {
|
||||||
mkEnableOption "TOML formatting"
|
mkEnableOption "TOML formatting"
|
||||||
// {
|
// {
|
||||||
default = config.vim.languages.enableFormat;
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
};
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
|
|
@ -115,6 +118,7 @@ in {
|
||||||
mkEnableOption "extra TOML diagnostics"
|
mkEnableOption "extra TOML diagnostics"
|
||||||
// {
|
// {
|
||||||
default = config.vim.languages.enableExtraDiagnostics;
|
default = config.vim.languages.enableExtraDiagnostics;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableExtraDiagnostics";
|
||||||
};
|
};
|
||||||
types = diagnostics {
|
types = diagnostics {
|
||||||
langDesc = "TOML";
|
langDesc = "TOML";
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames elem;
|
inherit (builtins) attrNames elem;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum package bool;
|
inherit (lib.types) enum package bool;
|
||||||
|
|
@ -215,14 +215,24 @@ in {
|
||||||
enable = mkEnableOption "Typescript/Javascript language support";
|
enable = mkEnableOption "Typescript/Javascript language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Typescript/Javascript treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Typescript/Javascript treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
tsPackage = mkGrammarOption pkgs "typescript";
|
tsPackage = mkGrammarOption pkgs "typescript";
|
||||||
tsxPackage = mkGrammarOption pkgs "tsx";
|
tsxPackage = mkGrammarOption pkgs "tsx";
|
||||||
jsPackage = mkGrammarOption pkgs "javascript";
|
jsPackage = mkGrammarOption pkgs "javascript";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Typescript/Javascript LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Typescript/Javascript LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.ts.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.ts.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
@ -232,7 +242,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "Typescript/Javascript formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "Typescript/Javascript formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
description = "Typescript/Javascript formatter to use";
|
description = "Typescript/Javascript formatter to use";
|
||||||
|
|
|
||||||
140
modules/plugins/languages/twig.nix
Normal file
140
modules/plugins/languages/twig.nix
Normal file
|
|
@ -0,0 +1,140 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (builtins) attrNames;
|
||||||
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
|
inherit (lib.meta) getExe;
|
||||||
|
inherit (lib.types) listOf enum;
|
||||||
|
inherit (lib.nvim.types) mkGrammarOption diagnostics;
|
||||||
|
inherit (lib.nvim.attrsets) mapListToAttrs;
|
||||||
|
|
||||||
|
cfg = config.vim.languages.twig;
|
||||||
|
|
||||||
|
defaultServers = ["twig-language-server"];
|
||||||
|
servers = {
|
||||||
|
twig-language-server = {
|
||||||
|
enable = true;
|
||||||
|
cmd = [(getExe pkgs.twig-language-server) "--stdio"];
|
||||||
|
filetypes = ["twig"];
|
||||||
|
root_markers = [".git"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
defaultFormat = ["djlint"];
|
||||||
|
formats = {
|
||||||
|
djlint = {
|
||||||
|
command = getExe pkgs.djlint;
|
||||||
|
};
|
||||||
|
# TODO: if twig-cs-fixer gets packaged for nix, add it and default to it.
|
||||||
|
};
|
||||||
|
defaultDiagnosticsProvider = ["djlint"];
|
||||||
|
diagnosticsProviders = {
|
||||||
|
djlint = {
|
||||||
|
config = {
|
||||||
|
cmd = getExe pkgs.djlint;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
# TODO: if curlylint gets packaged for nix, add it.
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
options.vim.languages.twig = {
|
||||||
|
enable = mkEnableOption "Twig templating language support";
|
||||||
|
|
||||||
|
treesitter = {
|
||||||
|
enable =
|
||||||
|
mkEnableOption "Twig treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
|
package = mkGrammarOption pkgs "twig";
|
||||||
|
};
|
||||||
|
|
||||||
|
lsp = {
|
||||||
|
enable =
|
||||||
|
mkEnableOption "Twig LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
servers = mkOption {
|
||||||
|
type = listOf (enum (attrNames servers));
|
||||||
|
default = defaultServers;
|
||||||
|
description = "Twig LSP server to use";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
format = {
|
||||||
|
enable =
|
||||||
|
mkEnableOption "PHP formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
type = mkOption {
|
||||||
|
description = "Twig formatter to use";
|
||||||
|
type = listOf (enum (attrNames formats));
|
||||||
|
default = defaultFormat;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
extraDiagnostics = {
|
||||||
|
enable =
|
||||||
|
mkEnableOption "extra Twig diagnostics"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableExtraDiagnostics;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableExtraDiagnostics";
|
||||||
|
};
|
||||||
|
types = diagnostics {
|
||||||
|
langDesc = "Twig";
|
||||||
|
inherit diagnosticsProviders;
|
||||||
|
inherit defaultDiagnosticsProvider;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable (mkMerge [
|
||||||
|
(mkIf cfg.treesitter.enable {
|
||||||
|
vim.treesitter.enable = true;
|
||||||
|
vim.treesitter.grammars = [cfg.treesitter.package];
|
||||||
|
})
|
||||||
|
|
||||||
|
(mkIf cfg.lsp.enable {
|
||||||
|
vim.lsp.servers =
|
||||||
|
mapListToAttrs (n: {
|
||||||
|
name = n;
|
||||||
|
value = servers.${n};
|
||||||
|
})
|
||||||
|
cfg.lsp.servers;
|
||||||
|
})
|
||||||
|
|
||||||
|
(mkIf cfg.format.enable {
|
||||||
|
vim.formatter.conform-nvim = {
|
||||||
|
enable = true;
|
||||||
|
setupOpts = {
|
||||||
|
formatters_by_ft.twig = cfg.format.type;
|
||||||
|
formatters =
|
||||||
|
mapListToAttrs (name: {
|
||||||
|
inherit name;
|
||||||
|
value = formats.${name};
|
||||||
|
})
|
||||||
|
cfg.format.type;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
})
|
||||||
|
|
||||||
|
(mkIf cfg.extraDiagnostics.enable {
|
||||||
|
vim.diagnostics.nvim-lint = {
|
||||||
|
enable = true;
|
||||||
|
linters_by_ft.twig = cfg.extraDiagnostics.types;
|
||||||
|
linters =
|
||||||
|
mkMerge (map (name: {${name} = diagnosticsProviders.${name}.config;})
|
||||||
|
cfg.extraDiagnostics.types);
|
||||||
|
};
|
||||||
|
})
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (lib.options) mkOption mkEnableOption;
|
inherit (lib.options) mkOption mkEnableOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) nullOr enum attrsOf listOf package str bool int;
|
inherit (lib.types) nullOr enum attrsOf listOf package str bool int;
|
||||||
inherit (lib.attrsets) attrNames;
|
inherit (lib.attrsets) attrNames;
|
||||||
|
|
@ -104,12 +104,22 @@ in {
|
||||||
enable = mkEnableOption "Typst language support";
|
enable = mkEnableOption "Typst language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Typst treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Typst treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "typst";
|
package = mkGrammarOption pkgs "typst";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Typst LSP support (typst-lsp)" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Typst LSP support (typst-lsp)"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.typst.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.typst.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
@ -119,7 +129,12 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkEnableOption "Typst document formatting" // {default = config.vim.languages.enableFormat;};
|
enable =
|
||||||
|
mkEnableOption "Typst document formatting"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableFormat;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableFormat";
|
||||||
|
};
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.typst.format.type" (enum (attrNames formats));
|
type = deprecatedSingleOrListOf "vim.language.typst.format.type" (enum (attrNames formats));
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
|
|
@ -67,12 +67,22 @@ in {
|
||||||
enable = mkEnableOption "Vala language support";
|
enable = mkEnableOption "Vala language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Vala treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Vala treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "vala";
|
package = mkGrammarOption pkgs "vala";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Vala LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Vala LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.vala.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.vala.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.nvim.types) mkGrammarOption deprecatedSingleOrListOf;
|
inherit (lib.nvim.types) mkGrammarOption deprecatedSingleOrListOf;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.nvim.attrsets) mapListToAttrs;
|
inherit (lib.nvim.attrsets) mapListToAttrs;
|
||||||
|
|
@ -29,12 +29,22 @@ in {
|
||||||
enable = mkEnableOption "WGSL language support";
|
enable = mkEnableOption "WGSL language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "WGSL treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "WGSL treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "wgsl";
|
package = mkGrammarOption pkgs "wgsl";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "WGSL LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "WGSL LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.wgsl.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.wgsl.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkOption mkEnableOption;
|
inherit (lib.options) mkOption mkEnableOption literalExpression;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.types) enum listOf;
|
inherit (lib.types) enum listOf;
|
||||||
|
|
@ -30,12 +30,22 @@ in {
|
||||||
enable = mkEnableOption "XML language support";
|
enable = mkEnableOption "XML language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "XML treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "XML treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "xml";
|
package = mkGrammarOption pkgs "xml";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "XML LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "XML LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = listOf (enum (attrNames servers));
|
type = listOf (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.generators) mkLuaInline;
|
inherit (lib.generators) mkLuaInline;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
inherit (lib.meta) getExe;
|
inherit (lib.meta) getExe;
|
||||||
inherit (lib.types) enum;
|
inherit (lib.types) enum;
|
||||||
|
|
@ -51,13 +51,23 @@ in {
|
||||||
enable = mkEnableOption "YAML language support";
|
enable = mkEnableOption "YAML language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "YAML treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "YAML treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
|
|
||||||
package = mkGrammarOption pkgs "yaml";
|
package = mkGrammarOption pkgs "yaml";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Yaml LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Yaml LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.yaml.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.yaml.lsp.servers" (enum (attrNames servers));
|
||||||
default = defaultServers;
|
default = defaultServers;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (builtins) attrNames;
|
inherit (builtins) attrNames;
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
inherit (lib.options) mkEnableOption mkOption literalExpression;
|
||||||
inherit (lib.modules) mkIf mkMerge mkDefault;
|
inherit (lib.modules) mkIf mkMerge mkDefault;
|
||||||
inherit (lib.types) bool package enum;
|
inherit (lib.types) bool package enum;
|
||||||
inherit (lib.nvim.types) mkGrammarOption deprecatedSingleOrListOf;
|
inherit (lib.nvim.types) mkGrammarOption deprecatedSingleOrListOf;
|
||||||
|
|
@ -59,12 +59,22 @@ in {
|
||||||
enable = mkEnableOption "Zig language support";
|
enable = mkEnableOption "Zig language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkEnableOption "Zig treesitter" // {default = config.vim.languages.enableTreesitter;};
|
enable =
|
||||||
|
mkEnableOption "Zig treesitter"
|
||||||
|
// {
|
||||||
|
default = config.vim.languages.enableTreesitter;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableTreesitter";
|
||||||
|
};
|
||||||
package = mkGrammarOption pkgs "zig";
|
package = mkGrammarOption pkgs "zig";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Zig LSP support" // {default = config.vim.lsp.enable;};
|
enable =
|
||||||
|
mkEnableOption "Zig LSP support"
|
||||||
|
// {
|
||||||
|
default = config.vim.lsp.enable;
|
||||||
|
defaultText = literalExpression "config.vim.lsp.enable";
|
||||||
|
};
|
||||||
|
|
||||||
servers = mkOption {
|
servers = mkOption {
|
||||||
type = deprecatedSingleOrListOf "vim.language.zig.lsp.servers" (enum (attrNames servers));
|
type = deprecatedSingleOrListOf "vim.language.zig.lsp.servers" (enum (attrNames servers));
|
||||||
|
|
@ -77,6 +87,7 @@ in {
|
||||||
enable = mkOption {
|
enable = mkOption {
|
||||||
type = bool;
|
type = bool;
|
||||||
default = config.vim.languages.enableDAP;
|
default = config.vim.languages.enableDAP;
|
||||||
|
defaultText = literalExpression "config.vim.languages.enableDAP";
|
||||||
description = "Enable Zig Debug Adapter";
|
description = "Enable Zig Debug Adapter";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,10 @@
|
||||||
);
|
);
|
||||||
|
|
||||||
# Build a given Treesitter grammar.
|
# Build a given Treesitter grammar.
|
||||||
buildTreesitterPlug = grammars: vimPlugins.nvim-treesitter.withPlugins (_: grammars);
|
buildTreesitterPlug = grammars:
|
||||||
|
vimPlugins.nvim-treesitter.withPlugins (
|
||||||
|
_: builtins.filter (g: g != null) grammars
|
||||||
|
);
|
||||||
|
|
||||||
pluginBuilders = {
|
pluginBuilders = {
|
||||||
nvim-treesitter = buildTreesitterPlug config.vim.treesitter.grammars;
|
nvim-treesitter = buildTreesitterPlug config.vim.treesitter.grammars;
|
||||||
|
|
|
||||||
|
|
@ -539,6 +539,19 @@
|
||||||
"url": "https://github.com/folke/flash.nvim/archive/b68bda044d68e4026c4e1ec6df3c5afd7eb8e341.tar.gz",
|
"url": "https://github.com/folke/flash.nvim/archive/b68bda044d68e4026c4e1ec6df3c5afd7eb8e341.tar.gz",
|
||||||
"hash": "sha256-7isgZdploAGK5l8TxVxL277CH6kPbcBnMwfZeqPHjq4="
|
"hash": "sha256-7isgZdploAGK5l8TxVxL277CH6kPbcBnMwfZeqPHjq4="
|
||||||
},
|
},
|
||||||
|
"fluent-nvim": {
|
||||||
|
"type": "Git",
|
||||||
|
"repository": {
|
||||||
|
"type": "GitHub",
|
||||||
|
"owner": "projectfluent",
|
||||||
|
"repo": "fluent.vim"
|
||||||
|
},
|
||||||
|
"branch": "master",
|
||||||
|
"submodules": false,
|
||||||
|
"revision": "94c1ef622187032778f546d2f8ad821661475172",
|
||||||
|
"url": "https://github.com/projectfluent/fluent.vim/archive/94c1ef622187032778f546d2f8ad821661475172.tar.gz",
|
||||||
|
"hash": "sha256-tOYxOUKa6Zn2Yq5peqGDEdCkpl+b+VKkSmZx7+kHZJ0="
|
||||||
|
},
|
||||||
"flutter-tools-nvim": {
|
"flutter-tools-nvim": {
|
||||||
"type": "Git",
|
"type": "Git",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
@ -656,6 +669,22 @@
|
||||||
"url": "https://github.com/ellisonleao/glow.nvim/archive/5d5954b2f22e109d4a6eba8b2618c5b96e4ee7a2.tar.gz",
|
"url": "https://github.com/ellisonleao/glow.nvim/archive/5d5954b2f22e109d4a6eba8b2618c5b96e4ee7a2.tar.gz",
|
||||||
"hash": "sha256-CvBcmVWBgI+m+PS7p7PmsiPtTEfqx2kpIzz4mImONIc="
|
"hash": "sha256-CvBcmVWBgI+m+PS7p7PmsiPtTEfqx2kpIzz4mImONIc="
|
||||||
},
|
},
|
||||||
|
"gopher-nvim": {
|
||||||
|
"type": "GitRelease",
|
||||||
|
"repository": {
|
||||||
|
"type": "GitHub",
|
||||||
|
"owner": "olexsmir",
|
||||||
|
"repo": "gopher.nvim"
|
||||||
|
},
|
||||||
|
"pre_releases": false,
|
||||||
|
"version_upper_bound": null,
|
||||||
|
"release_prefix": null,
|
||||||
|
"submodules": false,
|
||||||
|
"version": "v0.6.0",
|
||||||
|
"revision": "95fdeb571d837af9efae27fea1c0131fa756ab43",
|
||||||
|
"url": "https://api.github.com/repos/olexsmir/gopher.nvim/tarball/refs/tags/v0.6.0",
|
||||||
|
"hash": "sha256-7aDjMFMCiqub/zCDJIWUIX9Zc6+vyPQOczuOFdc/6S0="
|
||||||
|
},
|
||||||
"grug-far-nvim": {
|
"grug-far-nvim": {
|
||||||
"type": "Git",
|
"type": "Git",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
@ -863,15 +892,16 @@
|
||||||
"leap-nvim": {
|
"leap-nvim": {
|
||||||
"type": "Git",
|
"type": "Git",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "GitHub",
|
"type": "Forgejo",
|
||||||
"owner": "ggandor",
|
"server": "https://codeberg.org/",
|
||||||
|
"owner": "andyg",
|
||||||
"repo": "leap.nvim"
|
"repo": "leap.nvim"
|
||||||
},
|
},
|
||||||
"branch": "main",
|
"branch": "main",
|
||||||
"submodules": false,
|
"submodules": false,
|
||||||
"revision": "07304103f6bd923004fdef9262d9a4d7925fb70a",
|
"revision": "774c452da3521d4434f912b6ca6dd97318aca4b0",
|
||||||
"url": "https://github.com/ggandor/leap.nvim/archive/07304103f6bd923004fdef9262d9a4d7925fb70a.tar.gz",
|
"url": "https://codeberg.org/andyg/leap.nvim/archive/774c452da3521d4434f912b6ca6dd97318aca4b0.tar.gz",
|
||||||
"hash": "sha256-AImK8kLWBdA1IFeTt52UF8+j+BBmQmz00VW4EWCVQdg="
|
"hash": "sha256-HkLmYb0+Vu65JalaE2JuMJM74/fWAS3QJRQb4BW5esw="
|
||||||
},
|
},
|
||||||
"leetcode-nvim": {
|
"leetcode-nvim": {
|
||||||
"type": "Git",
|
"type": "Git",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue