mirror of
				https://github.com/neovim/neovim.git
				synced 2025-10-26 12:27:24 +00:00 
			
		
		
		
	vim-patch:b2a4c110a5d1
runtime(dist): Make dist/vim.vim work properly when lacking vim9script support (vim/vim#13487)
`:return` cannot be used outside of `:function` (or `:def`) in older Vims
lacking Vim9script support or in Neovim, even when evaluation is being skipped
in the dead `:else` branch.
Instead, use the pattern described in `:h vim9-mix`, which uses `:finish` to end
script processing before it reaches the vim9script stuff.
b2a4c110a5
Co-authored-by: Sean Dewar <seandewar@users.noreply.github.com>
			
			
This commit is contained in:
		
							
								
								
									
										12
									
								
								runtime/autoload/dist/vim.vim
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										12
									
								
								runtime/autoload/dist/vim.vim
									
									
									
									
										vendored
									
									
								
							| @@ -15,7 +15,7 @@ if !exists('g:gzip_exec') | |||||||
|   let g:gzip_exec = 1 |   let g:gzip_exec = 1 | ||||||
| endif | endif | ||||||
|  |  | ||||||
| if !exists(":def") | if !has('vim9script') | ||||||
|   function dist#vim#IsSafeExecutable(filetype, executable) |   function dist#vim#IsSafeExecutable(filetype, executable) | ||||||
|     let cwd = getcwd() |     let cwd = getcwd() | ||||||
|     return get(g:, a:filetype .. '_exec', get(g:, 'plugin_exec', 0)) && |     return get(g:, a:filetype .. '_exec', get(g:, 'plugin_exec', 0)) && | ||||||
| @@ -23,8 +23,10 @@ if !exists(":def") | |||||||
|           \ || (split($PATH, has('win32') ? ';' : ':')->index(cwd) != -1 && |           \ || (split($PATH, has('win32') ? ';' : ':')->index(cwd) != -1 && | ||||||
|           \  cwd != '.')) |           \  cwd != '.')) | ||||||
|   endfunction |   endfunction | ||||||
| else |  | ||||||
|     def dist#vim#IsSafeExecutable(filetype: string, executable: string): bool |   finish | ||||||
|       return dist#vim9#IsSafeExecutable(filetype, executable) |  | ||||||
|     enddef |  | ||||||
| endif | endif | ||||||
|  |  | ||||||
|  | def dist#vim#IsSafeExecutable(filetype: string, executable: string): bool | ||||||
|  |   return dist#vim9#IsSafeExecutable(filetype, executable) | ||||||
|  | enddef | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Christian Clason
					Christian Clason