mirror of
https://github.com/nix-community/nixvim.git
synced 2025-07-13 18:54:30 +02:00
plugins/null-ls: migrate null-ls
to none-ls
This commit is contained in:
parent
3c4ac5ba0d
commit
56f46166f9
5 changed files with 21 additions and 16 deletions
171
plugins/none-ls/servers.nix
Normal file
171
plugins/none-ls/servers.nix
Normal file
|
@ -0,0 +1,171 @@
|
|||
{
|
||||
pkgs,
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
} @ args: let
|
||||
helpers = import ./helpers.nix args;
|
||||
serverData = {
|
||||
code_actions = {
|
||||
eslint = {
|
||||
package = pkgs.nodePackages.eslint;
|
||||
};
|
||||
eslint_d = {
|
||||
package = pkgs.nodePackages.eslint_d;
|
||||
};
|
||||
gitsigns = {};
|
||||
shellcheck = {
|
||||
package = pkgs.shellcheck;
|
||||
};
|
||||
statix = {
|
||||
package = pkgs.statix;
|
||||
};
|
||||
};
|
||||
completion = {};
|
||||
diagnostics = {
|
||||
alex = {
|
||||
package = pkgs.nodePackages.alex;
|
||||
};
|
||||
cppcheck = {
|
||||
package = pkgs.cppcheck;
|
||||
};
|
||||
deadnix = {
|
||||
package = pkgs.deadnix;
|
||||
};
|
||||
eslint = {
|
||||
package = pkgs.nodePackages.eslint;
|
||||
};
|
||||
eslint_d = {
|
||||
package = pkgs.nodePackages.eslint_d;
|
||||
};
|
||||
flake8 = {
|
||||
package = pkgs.python3Packages.flake8;
|
||||
};
|
||||
gitlint = {
|
||||
package = pkgs.gitlint;
|
||||
};
|
||||
hadolint = {
|
||||
package = pkgs.hadolint;
|
||||
};
|
||||
luacheck = {
|
||||
package = pkgs.luaPackages.luacheck;
|
||||
};
|
||||
mypy = {
|
||||
package = pkgs.mypy;
|
||||
};
|
||||
protolint = {
|
||||
package = pkgs.protolint;
|
||||
};
|
||||
pylint = {
|
||||
package = pkgs.pylint;
|
||||
};
|
||||
shellcheck = {
|
||||
package = pkgs.shellcheck;
|
||||
};
|
||||
statix = {
|
||||
package = pkgs.statix;
|
||||
};
|
||||
vale = {
|
||||
package = pkgs.vale;
|
||||
};
|
||||
vulture = {
|
||||
package = pkgs.python3Packages.vulture;
|
||||
};
|
||||
};
|
||||
formatting = {
|
||||
alejandra = {
|
||||
package = pkgs.alejandra;
|
||||
};
|
||||
beautysh = {
|
||||
package = pkgs.beautysh;
|
||||
};
|
||||
black = {
|
||||
package = pkgs.python3Packages.black;
|
||||
};
|
||||
cbfmt = {
|
||||
package = pkgs.cbfmt;
|
||||
};
|
||||
eslint = {
|
||||
package = pkgs.nodePackages.eslint;
|
||||
};
|
||||
eslint_d = {
|
||||
package = pkgs.nodePackages.eslint_d;
|
||||
};
|
||||
fnlfmt = {
|
||||
package = pkgs.fnlfmt;
|
||||
};
|
||||
fourmolu = {
|
||||
package = pkgs.haskellPackages.fourmolu;
|
||||
};
|
||||
gofmt = {
|
||||
package = pkgs.go;
|
||||
};
|
||||
isort = {
|
||||
package = pkgs.isort;
|
||||
};
|
||||
jq = {
|
||||
package = pkgs.jq;
|
||||
};
|
||||
markdownlint = {
|
||||
package = pkgs.nodePackages.markdownlint-cli;
|
||||
};
|
||||
nixfmt = {
|
||||
package = pkgs.nixfmt;
|
||||
};
|
||||
nixpkgs_fmt = {
|
||||
package = pkgs.nixpkgs-fmt;
|
||||
};
|
||||
phpcbf = {
|
||||
package = pkgs.phpPackages.phpcbf;
|
||||
};
|
||||
prettier = {
|
||||
package = pkgs.nodePackages.prettier;
|
||||
};
|
||||
prettier_d_slim = {
|
||||
package = pkgs.nodePackages.prettier_d_slim;
|
||||
};
|
||||
protolint = {
|
||||
package = pkgs.protolint;
|
||||
};
|
||||
rustfmt = {
|
||||
package = pkgs.rustfmt;
|
||||
};
|
||||
shfmt = {
|
||||
package = pkgs.shfmt;
|
||||
};
|
||||
sqlfluff = {
|
||||
package = pkgs.sqlfluff;
|
||||
};
|
||||
stylua = {
|
||||
package = pkgs.stylua;
|
||||
};
|
||||
taplo = {
|
||||
package = pkgs.taplo;
|
||||
};
|
||||
};
|
||||
};
|
||||
# Format the servers to be an array of attrs like the following example
|
||||
# [{
|
||||
# name = "prettier";
|
||||
# sourceType = "formatting";
|
||||
# packages = [...];
|
||||
# }]
|
||||
serverDataFormatted =
|
||||
lib.mapAttrsToList
|
||||
(
|
||||
sourceType: lib.mapAttrsToList (name: attrs: attrs // {inherit sourceType name;})
|
||||
)
|
||||
serverData;
|
||||
dataFlattened = lib.flatten serverDataFormatted;
|
||||
in {
|
||||
imports = lib.lists.map helpers.mkServer dataFlattened;
|
||||
|
||||
config = let
|
||||
cfg = config.plugins.none-ls;
|
||||
gitsignsEnabled = cfg.sources.code_actions.gitsigns.enable;
|
||||
in
|
||||
lib.mkIf cfg.enable {
|
||||
plugins.gitsigns.enable = lib.mkIf gitsignsEnabled true;
|
||||
extraPackages = lib.optional gitsignsEnabled pkgs.git;
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue