diff --git a/highlighters/main/main-highlighter.zsh b/highlighters/main/main-highlighter.zsh index addad0d..196a065 100644 --- a/highlighters/main/main-highlighter.zsh +++ b/highlighters/main/main-highlighter.zsh @@ -320,7 +320,8 @@ _zsh_highlight_main_highlighter() else style=$ZSH_HIGHLIGHT_STYLES[unknown-token] fi - elif [[ $arg[1] == '<' || $arg[1] == '>' ]]; then + elif [[ $arg == (<0-9>|)(\<|\>)* ]]; then + # A '<' or '>', possibly followed by a digit style=$ZSH_HIGHLIGHT_STYLES[redirection] (( in_redirection=2 )) elif [[ $arg[1,2] == '((' ]]; then @@ -389,7 +390,7 @@ _zsh_highlight_main_highlighter() else style=$ZSH_HIGHLIGHT_STYLES[unknown-token] fi - elif [[ $arg[1] == '<' || $arg[1] == '>' ]]; then + elif [[ $arg == (<0-9>|)(\<|\>)* ]]; then style=$ZSH_HIGHLIGHT_STYLES[redirection] (( in_redirection=2 )) else diff --git a/highlighters/main/test-data/sudo-redirection3.zsh b/highlighters/main/test-data/sudo-redirection3.zsh index f885d9f..1e9b215 100644 --- a/highlighters/main/test-data/sudo-redirection3.zsh +++ b/highlighters/main/test-data/sudo-redirection3.zsh @@ -32,9 +32,9 @@ BUFFER='sudo 2>./. -u otheruser ls' expected_region_highlight=( "1 4 $ZSH_HIGHLIGHT_STYLES[precommand]" # sudo - "6 7 $ZSH_HIGHLIGHT_STYLES[redirection] 'issue #238'" # 2> + "6 7 $ZSH_HIGHLIGHT_STYLES[redirection]" # 2> "8 10 $ZSH_HIGHLIGHT_STYLES[path]" # ./. # a 3-character path, for alignment with sudo-redirection2.zsh "12 13 $ZSH_HIGHLIGHT_STYLES[single-hyphen-option]" # -u "15 23 $ZSH_HIGHLIGHT_STYLES[default]" # otheruser - "25 26 $ZSH_HIGHLIGHT_STYLES[command] 'issue #238'" # ls + "25 26 $ZSH_HIGHLIGHT_STYLES[command]" # ls )