mirror of
				https://github.com/neovim/neovim.git
				synced 2025-11-04 01:34:25 +00:00 
			
		
		
		
	feat(ftplugin): set Lua 'omnifunc' to vim.lua_omnifunc #32491
Problem: - Many other ftplugin have defined 'omnifunc', but the Lua one doesn't define one, even though there is `vim.lua_omnifunc()` - Users may want "stupid" completion to fix Lua config with `nvim --clean` in case they breaks it Solution: Set 'omnifunc' to 'v:lua.vim.lua_omnifunc' in ftplugin/lua.lua
This commit is contained in:
		@@ -1502,6 +1502,11 @@ both major engines implemented element, even if this is not in standards it
 | 
				
			|||||||
will be suggested. All other elements are not placed in suggestion list.
 | 
					will be suggested. All other elements are not placed in suggestion list.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					LUA                                                     *ft-lua-omni*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Lua |ftplugin| sets 'omnifunc' to |vim.lua_omnifunc()|.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
PHP							*ft-php-omni*
 | 
					PHP							*ft-php-omni*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Completion of PHP code requires a tags file for completion of data from
 | 
					Completion of PHP code requires a tags file for completion of data from
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -239,6 +239,9 @@ DEFAULTS
 | 
				
			|||||||
    • |[b|, |]b|, |[B|, |]B| navigate through the |buffer-list|
 | 
					    • |[b|, |]b|, |[B|, |]B| navigate through the |buffer-list|
 | 
				
			||||||
    • |[<Space>|, |]<Space>| add an empty line above and below the cursor
 | 
					    • |[<Space>|, |]<Space>| add an empty line above and below the cursor
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					• Options:
 | 
				
			||||||
 | 
					  • Lua |ftplugin| sets |'omnifunc'| to `"v:lua.vim.lua_omnifunc"`.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
• Snippet:
 | 
					• Snippet:
 | 
				
			||||||
  • `<Tab>` in Insert and Select mode maps to `vim.snippet.jump({ direction = 1 })`
 | 
					  • `<Tab>` in Insert and Select mode maps to `vim.snippet.jump({ direction = 1 })`
 | 
				
			||||||
    when a snippet is active and jumpable forwards.
 | 
					    when a snippet is active and jumpable forwards.
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,7 @@
 | 
				
			|||||||
-- use treesitter over syntax
 | 
					-- use treesitter over syntax
 | 
				
			||||||
vim.treesitter.start()
 | 
					vim.treesitter.start()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
vim.b.undo_ftplugin = (vim.b.undo_ftplugin or '') .. '\n call v:lua.vim.treesitter.stop()'
 | 
					vim.bo.omnifunc = 'v:lua.vim.lua_omnifunc'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					vim.b.undo_ftplugin = (vim.b.undo_ftplugin or '')
 | 
				
			||||||
 | 
					  .. '\n call v:lua.vim.treesitter.stop() \n setl omnifunc<'
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user