mirror of
				https://github.com/NotAShelf/nvf.git
				synced 2025-10-31 11:02:37 +00:00 
			
		
		
		
	Merge pull request #121 from Amanse/java-lsp
This commit is contained in:
		
				commit
				
					
						7a81889afe
					
				
			
		
					 4 changed files with 50 additions and 1 deletions
				
			
		|  | @ -64,6 +64,7 @@ inputs: let | ||||||
|           enable = isMaximal; |           enable = isMaximal; | ||||||
|           crates.enable = true; |           crates.enable = true; | ||||||
|         }; |         }; | ||||||
|  |         java.enable = isMaximal; | ||||||
|         ts.enable = isMaximal; |         ts.enable = isMaximal; | ||||||
|         svelte.enable = isMaximal; |         svelte.enable = isMaximal; | ||||||
|         go.enable = isMaximal; |         go.enable = isMaximal; | ||||||
|  |  | ||||||
|  | @ -16,7 +16,9 @@ https://github.com/horriblename[horriblename]: | ||||||
| 
 | 
 | ||||||
| https://github.com/amanse[amanse]: | https://github.com/amanse[amanse]: | ||||||
| 
 | 
 | ||||||
| * Added daily notes options for obsidian plugin.a | * Added daily notes options for obsidian plugin. | ||||||
|  | 
 | ||||||
|  | * Added jdt-language-server for Java. | ||||||
| 
 | 
 | ||||||
| https://github.com/yavko[yavko]: | https://github.com/yavko[yavko]: | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -23,6 +23,7 @@ in { | ||||||
|     ./zig.nix |     ./zig.nix | ||||||
|     ./html.nix |     ./html.nix | ||||||
|     ./svelte.nix |     ./svelte.nix | ||||||
|  |     ./java.nix | ||||||
|   ]; |   ]; | ||||||
| 
 | 
 | ||||||
|   options.vim.languages = { |   options.vim.languages = { | ||||||
|  |  | ||||||
							
								
								
									
										45
									
								
								modules/languages/java.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								modules/languages/java.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,45 @@ | ||||||
|  | { | ||||||
|  |   pkgs, | ||||||
|  |   config, | ||||||
|  |   lib, | ||||||
|  |   ... | ||||||
|  | }: | ||||||
|  | with lib; | ||||||
|  | with builtins; let | ||||||
|  |   cfg = config.vim.languages.java; | ||||||
|  | in { | ||||||
|  |   options.vim.languages.java = { | ||||||
|  |     enable = mkEnableOption "Java language support"; | ||||||
|  | 
 | ||||||
|  |     treesitter = { | ||||||
|  |       enable = mkEnableOption "Enable Java treesitter" // {default = config.vim.languages.enableTreesitter;}; | ||||||
|  |       package = nvim.types.mkGrammarOption pkgs "java"; | ||||||
|  |     }; | ||||||
|  | 
 | ||||||
|  |     lsp = { | ||||||
|  |       enable = mkEnableOption "Java LSP support (java-language-server)" // {default = config.vim.languages.enableLSP;}; | ||||||
|  | 
 | ||||||
|  |       package = mkOption { | ||||||
|  |         description = "java language server"; | ||||||
|  |         type = types.package; | ||||||
|  |         default = pkgs.jdt-language-server; | ||||||
|  |       }; | ||||||
|  |     }; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   config = mkIf cfg.enable (mkMerge [ | ||||||
|  |     (mkIf cfg.lsp.enable { | ||||||
|  |       vim.lsp.lspconfig.enable = true; | ||||||
|  |       vim.lsp.lspconfig.sources.jdtls = '' | ||||||
|  |         lspconfig.jdtls.setup { | ||||||
|  |           cmd = {"${cfg.lsp.package}/bin/jdt-language-server", "-data", vim.fn.stdpath("cache").."/jdtls/workspace"}, | ||||||
|  |         } | ||||||
|  |       ''; | ||||||
|  |     }) | ||||||
|  | 
 | ||||||
|  |     (mkIf cfg.treesitter.enable { | ||||||
|  |       vim.treesitter.enable = true; | ||||||
|  |       vim.treesitter.grammars = [cfg.treesitter.package]; | ||||||
|  |     }) | ||||||
|  |   ]); | ||||||
|  | } | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 GitHub
					GitHub