mirror of
				https://github.com/NotAShelf/nvf.git
				synced 2025-10-31 02:52:37 +00:00 
			
		
		
		
	plugins/new-file-template: init module (#350)
	
		
			
	
		
	
	
		
	
		
			Some checks failed
		
		
	
	
		
			
				
	
				Set up binary cache / cachix (default) (push) Has been cancelled
				
			
		
			
				
	
				Set up binary cache / cachix (maximal) (push) Has been cancelled
				
			
		
			
				
	
				Set up binary cache / cachix (nix) (push) Has been cancelled
				
			
		
			
				
	
				Validate flake & check documentation / Validate Flake Documentation (docs) (push) Has been cancelled
				
			
		
			
				
	
				Validate flake & check documentation / Validate Flake Documentation (docs-html) (push) Has been cancelled
				
			
		
			
				
	
				Validate flake & check documentation / Validate Flake Documentation (docs-json) (push) Has been cancelled
				
			
		
			
				
	
				Validate flake & check documentation / Validate Flake Documentation (docs-manpages) (push) Has been cancelled
				
			
		
			
				
	
				Validate flake & check formatting / Validate Flake (push) Has been cancelled
				
			
		
			
				
	
				Validate flake & check formatting / Formatting via Alejandra (push) Has been cancelled
				
			
		
			
				
	
				Build and deploy documentation / publish (push) Has been cancelled
				
			
		
		
	
	
		
	
		
			Some checks failed
		
		
	
	Set up binary cache / cachix (default) (push) Has been cancelled
				
			Set up binary cache / cachix (maximal) (push) Has been cancelled
				
			Set up binary cache / cachix (nix) (push) Has been cancelled
				
			Validate flake & check documentation / Validate Flake Documentation (docs) (push) Has been cancelled
				
			Validate flake & check documentation / Validate Flake Documentation (docs-html) (push) Has been cancelled
				
			Validate flake & check documentation / Validate Flake Documentation (docs-json) (push) Has been cancelled
				
			Validate flake & check documentation / Validate Flake Documentation (docs-manpages) (push) Has been cancelled
				
			Validate flake & check formatting / Validate Flake (push) Has been cancelled
				
			Validate flake & check formatting / Formatting via Alejandra (push) Has been cancelled
				
			Build and deploy documentation / publish (push) Has been cancelled
				
			* plugins/new-file-template: init module * docs: add release note entry about new-file-template.nvim * docs: update jacekpoz's link * plugins/new-file-template: remove _: in default.nix * plugins/new-file-template: add example for disableSpecific * plugins/new-file-template: add docs on how to add custom templates * plugins/new-file-template: fix disableSpecific example * plugins/new-file-template: improve documentation * plugins/new-file-template: remove redundant example * plugins/new-file-template: more compact docs * plugins/new-file-template: more doc improvements * plugins/new-file-template: fix formatting issue
This commit is contained in:
		
					parent
					
						
							
								773186d93d
							
						
					
				
			
			
				commit
				
					
						fd65c83956
					
				
			
		
					 8 changed files with 97 additions and 4 deletions
				
			
		|  | @ -83,7 +83,7 @@ Release notes for release 0.5 | |||
| 
 | ||||
| - Updated indent-blankine.nvim to v3 - this comes with a few option changes, which will be migrated with `renamedOptionModule` | ||||
| 
 | ||||
| [jacekpoz](https://github.com/jacekpoz): | ||||
| [jacekpoz](https://jacekpoz.pl): | ||||
| 
 | ||||
| - Fixed scrollOffset not being used | ||||
| 
 | ||||
|  |  | |||
|  | @ -62,7 +62,7 @@ vim.api.nvim_set_keymap('n', '<leader>a', ':lua camelToSnake()<CR>', { noremap = | |||
| 
 | ||||
| - Added rose-pine theme. | ||||
| 
 | ||||
| [jacekpoz](https://github.com/jacekpoz): | ||||
| [jacekpoz](https://jacekpoz.pl): | ||||
| 
 | ||||
| - Added `vim.autocomplete.alwaysComplete`. Allows users to have the autocomplete window popup only when manually activated. | ||||
| 
 | ||||
|  |  | |||
|  | @ -62,14 +62,17 @@ configuration formats. | |||
|   recommended to go through rustacean.nvim's README to take a closer look at its | ||||
|   features and usage | ||||
| 
 | ||||
| [jacekpoz](https://github.com/jacekpoz): | ||||
| [jacekpoz](https://jacekpoz.pl): | ||||
| 
 | ||||
| [ocaml-lsp]: https://github.com/ocaml/ocaml-lsp | ||||
| [new-file-template.nvim]: https://github.com/otavioschwanck/new-file-template.nvim | ||||
| 
 | ||||
| - Add [ocaml-lsp] support | ||||
| 
 | ||||
| - Fix "Emac" typo | ||||
| 
 | ||||
| - Add [new-file-template.nvim] to automatically fill new file contents using templates. | ||||
| 
 | ||||
| [diniamo](https://github.com/diniamo): | ||||
| 
 | ||||
| - Move the `theme` dag entry to before `luaScript`. | ||||
|  |  | |||
|  | @ -628,9 +628,15 @@ | |||
|     }; | ||||
| 
 | ||||
|     plugin-nvim-nio = { | ||||
|       # (required nvim-dap-ui) | ||||
|       # (required by nvim-dap-ui) | ||||
|       url = "github:nvim-neotest/nvim-nio"; | ||||
|       flake = false; | ||||
|     }; | ||||
| 
 | ||||
|     plugin-new-file-template-nvim = { | ||||
|       # (required by new-file-template.nvim) | ||||
|       url = "github:otavioschwanck/new-file-template.nvim"; | ||||
|       flake = false; | ||||
|     }; | ||||
|   }; | ||||
| } | ||||
|  |  | |||
|  | @ -4,6 +4,7 @@ | |||
|     ./ccc | ||||
|     ./gestures | ||||
|     ./motion | ||||
|     ./new-file-template | ||||
|     ./telescope | ||||
|     ./icon-picker | ||||
|     ./images | ||||
|  |  | |||
							
								
								
									
										23
									
								
								modules/plugins/utility/new-file-template/config.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								modules/plugins/utility/new-file-template/config.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,23 @@ | |||
| { | ||||
|   config, | ||||
|   lib, | ||||
|   ... | ||||
| }: let | ||||
|   inherit (lib.modules) mkIf; | ||||
|   inherit (lib.nvim.dag) entryAnywhere; | ||||
|   inherit (lib.nvim.lua) toLuaObject; | ||||
| 
 | ||||
|   cfg = config.vim.utility.new-file-template; | ||||
| in { | ||||
|   config = mkIf cfg.enable { | ||||
|     vim = { | ||||
|       startPlugins = [ | ||||
|         "new-file-template-nvim" | ||||
|       ]; | ||||
| 
 | ||||
|       pluginRC.new-file-template = entryAnywhere '' | ||||
|         require('new-file-template').setup(${toLuaObject cfg.setupOpts}) | ||||
|       ''; | ||||
|     }; | ||||
|   }; | ||||
| } | ||||
							
								
								
									
										6
									
								
								modules/plugins/utility/new-file-template/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								modules/plugins/utility/new-file-template/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,6 @@ | |||
| { | ||||
|   imports = [ | ||||
|     ./config.nix | ||||
|     ./new-file-template.nix | ||||
|   ]; | ||||
| } | ||||
|  | @ -0,0 +1,54 @@ | |||
| {lib, ...}: let | ||||
|   inherit (lib.options) mkOption; | ||||
|   inherit (lib.types) attrsOf bool listOf str; | ||||
|   inherit (lib.nvim.types) mkPluginSetupOption; | ||||
| in { | ||||
|   options.vim.utility.new-file-template = { | ||||
|     enable = mkOption { | ||||
|       type = bool; | ||||
|       default = false; | ||||
|       description = '' | ||||
|         new-file-template.nvim: Automatically insert a template on new files in neovim. | ||||
|         ::: {.note} | ||||
|         For custom templates add a directory containing `lua/templates/*.lua` | ||||
|         to `vim.additionalRuntimePaths`. | ||||
|         ::: | ||||
|         [custom-template-docs]: https://github.com/otavioschwanck/new-file-template.nvim?tab=readme-ov-file#creating-new-templates | ||||
|         More documentation on the templates available at [custom-template-docs] | ||||
|       ''; | ||||
|     }; | ||||
| 
 | ||||
|     setupOpts = mkPluginSetupOption "nvim-file-template.nvim" { | ||||
|       disableInsert = mkOption { | ||||
|         type = bool; | ||||
|         default = false; | ||||
|         description = "Enter insert mode after inserting the template"; | ||||
|       }; | ||||
| 
 | ||||
|       disableAutocmd = mkOption { | ||||
|         type = bool; | ||||
|         default = false; | ||||
|         description = "Disable the autocmd that creates the template"; | ||||
|       }; | ||||
| 
 | ||||
|       disableFiletype = mkOption { | ||||
|         type = listOf str; | ||||
|         default = []; | ||||
|         description = "Disable default templates for specific filetypes"; | ||||
|       }; | ||||
| 
 | ||||
|       disableSpecific = mkOption { | ||||
|         type = attrsOf (listOf str); | ||||
|         default = {}; | ||||
|         description = "Disable specific regexp for the default templates."; | ||||
|         example = "{ ruby = [\".*\"]; }"; | ||||
|       }; | ||||
| 
 | ||||
|       suffixAsFiletype = mkOption { | ||||
|         type = bool; | ||||
|         default = false; | ||||
|         description = "Use suffix of filename rather than `vim.bo.filetype` as filetype"; | ||||
|       }; | ||||
|     }; | ||||
|   }; | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 poz
				poz