mirror of
				https://github.com/NotAShelf/nvf.git
				synced 2025-10-31 11:02:37 +00:00 
			
		
		
		
	treewide: make the entire generated config lua based (#333)
* modules: switch to gerg's neovim-wrapper * modules: use initViml instead of writing the file * treewide: make the entire generated config lua based * docs: remove mentions of configRC * plugins/treesitter: remove vim.cmd hack * treewide: move resolveDag to lib * modules/wrapper(rc): fix typo * treewide: migrate to pluginRC for correct DAG order The "new" DAG order is as follows: - (luaConfigPre) - globalsScript - basic - theme - pluginConfigs - extraPluginConfigs - mappings - (luaConfigPost) * plugins/theme: fix theme DAG place * plugins/theme: fix fixed theme DAG place * modules/wrapper(rc): add removed option module for configRC * docs: add dag-entries chapter, add release note entry * fix: formatting CI * languages/nix: add missing `local` * docs: fix page link * docs: add mention of breaking changes at the start of the release notes * plugins/neo-tree: convert to pluginRC * modules/wrapper(rc): add back entryAnywhere * modules/wrapper(rc): expose pluginRC * apply raf patch --------- Co-authored-by: NotAShelf <raf@notashelf.dev>
This commit is contained in:
		
					parent
					
						
							
								cbff0e4715
							
						
					
				
			
			
				commit
				
					
						f9789432f9
					
				
			
		
					 84 changed files with 389 additions and 404 deletions
				
			
		|  | @ -1,16 +1,38 @@ | |||
| # Configuring {#sec-configuring-plugins} | ||||
| 
 | ||||
| Just making the plugin to your Neovim configuration available might not always | ||||
| be enough. In that case, you can write custom vimscript or lua config, using | ||||
| either `config.vim.configRC` or `config.vim.luaConfigRC` respectively. Both of | ||||
| these options are attribute sets, and you need to give the configuration you're | ||||
| adding some name, like this: | ||||
| be enough. In that case, you can write custom lua config using either | ||||
| `config.vim.extraPlugins` (which has the `setup` field) or | ||||
| `config.vim.luaConfigRC`. The first option uses an attribute set, which maps DAG | ||||
| section names to a custom type, which has the fields `package`, `after`, | ||||
| `setup`. They allow you to set the package of the plugin, the sections its setup | ||||
| code should be after (note that the `extraPlugins` option has its own DAG | ||||
| scope), and the its setup code respectively. For example: | ||||
| 
 | ||||
| ```nix | ||||
| config.vim.extraPlugins = with pkgs.vimPlugins; { | ||||
|   aerial = { | ||||
|     package = aerial-nvim; | ||||
|     setup = "require('aerial').setup {}"; | ||||
|   }; | ||||
| 
 | ||||
|   harpoon = { | ||||
|     package = harpoon; | ||||
|     setup = "require('harpoon').setup {}"; | ||||
|     after = ["aerial"]; # place harpoon configuration after aerial | ||||
|   }; | ||||
| } | ||||
| ``` | ||||
| 
 | ||||
| The second option also uses an attribute set, but this one is resolved as a DAG | ||||
| directly. The attribute names denote the section names, and the values lua code. | ||||
| For example: | ||||
| 
 | ||||
| ```nix | ||||
| { | ||||
|   # this will create an "aquarium" section in your init.vim with the contents of your custom config | ||||
|   # this will create an "aquarium" section in your init.lua with the contents of your custom config | ||||
|   # which will be *appended* to the rest of your configuration, inside your init.vim | ||||
|   config.vim.configRC.aquarium = "colorscheme aquiarum"; | ||||
|   config.vim.luaConfigRC.aquarium = "vim.cmd('colorscheme aquiarum')"; | ||||
| } | ||||
| ``` | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 diniamo
				diniamo