From 0b85f56868ab62c2994af8c0bed68ae491c751ea Mon Sep 17 00:00:00 2001 From: isaacST08 Date: Mon, 10 Feb 2025 17:35:57 -0700 Subject: [PATCH] Created mkEnableTreesitterOption in the extendend library --- lib/types/default.nix | 2 +- lib/types/languages.nix | 11 +++++++++-- modules/plugins/languages/tex/treesitter.nix | 12 +++++++----- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/lib/types/default.nix b/lib/types/default.nix index c1c16715..98fcaec5 100644 --- a/lib/types/default.nix +++ b/lib/types/default.nix @@ -10,6 +10,6 @@ in { inherit (typesDag) dagOf; inherit (typesPlugin) pluginsOpt extraPluginType mkPluginSetupOption luaInline pluginType borderType; - inherit (typesLanguage) diagnostics mkGrammarOption; + inherit (typesLanguage) diagnostics mkGrammarOption mkEnableTreesitterOption; inherit (customTypes) char hexColor mergelessListOf; } diff --git a/lib/types/languages.nix b/lib/types/languages.nix index b1865c41..29639047 100644 --- a/lib/types/languages.nix +++ b/lib/types/languages.nix @@ -1,7 +1,7 @@ {lib}: let inherit (lib.options) mkOption mkPackageOption; inherit (lib.attrsets) attrNames; - inherit (lib.types) listOf either enum submodule package; + inherit (lib.types) listOf either enum submodule package bool; diagnosticSubmodule = _: { options = { @@ -32,6 +32,13 @@ mkPackageOption pkgs ["${grammar} treesitter"] { default = ["vimPlugins" "nvim-treesitter" "builtGrammars" grammar]; }; + + mkEnableTreesitterOption = config: language: + mkOption { + type = bool; + default = config.vim.languages.enableTreesitter; + description = "Whether to enable ${language} treesitter"; + }; in { - inherit diagnostics diagnosticSubmodule mkGrammarOption; + inherit diagnostics diagnosticSubmodule mkGrammarOption mkEnableTreesitterOption; } diff --git a/modules/plugins/languages/tex/treesitter.nix b/modules/plugins/languages/tex/treesitter.nix index 44459afb..98185ba8 100644 --- a/modules/plugins/languages/tex/treesitter.nix +++ b/modules/plugins/languages/tex/treesitter.nix @@ -4,21 +4,23 @@ lib, ... }: let - inherit (lib.options) mkEnableOption; + # inherit (lib.options) mkEnableOption; inherit (lib.modules) mkIf mkMerge; - inherit (lib.nvim.types) mkGrammarOption; + inherit (lib.nvim.types) mkGrammarOption mkEnableTreesitterOption; cfg = config.vim.languages.tex; - mkEnableTreesitterOption = description: mkEnableOption description // {default = config.vim.languages.enableTreesitter;}; + # mkEnableTreesitterOption = description: mkEnableOption description // {default = config.vim.languages.enableTreesitter;}; in { options.vim.languages.tex.treesitter = { latex = { - enable = mkEnableTreesitterOption "Whether to enable Latex treesitter"; + # enable = mkEnableTreesitterOption "Whether to enable Latex treesitter"; + enable = mkEnableTreesitterOption config "latex"; package = mkGrammarOption pkgs "latex"; }; bibtex = { - enable = mkEnableTreesitterOption "Whether to enable Bibtex treesitter"; + # enable = mkEnableTreesitterOption "Whether to enable Bibtex treesitter"; + enable = mkEnableTreesitterOption config "bibtex"; package = mkGrammarOption pkgs "bibtex"; }; };