diff --git a/highlighters/main/main-highlighter.zsh b/highlighters/main/main-highlighter.zsh index 06839ce..6bf02f0 100644 --- a/highlighters/main/main-highlighter.zsh +++ b/highlighters/main/main-highlighter.zsh @@ -984,6 +984,11 @@ _zsh_highlight_main_highlighter_highlight_argument() local MATCH; integer MBEGIN MEND case "$arg[i]" in + '%') + if [[ $arg[i+1] == '?' ]]; then + (( i += 2 )) + fi + ;; '-') if (( option_eligible )); then if [[ $arg[i+1] == - ]]; then diff --git a/highlighters/main/test-data/jobsubst-isnt-glob.zsh b/highlighters/main/test-data/jobsubst-isnt-glob.zsh index 870f6a4..3a7e325 100644 --- a/highlighters/main/test-data/jobsubst-isnt-glob.zsh +++ b/highlighters/main/test-data/jobsubst-isnt-glob.zsh @@ -30,9 +30,8 @@ BUFFER=$': %? %?foo' -expected_mismatch="fallout of issue #596" expected_region_highlight=( '1 1 builtin' # : '3 4 default' # %? - '6 10 default "issue 596"' # %?foo + '6 10 default' # %?foo )