mirror of
				https://github.com/NotAShelf/nvf.git
				synced 2025-10-31 11:02:37 +00:00 
			
		
		
		
	modules: move vim-dirtytalk to plugins/spellcheck
		
	This commit is contained in:
		
					parent
					
						
							
								6011ec2bab
							
						
					
				
			
			
				commit
				
					
						b4384a833f
					
				
			
		
					 7 changed files with 48 additions and 8 deletions
				
			
		|  | @ -29,6 +29,8 @@ inputs: let | |||
|         }; | ||||
|       }; | ||||
| 
 | ||||
|       vim.spellcheck.vim-dirtytalk.enable = true; | ||||
| 
 | ||||
|       vim.lsp = { | ||||
|         formatOnSave = true; | ||||
|         lspkind.enable = false; | ||||
|  |  | |||
|  | @ -33,6 +33,7 @@ | |||
|     "rich-presence" | ||||
|     "session" | ||||
|     "snippets" | ||||
|     "spellcheck" | ||||
|     "statusline" | ||||
|     "tabline" | ||||
|     "terminal" | ||||
|  |  | |||
|  | @ -5,17 +5,15 @@ | |||
| }: let | ||||
|   inherit (lib.modules) mkIf; | ||||
|   inherit (lib.options) mkEnableOption literalExpression mkOption; | ||||
|   inherit (lib.strings) concatStringsSep optionalString; | ||||
|   inherit (lib.strings) concatStringsSep; | ||||
|   inherit (lib.lists) optionals; | ||||
|   inherit (lib.types) listOf str; | ||||
|   inherit (lib.nvim.dag) entryAfter; | ||||
| 
 | ||||
|   cfg = config.vim.spellChecking; | ||||
|   languages = cfg.languages ++ optionals cfg.enableProgrammingWordList ["programming"]; | ||||
| in { | ||||
|   options.vim.spellChecking = { | ||||
|     enable = mkEnableOption "neovim's built-in spellchecking"; | ||||
|     enableProgrammingWordList = mkEnableOption "vim-dirtytalk, a wordlist for programmers, that includes programming words"; | ||||
|     languages = mkOption { | ||||
|       type = listOf str; | ||||
|       default = ["en"]; | ||||
|  | @ -26,12 +24,10 @@ in { | |||
| 
 | ||||
|   config = mkIf cfg.enable { | ||||
|     vim = { | ||||
|       startPlugins = optionals cfg.spellChecking.enableProgrammingWordList ["vim-dirtytalk"]; | ||||
|       configRC.spellchecking = entryAfter ["basic"] '' | ||||
|         ${optionalString cfg.enable '' | ||||
|         " Spellchecking | ||||
|         set spell | ||||
|           set spelllang=${concatStringsSep "," languages} | ||||
|         ''} | ||||
|         set spelllang=${concatStringsSep "," cfg.languages} | ||||
|       ''; | ||||
|     }; | ||||
|   }; | ||||
|  |  | |||
							
								
								
									
										5
									
								
								modules/plugins/spellcheck/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								modules/plugins/spellcheck/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,5 @@ | |||
| { | ||||
|   imports = [ | ||||
|     ./vim-dirtytalk | ||||
|   ]; | ||||
| } | ||||
							
								
								
									
										23
									
								
								modules/plugins/spellcheck/vim-dirtytalk/config.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								modules/plugins/spellcheck/vim-dirtytalk/config.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,23 @@ | |||
| { | ||||
|   config, | ||||
|   lib, | ||||
|   ... | ||||
| }: let | ||||
|   inherit (lib.modules) mkIf; | ||||
|   inherit (lib.nvim.dag) entryAfter; | ||||
|   cfg = config.vim.spellcheck; | ||||
| in { | ||||
|   config = mkIf cfg.vim-dirtytalk.enable { | ||||
|     vim = { | ||||
|       startPlugins = ["vim-dirtytalk"]; | ||||
| 
 | ||||
|       # vim-dirtytalk doesn't have any setup | ||||
|       # but we would like to append programming to spelllang | ||||
|       # as soon as possible while the plugin is enabled | ||||
|       luaConfigRC.vim-dirtytalk = entryAfter ["basic"] '' | ||||
|         -- append programming to spelllang | ||||
|         vim.opt.spelllang:append("programming") | ||||
|       ''; | ||||
|     }; | ||||
|   }; | ||||
| } | ||||
							
								
								
									
										6
									
								
								modules/plugins/spellcheck/vim-dirtytalk/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								modules/plugins/spellcheck/vim-dirtytalk/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,6 @@ | |||
| { | ||||
|   imports = [ | ||||
|     ./config.nix | ||||
|     ./vim-dirtytalk.nix | ||||
|   ]; | ||||
| } | ||||
|  | @ -0,0 +1,7 @@ | |||
| {lib, ...}: let | ||||
|   inherit (lib.options) mkEnableOption; | ||||
| in { | ||||
|   options.vim.spellcheck.vim-dirtytalk = { | ||||
|     enable = mkEnableOption "vim-dirtytalk, a wordlist for programmers, that includes programming words"; | ||||
|   }; | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue