process-substitution2.zsh (2661B)
1 #!/usr/bin/env zsh 2 # ------------------------------------------------------------------------------------------------- 3 # Copyright (c) 2018 zsh-syntax-highlighting contributors 4 # All rights reserved. 5 # 6 # Redistribution and use in source and binary forms, with or without modification, are permitted 7 # provided that the following conditions are met: 8 # 9 # * Redistributions of source code must retain the above copyright notice, this list of conditions 10 # and the following disclaimer. 11 # * Redistributions in binary form must reproduce the above copyright notice, this list of 12 # conditions and the following disclaimer in the documentation and/or other materials provided 13 # with the distribution. 14 # * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors 15 # may be used to endorse or promote products derived from this software without specific prior 16 # written permission. 17 # 18 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR 19 # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND 20 # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR 21 # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER 24 # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 25 # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 # ------------------------------------------------------------------------------------------------- 27 # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- 28 # vim: ft=zsh sw=2 ts=2 et 29 # ------------------------------------------------------------------------------------------------- 30 31 BUFFER='echo =(:) a=(:) =(echo foo' 32 33 expected_region_highlight=( 34 '1 4 builtin' # echo 35 '6 9 default' # =(:) 36 '6 9 process-substitution' # =(:) 37 '6 7 process-substitution-delimiter' # =( 38 '8 8 builtin' # : 39 '9 9 process-substitution-delimiter' # ) 40 '11 15 default' # a=(:) 41 '17 26 default' # =(echo foo 42 '17 26 process-substitution' # =(echo foo 43 '17 18 process-substitution-delimiter' # =( 44 '19 22 builtin' # echo 45 '24 26 default' # foo 46 ) 47 48 if [[ ${(z):-'$('} == '$( ' ]]; then # ignore zsh 5.0.8 bug 49 expected_region_highlight[8]='17 27 default' # =(echo foo 50 expected_region_highlight[9]='17 27 process-substitution' # =(echo foo 51 fi