'main': Highlight literal semicolons in array assignments as errors.
Fixes the test added in the penultimate (grandparent) commit.
This commit is contained in:
		
							parent
							
								
									a4525a0826
								
							
						
					
					
						commit
						3ca93f864f
					
				|  | @ -737,9 +737,17 @@ _zsh_highlight_main_highlighter_highlight_list() | |||
|      else | ||||
|        style=unknown-token | ||||
|      fi | ||||
|      if [[ $arg == (';'|$'\n') ]] && $in_array_assignment; then | ||||
|      if [[ $arg == $'\n' ]] && $in_array_assignment; then | ||||
|        # literal newline inside an array assignment | ||||
|        next_word=':regular:' | ||||
|      elif [[ $arg == ';' ]] && $in_array_assignment; then | ||||
|        # literal semicolon inside an array assignment | ||||
|        # | ||||
|        # This is parsed the same way as a literal newline.  Nevertheless, | ||||
|        # highlight it as an error since it's probably unintended.  Compare | ||||
|        # issue #691. | ||||
|        next_word=':regular:' | ||||
|        style=unknown-token | ||||
|      else | ||||
|        next_word=':start:' | ||||
|        highlight_glob=true | ||||
|  |  | |||
|  | @ -33,7 +33,7 @@ BUFFER=$'a=( foo ; bar )' | |||
| expected_region_highlight=( | ||||
|   '1 3 assign' # a=( | ||||
|   '5 7 default' # foo | ||||
|   '9 9 unknown-token "fixed in the after-next (grandchild) commit"' # ; | ||||
|   '9 9 unknown-token' # ; (not commandseparator; see highlighter source code) | ||||
|   '11 13 default' # bar | ||||
|   '15 15 assign' # ) | ||||
| ) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue