diff --git a/home/editors/nvim/plugins/lsp/ltex.nix b/home/editors/nvim/plugins/lsp/ltex.nix new file mode 100644 index 0000000..0cd410f --- /dev/null +++ b/home/editors/nvim/plugins/lsp/ltex.nix @@ -0,0 +1,132 @@ +{ + # lsp.servers.ltex_plus.config.filetypes = [ + filetypes = [ + # Default values (https://github.com/neovim/nvim-lspconfig/blob/master/doc/configs.md#ltex_plus) + "asciidoc" + "bib" + "context" + "gitcommit" + "html" + "markdown" + "org" + "pandoc" + "plaintex" + "quarto" + "mail" + "mdx" + "rmd" + "rnoweb" + "rst" + "tex" + "text" + "typst" + "xhtml" + + # Code languages + "sh" # LTeX: shellscript + "c" + "cs" # LTeX: csharp + "cpp" + "clojure" + "coffee" # LTeX: coffeescript + "dart" + "elixir" + "elm" + "erlang" + "fsharp" + "fortran" # LTeX: fortran-modern + "go" + "groovy" + "haskell" + "java" + "javascript" + "javascriptreact" + "julia" + "kotlin" + "lisp" + "lua" + "matlab" + "perl" + "perl6" + "php" + "ps1" # LTeX: powershell + "puppet" + "python" + "r" + "ruby" + "rust" + "scala" + "sql" + "swift" + "typescript" + "typescriptreact" + "verilog" + "vb" + ]; + + # lsp.servers.ltex_plus.config.settings.ltex.enabled = [ + enabled = [ + # Default markup languages (https://ltex-plus.github.io/ltex-plus/supported-languages.html#markup-languages) + "asciidoc" + "bib" + "context" + "gitcommit" + "html" + "markdown" + "org" + "pandoc" + "plaintex" + "quarto" + "mail" + "mdx" + "rmd" + "rnoweb" + "rst" + "tex" + "latex" + "text" + "typst" + "xhtml" + + # Supported coding languages (https://ltex-plus.github.io/ltex-plus/supported-languages.html#programming-languages) + "shellscript" + "c" + "csharp" + "cpp" + "clojure" + "coffeescript" + "dart" + "elixier" + "elm" + "erlang" + "fsharp" + "fortran-modern" + "go" + "groovy" + "haskell" + "java" + "javascript" + "javascriptreact" + "julia" + "kotlin" + "lisp" + "lua" + "matlab" + "perl" + "perl6" + "php" + "powershell" + "puppet" + "python" + "r" + "ruby" + "rust" + "scala" + "sql" + "swift" + "typescript" + "typescriptreact" + "verilog" + "vb" + ]; +} diff --git a/home/editors/nvim/plugins/lsp/servers.nix b/home/editors/nvim/plugins/lsp/servers.nix index 5f914d7..467ccd7 100644 --- a/home/editors/nvim/plugins/lsp/servers.nix +++ b/home/editors/nvim/plugins/lsp/servers.nix @@ -60,13 +60,19 @@ ltex_plus = { enable = true; - config.settings.ltex = { - languageToolHttpServerUri = "https://languagetool.demenik.dev"; - language = "en-US"; - additionalRules.motherTongue = "de-DE"; - dictionary.en-US = [ - "ags" - ]; + config = let + inherit (import ./ltex.nix) filetypes enabled; + in { + inherit filetypes; + settings.ltex = { + inherit enabled; + languageToolHttpServerUri = "https://languagetool.demenik.dev"; + language = "en-US"; + additionalRules.motherTongue = "de-DE"; + dictionary.en-US = [ + "ags" + ]; + }; }; };