'main': Highlight lone '!' correctly: it's not a history expansion.
While here, also add a test for the '!' reserved word (which is highlighted
since c216242b
).
This commit is contained in:
parent
e635f766be
commit
4c23a2fd1b
@ -342,7 +342,9 @@ _zsh_highlight_main_highlighter()
|
|||||||
# (For array assignments, the command doesn't start until the ")" token.)
|
# (For array assignments, the command doesn't start until the ")" token.)
|
||||||
next_word+=':start:'
|
next_word+=':start:'
|
||||||
fi
|
fi
|
||||||
elif [[ $arg[0,1] == $histchars[0,1] || $arg[0,1] == $histchars[2,2] ]]; then
|
elif [[ $arg[0,1] = $histchars[0,1] ]] && (( $#arg[0,2] == 2 )); then
|
||||||
|
style=$ZSH_HIGHLIGHT_STYLES[history-expansion]
|
||||||
|
elif [[ $arg[0,1] == $histchars[2,2] ]]; then
|
||||||
style=$ZSH_HIGHLIGHT_STYLES[history-expansion]
|
style=$ZSH_HIGHLIGHT_STYLES[history-expansion]
|
||||||
elif [[ -n ${(M)ZSH_HIGHLIGHT_TOKENS_COMMANDSEPARATOR:#"$arg"} ]]; then
|
elif [[ -n ${(M)ZSH_HIGHLIGHT_TOKENS_COMMANDSEPARATOR:#"$arg"} ]]; then
|
||||||
if [[ $this_word == *':regular:'* ]]; then
|
if [[ $this_word == *':regular:'* ]]; then
|
||||||
@ -414,7 +416,7 @@ _zsh_highlight_main_highlighter()
|
|||||||
[*?]*|*[^\\][*?]*)
|
[*?]*|*[^\\][*?]*)
|
||||||
$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
|
*) if false; then
|
||||||
elif [[ $arg[0,1] = $histchars[0,1] ]]; then
|
elif [[ $arg[0,1] = $histchars[0,1] ]] && (( $#arg[0,2] == 2 )); then
|
||||||
style=$ZSH_HIGHLIGHT_STYLES[history-expansion]
|
style=$ZSH_HIGHLIGHT_STYLES[history-expansion]
|
||||||
elif [[ -n ${(M)ZSH_HIGHLIGHT_TOKENS_COMMANDSEPARATOR:#"$arg"} ]]; then
|
elif [[ -n ${(M)ZSH_HIGHLIGHT_TOKENS_COMMANDSEPARATOR:#"$arg"} ]]; then
|
||||||
if [[ $this_word == *':regular:'* ]]; then
|
if [[ $this_word == *':regular:'* ]]; then
|
||||||
|
@ -28,10 +28,12 @@
|
|||||||
# -------------------------------------------------------------------------------------------------
|
# -------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
ZSH_HIGHLIGHT_STYLES[default]=$unused_highlight
|
ZSH_HIGHLIGHT_STYLES[default]=$unused_highlight
|
||||||
BUFFER='!foo bar !baz'
|
BUFFER='!foo bar !baz ! ; !'
|
||||||
|
|
||||||
expected_region_highlight=(
|
expected_region_highlight=(
|
||||||
"1 4 $ZSH_HIGHLIGHT_STYLES[history-expansion]" # !foo
|
"1 4 $ZSH_HIGHLIGHT_STYLES[history-expansion]" # !foo
|
||||||
"6 8 $ZSH_HIGHLIGHT_STYLES[default]" # bar
|
"6 8 $ZSH_HIGHLIGHT_STYLES[default]" # bar
|
||||||
"10 13 $ZSH_HIGHLIGHT_STYLES[history-expansion]" # !baz
|
"10 13 $ZSH_HIGHLIGHT_STYLES[history-expansion]" # !baz
|
||||||
|
"15 15 $ZSH_HIGHLIGHT_STYLES[default]" # ! (before the semicolon)
|
||||||
|
"19 19 $ZSH_HIGHLIGHT_STYLES[reserved-word]" # ! (after the semicolon)
|
||||||
)
|
)
|
||||||
|
Loading…
Reference in New Issue
Block a user