'main': Fix issue #302, "Process substitution misparsed as redirection".

This commit is contained in:
Daniel Shahaf 2016-05-09 03:26:06 +00:00
parent bfabffbf97
commit fc9c892a3f
2 changed files with 6 additions and 2 deletions

View file

@ -96,7 +96,11 @@ _zsh_highlight_main__type() {
# Check whether the first argument is a redirection operator token.
# Report result via the exit code.
_zsh_highlight_main__is_redirection() {
[[ $1 == (<0-9>|)(\<|\>)* ]]
# A redirection operator token:
# - starts with an optional single-digit number;
# - then, has a '<' or '>' character;
# - is not a process substitution [<(...) or >(...)].
[[ $1 == (<0-9>|)(\<|\>)* ]] && [[ $1 != (\<|\>)$'\x28'* ]]
}
# Main syntax highlighting function.

View file

@ -32,5 +32,5 @@ BUFFER='ls >(wc) | nl'
expected_region_highlight=(
"1 2 command" # ls
"10 10 commandseparator" # |
"12 13 command 'issue #302'" # nl
"12 13 command" # nl
)