mirror of
				https://github.com/NotAShelf/nvf.git
				synced 2025-10-31 02:52:37 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			39 lines
		
	
	
	
		
			1,006 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
	
		
			1,006 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
| {
 | |
|   config,
 | |
|   lib,
 | |
|   ...
 | |
| }: let
 | |
|   inherit (lib.modules) mkIf;
 | |
|   inherit (lib.nvim.dag) entryAnywhere;
 | |
|   inherit (lib.nvim.lua) toLuaObject;
 | |
| 
 | |
|   cfg = config.vim.lsp;
 | |
| in {
 | |
|   config = mkIf (cfg.enable && cfg.lspSignature.enable) {
 | |
|     assertions = [
 | |
|       {
 | |
|         assertion = !config.vim.autocomplete.blink-cmp.enable;
 | |
|         message = ''
 | |
|           lsp-signature does not work with blink.cmp. Please use blink.cmp's builtin signature feature:
 | |
| 
 | |
|           vim.autocomplete.blink-cmp.setupOpts.signature.enabled = true;
 | |
|         '';
 | |
|       }
 | |
|     ];
 | |
|     vim = {
 | |
|       startPlugins = [
 | |
|         "lsp-signature-nvim"
 | |
|       ];
 | |
| 
 | |
|       lsp.lspSignature.setupOpts = {
 | |
|         bind = config.vim.ui.borders.plugins.lsp-signature.enable;
 | |
|         handler_opts.border = config.vim.ui.borders.plugins.lsp-signature.style;
 | |
|       };
 | |
| 
 | |
|       pluginRC.lsp-signature = entryAnywhere ''
 | |
|         -- Enable lsp signature viewer
 | |
|         require("lsp_signature").setup(${toLuaObject cfg.lspSignature.setupOpts})
 | |
|       '';
 | |
|     };
 | |
|   };
 | |
| }
 |