Skip to content

Commit

Permalink
efmls-configs: Use upstream tool definitions (#692)
Browse files Browse the repository at this point in the history
  • Loading branch information
traxys authored Nov 6, 2023
1 parent 9cf2c34 commit 6b93c8f
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 143 deletions.
4 changes: 1 addition & 3 deletions helpers/default.nix
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
pkgs: rec {
efmls-configs-tools = pkgs.callPackage ./efmls-configs {};
pkgs: {
autogenerated-configs = pkgs.callPackage ({stdenv}:
stdenv.mkDerivation {
pname = "autogenerated-configs";
Expand All @@ -10,7 +9,6 @@ pkgs: rec {

installPhase = ''
mkdir -p $out
cp ${efmls-configs-tools}/share/* $out
'';
}) {};
}
37 changes: 0 additions & 37 deletions helpers/efmls-configs/default.nix

This file was deleted.

91 changes: 0 additions & 91 deletions helpers/efmls-configs/extract.py

This file was deleted.

24 changes: 12 additions & 12 deletions plugins/lsp/language-servers/efmls-configs.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,9 @@
...
}:
with lib; let
tools = trivial.importJSON ./efmls-configs-tools.json;
inherit (tools) linters formatters;
tools = trivial.importJSON "${pkgs.vimPlugins.efmls-configs-nvim.src}/doc/supported-list.json";

searchLanguages = tools: (lists.unique (builtins.concatLists (builtins.attrValues tools)));
languages =
lists.filter
(v: v != "misc") (lists.unique ((searchLanguages linters) ++ (searchLanguages formatters)));
languages = builtins.attrNames tools;
in {
options.plugins.efmls-configs = {
enable = mkEnableOption "efmls-configs, premade configurations for efm-langserver";
Expand All @@ -33,11 +29,15 @@ in {
}
*/
setup = let
languageTools = lang: tools:
builtins.attrNames (attrsets.filterAttrs (_: lists.any (e: e == lang)) tools);
languageTools = lang: kind:
builtins.map (v: v.name) (
if builtins.hasAttr kind tools.${lang}
then tools.${lang}.${kind}
else []
);

miscLinters = languageTools "misc" linters;
miscFormatters = languageTools "misc" formatters;
miscLinters = languageTools "misc" "linters";
miscFormatters = languageTools "misc" "formatters";

mkChooseOption = lang: kind: possible: let
toolType = with types; either (enum possible) helpers.rawType;
Expand All @@ -58,8 +58,8 @@ in {
in {
name = lang;
value = {
linter = mkChooseOption lang "linter" ((langTools linters) ++ miscLinters);
formatter = mkChooseOption lang "formatter" ((langTools formatters) ++ miscFormatters);
linter = mkChooseOption lang "linter" ((langTools "linters") ++ miscLinters);
formatter = mkChooseOption lang "formatter" ((langTools "formatters") ++ miscFormatters);
};
})
languages))
Expand Down

0 comments on commit 6b93c8f

Please sign in to comment.