lsp/presets/jls: init

This commit is contained in:
Snoweuph 2026-06-01 23:20:33 +02:00
commit f8b3f04c86
No known key found for this signature in database
GPG key ID: BEFC41DA223CEC55
4 changed files with 39 additions and 1 deletions

View file

@ -323,6 +323,9 @@
[Snoweuph](https://github.com/snoweuph)
- Added {option}`vim.lsp.presets.jls.enable` and made it available under
`vim.languages.java.lsp.servers`.
- Allow the usage of `pks.tree-sitter-grammars` in
{option}`vim.treesitter.grammars` and language module tree-sitter package
options created via `mkGrammarOption`.

View file

@ -14,7 +14,7 @@
cfg = config.vim.languages.java;
defaultServers = ["jdt-language-server"];
servers = ["jdt-language-server"];
servers = ["jdt-language-server" "jls"];
in {
options.vim.languages.java = {
enable = mkEnableOption "Java language support";

View file

@ -28,6 +28,7 @@
./intelephense.nix
./jdt-language-server.nix
./jinja-lsp.nix
./jls.nix
./jq-lsp.nix
./julia-languageserver.nix
./just-lsp.nix

View file

@ -0,0 +1,34 @@
{
config,
lib,
pkgs,
inputs,
...
}: let
inherit (lib.meta) getExe;
inherit (lib.modules) mkIf;
inherit (lib.nvim.types) mkLspPresetEnableOption;
cfg = config.vim.lsp.presets.jls;
in {
options.vim.lsp.presets.jls = {
enable = mkLspPresetEnableOption "jls" "NeoVim Java" [];
};
config = mkIf cfg.enable {
vim.lsp.servers.jls = {
enable = true;
cmd = [(getExe inputs.self.packages.${pkgs.stdenv.hostPlatform.system}.jls)];
root_markers = [
".git"
".java-version"
"pom.xml"
"build.xml"
"build.gradle"
"build.gradle.kts"
"settings.gradle"
"settings.gradle.kts"
];
};
};
}