driver: Don't undefine aliases that begin with a '+', to workaround an upstream bug.
Fixes #392.
This commit is contained in:
		
							parent
							
								
									8d5afe47f7
								
							
						
					
					
						commit
						74949c2d91
					
				|  | @ -28,8 +28,12 @@ | ||||||
| # ------------------------------------------------------------------------------------------------- | # ------------------------------------------------------------------------------------------------- | ||||||
| 
 | 
 | ||||||
| # First of all, ensure predictable parsing. | # First of all, ensure predictable parsing. | ||||||
| zsh_highlight__aliases=`builtin alias -L` | zsh_highlight__aliases=`builtin alias -Lm '[^+]*'` | ||||||
| builtin unalias -m '*' | # In zsh <= 5.2, `alias -L` emits aliases that begin with a plus sign ('alias -- +foo=42') | ||||||
|  | # them without a '--' guard, so they don't round trip. | ||||||
|  | # | ||||||
|  | # Hence, we exclude them from unaliasing: | ||||||
|  | builtin unalias -m '[^+]*' | ||||||
| 
 | 
 | ||||||
| # Set $0 to the expected value, regardless of functionargzero. | # Set $0 to the expected value, regardless of functionargzero. | ||||||
| 0=${(%):-%N} | 0=${(%):-%N} | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue