瀏覽代碼

Fix issue #205, "';' after assignment is highlighted as unknown-token".

pull/232/head
Daniel Shahaf 9 年之前
父節點
當前提交
01d7eeb3c7
共有 2 個檔案被更改,包括 5 行新增3 行删除
  1. +4
    -2
      highlighters/main/main-highlighter.zsh
  2. +1
    -1
      highlighters/main/test-data/assign-semicolon.zsh

+ 4
- 2
highlighters/main/main-highlighter.zsh 查看文件

@ -212,6 +212,9 @@ _zsh_highlight_main_highlighter()
fi
elif [[ $arg[0,1] == $histchars[0,1] || $arg[0,1] == $histchars[2,2] ]]; then
style=$ZSH_HIGHLIGHT_STYLES[history-expansion]
elif [[ -n ${(M)ZSH_HIGHLIGHT_TOKENS_COMMANDSEPARATOR:#"$arg"} ]] &&
[[ $this_word == *':regular:'* ]]; then
style=$ZSH_HIGHLIGHT_STYLES[commandseparator]
elif [[ $arg[1] == '<' || $arg[1] == '>' ]]; then
style=$ZSH_HIGHLIGHT_STYLES[redirection]
(( in_redirection=2 ))
@ -282,8 +285,7 @@ _zsh_highlight_main_highlighter()
next_word=':start:'
elif
[[ -n ${(M)ZSH_HIGHLIGHT_TOKENS_PRECOMMANDS:#"$arg"} && $this_word == *':start:' ]]; then
# TODO should this be '=' or '+=' ? $next_word is probably :regular: and nothing looks for that value.
next_word+=':start:'
next_word=':start:'
fi
[[ -n ${(M)ZSH_HIGHLIGHT_TOKENS_COMMANDSEPARATOR:#"$arg"} ]] && highlight_glob=true
start_pos=$end_pos

+ 1
- 1
highlighters/main/test-data/assign-semicolon.zsh 查看文件

@ -31,6 +31,6 @@ ZSH_HIGHLIGHT_STYLES[commandseparator]=$unused_highlight
BUFFER='A=1; echo hello world'
expected_region_highlight=(
"4 4 $ZSH_HIGHLIGHT_STYLES[commandseparator] 'issue #205'" # ;
"4 4 $ZSH_HIGHLIGHT_STYLES[commandseparator]" # ;
"6 9 $ZSH_HIGHLIGHT_STYLES[command]" # echo
)

Loading…
取消
儲存