diff --git a/highlighters/main/main-highlighter.zsh b/highlighters/main/main-highlighter.zsh index b53dcee..79f1324 100755 --- a/highlighters/main/main-highlighter.zsh +++ b/highlighters/main/main-highlighter.zsh @@ -213,7 +213,8 @@ _zsh_highlight_main_highlighter() substr_color=1 ;; '`'*) style=$ZSH_HIGHLIGHT_STYLES[back-quoted-argument];; - *[*?]*) $highlight_glob && style=$ZSH_HIGHLIGHT_STYLES[globbing] || style=$ZSH_HIGHLIGHT_STYLES[default];; + [*?]*|*[^\\][*?]*) + $highlight_glob && style=$ZSH_HIGHLIGHT_STYLES[globbing] || style=$ZSH_HIGHLIGHT_STYLES[default];; *) if false; then elif [[ $arg[0,1] = $histchars[0,1] ]]; then style=$ZSH_HIGHLIGHT_STYLES[history-expansion] diff --git a/highlighters/main/test-data/glob.zsh b/highlighters/main/test-data/glob.zsh index ddae33d..502283e 100644 --- a/highlighters/main/test-data/glob.zsh +++ b/highlighters/main/test-data/glob.zsh @@ -28,10 +28,12 @@ # vim: ft=zsh sw=2 ts=2 et # ------------------------------------------------------------------------------------------------- -BUFFER=': foo* bar?' +BUFFER=': foo* bar? *baz qux\?' expected_region_highlight=( "1 1 $ZSH_HIGHLIGHT_STYLES[builtin]" # : "3 6 $ZSH_HIGHLIGHT_STYLES[globbing]" # foo* "8 11 $ZSH_HIGHLIGHT_STYLES[globbing]" # bar? + "13 16 $ZSH_HIGHLIGHT_STYLES[globbing]" # *baz + "18 22 $ZSH_HIGHLIGHT_STYLES[default]" # qux\? )