Warning, /frameworks/syntax-highlighting/autotests/reference/highlight.sh.ref is written in an unsupported language. File is not indexed.
0001 <Comment>#! /bin/sh</Comment><br/> 0002 <Comment># This is a test script for the Katepart Bash Syntax Highlighting by</Comment><br/> 0003 <Comment># Wilbert Berendsen. This is not runnable !!!</Comment><br/> 0004 <Normal Text></Normal Text><br/> 0005 <Normal Text></Normal Text><br/> 0006 <Comment># The highlighting recognizes basic types of input, and has a few special cases that</Comment><br/> 0007 <Comment># are all in FindCommands. The main objective is to create really proper nesting of</Comment><br/> 0008 <Comment># (multiline) strings, variables, expressions, etc.</Comment><br/> 0009 <Normal Text></Normal Text><br/> 0010 <Normal Text></Normal Text><br/> 0011 <Normal Text></Normal Text><br/> 0012 <Comment># ============== Tests: ===============</Comment><br/> 0013 <Normal Text></Normal Text><br/> 0014 <Comment># basic types:</Comment><br/> 0015 <Builtin>echo</Builtin><Normal Text> </Normal Text><String SingleQ>'single quoted string'</String SingleQ><br/> 0016 <Builtin>echo</Builtin><Normal Text> </Normal Text><String DoubleQ>"double quoted string"</String DoubleQ><br/> 0017 <Builtin>echo</Builtin><Normal Text> </Normal Text><String SingleQ>$'string with esc</String SingleQ><String Escape>\a</String Escape><String SingleQ>pes</String SingleQ><String Escape>\x0d</String Escape><String SingleQ>in it'</String SingleQ><br/> 0018 <Builtin>echo</Builtin><Normal Text> </Normal Text><String Transl.>$"</String Transl.><String DoubleQ>string meant to be translated"</String DoubleQ><br/> 0019 <Builtin>echo</Builtin><Normal Text> </Normal Text><String DoubleQ>"$"</String DoubleQ><br/> 0020 <Normal Text></Normal Text><br/> 0021 <Normal Text></Normal Text><br/> 0022 <Comment># comments:</Comment><br/> 0023 <Comment># this is a comment</Comment><br/> 0024 <Comment>#this too</Comment><br/> 0025 <Builtin>echo</Builtin><Normal Text> this is#nt a comment</Normal Text><br/> 0026 <Command>dcop</Command><Normal Text> kate EditInterface#1 </Normal Text><Comment>#this is</Comment><br/> 0027 <Command>grep</Command><Normal Text> </Normal Text><Option>-e</Option><Normal Text> </Normal Text><String DoubleQ>"^default/linux/amd64/"</String DoubleQ><Normal Text> </Normal Text><Control>|</Control><OtherCommand>\ #this</OtherCommand><Normal Text> is not a comment but </Normal Text><Comment>#this is</Comment><br/> 0028 <Command>mkdir</Command><Normal Text> this</Normal Text><Escape>\ </Escape><Normal Text>isnt</Normal Text><Escape>\ </Escape><Normal Text>#a</Normal Text><Escape>\ </Escape><Normal Text>comment</Normal Text><br/> 0029 <Command>mkdir</Command><Normal Text> this</Normal Text><Escape>\ </Escape><Normal Text>isnt</Normal Text><Escape>\\\;</Escape><Normal Text>#a</Normal Text><Escape>\ </Escape><Normal Text>comment</Normal Text><br/> 0030 <Command>mkdir</Command><Normal Text> this</Normal Text><Escape>\\</Escape><Normal Text> </Normal Text><Comment>#is a comment</Comment><br/> 0031 <Normal Text></Normal Text><br/> 0032 <Redirection><<'#BLOCK-COMMENT'</Redirection><br/> 0033 <Alert Level 3>NOTE</Alert Level 3><Comment> This is the "miltiline" comment.</Comment><br/> 0034 <Comment></Comment><br/> 0035 <Region Marker>[===[.rst:</Region Marker><br/> 0036 <Comment></Comment><br/> 0037 <Comment>Docs</Comment><br/> 0038 <Comment>----</Comment><br/> 0039 <Comment></Comment><br/> 0040 <Comment>Documentation block in </Comment><InlineLiteral>``RST``</InlineLiteral><Comment> format </Comment><Bold>**starts**</Bold><Comment> </Comment><Italic>*here*</Italic><Comment>.</Comment><br/> 0041 <Comment></Comment><br/> 0042 <Region Marker>]===]</Region Marker><br/> 0043 <Redirection>#BLOCK-COMMENT</Redirection><br/> 0044 <Normal Text></Normal Text><br/> 0045 <Builtin>:</Builtin><Comment> </Comment><Redirection><< '#SC2188'</Redirection><br/> 0046 <Region Marker>[====[.rst:</Region Marker><br/> 0047 <Comment>The </Comment><Italic>*multiline*</Italic><Comment> comment does not trigger the </Comment><HyperlinkReference>SC2188_</HyperlinkReference><Comment> warning of </Comment><DefaultRole>`shellcheck`</DefaultRole><Comment>.</Comment><br/> 0048 <Comment></Comment><br/> 0049 <HyperlinkTarget>.. _SC2188: </HyperlinkTarget><StandaloneHyperlink>https://www.shellcheck.net/wiki/SC2188</StandaloneHyperlink><br/> 0050 <Region Marker>]====]</Region Marker><br/> 0051 <Comment></Comment><br/> 0052 <Comment>... continue with _normal_ Bash comment.</Comment><br/> 0053 <Redirection>#SC2188</Redirection><br/> 0054 <Normal Text></Normal Text><br/> 0055 <Comment># brace expansion</Comment><br/> 0056 <Command>mv</Command><Normal Text> my_file.</Normal Text><Escape>{JPG</Escape><Operator>,</Operator><Escape>jpg}</Escape><br/> 0057 <Builtin>echo</Builtin><Normal Text> f.</Normal Text><Escape>{</Escape><Decimal>01</Decimal><Escape>..</Escape><Decimal>100</Decimal><Escape>..</Escape><Decimal>3</Decimal><Escape>}</Escape><Normal Text> f.</Normal Text><Escape>{</Escape><Normal Text>Z</Normal Text><Escape>..</Escape><Normal Text>a</Normal Text><Escape>..</Escape><Decimal>-3</Decimal><Escape>}</Escape><br/> 0058 <Builtin>echo</Builtin><Normal Text> f.</Normal Text><Escape>{</Escape><Decimal>01</Decimal><Escape>..</Escape><Decimal>100</Decimal><Escape>}</Escape><Normal Text> f.</Normal Text><Escape>{</Escape><Normal Text>a</Normal Text><Escape>..</Escape><Normal Text>Z</Normal Text><Escape>}</Escape><br/> 0059 <Comment># no brace expansion</Comment><br/> 0060 <Builtin>echo</Builtin><Normal Text> f.{..100} f.{1..Z} f.{a..Z..}</Normal Text><br/> 0061 <Normal Text></Normal Text><br/> 0062 <Normal Text></Normal Text><br/> 0063 <Comment># special characters are escaped:</Comment><br/> 0064 <Builtin>echo</Builtin><Normal Text> </Normal Text><Escape>\(</Escape><Normal Text>output</Normal Text><Escape>\)</Escape><Normal Text> </Normal Text><Escape>\&\|</Escape><Normal Text> </Normal Text><Escape>\></Escape><Normal Text> </Normal Text><Escape>\<</Escape><Normal Text> </Normal Text><Escape>\"</Escape><Normal Text> </Normal Text><Escape>\'</Escape><Normal Text> </Normal Text><Escape>\*</Escape><br/> 0065 <Normal Text></Normal Text><br/> 0066 <Normal Text></Normal Text><br/> 0067 <Comment># variable substitution:</Comment><br/> 0068 <Builtin>echo</Builtin><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>filename</Variable><Normal Text>.ext</Normal Text><br/> 0069 <Builtin>echo</Builtin><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>filename_ext</Variable><br/> 0070 <Builtin>echo</Builtin><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>filename</Variable><Parameter Expansion>}</Parameter Expansion><Normal Text>_ext</Normal Text><br/> 0071 <Builtin>echo</Builtin><Normal Text> text</Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>array</Variable><Parameter Expansion Operator>[</Parameter Expansion Operator><Dollar Prefix>$</Dollar Prefix><Variable>subscript</Variable><Parameter Expansion Operator>]</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><Normal Text>.text</Normal Text><br/> 0072 <Builtin>echo</Builtin><Normal Text> text</Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>array</Variable><Parameter Expansion Operator>[</Parameter Expansion Operator><String DoubleQ>"string"</String DoubleQ><Parameter Expansion Operator>]</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><Normal Text>.text</Normal Text><br/> 0073 <Builtin>echo</Builtin><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Parameter Expansion Operator>!</Parameter Expansion Operator><Variable>prefix</Variable><Parameter Expansion Operator>*</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><br/> 0074 <Builtin>echo</Builtin><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Parameter Expansion Operator>!</Parameter Expansion Operator><Variable>redir</Variable><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Parameter Expansion Operator>!</Parameter Expansion Operator><Variable>3</Variable><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Parameter Expansion Operator>!#</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Parameter Expansion Operator>!##</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Parameter Expansion Operator>!@###</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>!</Variable><Parameter Expansion>}</Parameter Expansion><br/> 0075 <Builtin>echo</Builtin><Normal Text> short are </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>_</Variable><Normal Text>, </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>$</Variable><Normal Text>, </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>?</Variable><Normal Text>, </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>@</Variable><Parameter Expansion>}</Parameter Expansion><Normal Text>, etc.</Normal Text><br/> 0076 <Builtin>echo</Builtin><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>variable</Variable><Parameter Expansion Operator>/</Parameter Expansion Operator><Pattern>a</Pattern><Parameter Expansion Operator>/</Parameter Expansion Operator><Normal Text>d</Normal Text><Parameter Expansion>}</Parameter Expansion><br/> 0077 <Builtin>echo</Builtin><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>1</Variable><Parameter Expansion Operator>:-</Parameter Expansion Operator><Normal Text>default</Normal Text><Parameter Expansion>}</Parameter Expansion><br/> 0078 <Builtin>echo</Builtin><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>10</Variable><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>1</Variable><Normal Text>0a </Normal Text><Comment># 9 is max</Comment><br/> 0079 <Normal Text></Normal Text><br/> 0080 <Normal Text></Normal Text><br/> 0081 <Comment># expression subst:</Comment><br/> 0082 <Builtin>echo</Builtin><Normal Text> </Normal Text><Parameter Expansion>$((</Parameter Expansion><Normal Text> </Normal Text><Variable>cd</Variable><Normal Text> </Normal Text><Operator><<</Operator><Normal Text> </Normal Text><Variable>ed</Variable><Normal Text> </Normal Text><Operator>+</Operator><Normal Text> </Normal Text><Decimal>1</Decimal><Normal Text> </Normal Text><Parameter Expansion>))</Parameter Expansion><br/> 0083 <Normal Text></Normal Text><br/> 0084 <Normal Text></Normal Text><br/> 0085 <Comment># command subst:</Comment><br/> 0086 <Builtin>echo</Builtin><Normal Text> </Normal Text><Parameter Expansion>$(</Parameter Expansion><Command>ls</Command><Normal Text> </Normal Text><Option>-l</Option><Parameter Expansion>)</Parameter Expansion><br/> 0087 <Builtin>echo</Builtin><Normal Text> </Normal Text><Backquote>`</Backquote><Command>cat</Command><Normal Text> myfile</Normal Text><Backquote>`</Backquote><br/> 0088 <Normal Text></Normal Text><br/> 0089 <Normal Text></Normal Text><br/> 0090 <Comment># file subst:</Comment><br/> 0091 <Builtin>echo</Builtin><Normal Text> </Normal Text><Parameter Expansion>$(</Parameter Expansion><Redirection><</Redirection><Dollar Prefix>$</Dollar Prefix><Variable>filename</Variable><Parameter Expansion>)</Parameter Expansion><br/> 0092 <Builtin>echo</Builtin><Normal Text> </Normal Text><Parameter Expansion>$(</Parameter Expansion><Redirection><</Redirection><Path>/path/to/myfile</Path><Parameter Expansion>)</Parameter Expansion><br/> 0093 <Normal Text></Normal Text><br/> 0094 <Comment># process subst:</Comment><br/> 0095 <Command>sort</Command><Normal Text> </Normal Text><Redirection><(</Redirection><OtherCommand>show_labels</OtherCommand><Redirection>)</Redirection><Normal Text> </Normal Text><Control>|</Control><Normal Text> </Normal Text><Command>sed</Command><Normal Text> </Normal Text><String SingleQ>'s/a/bg'</String SingleQ><Normal Text> </Normal Text><Redirection>></Redirection><Normal Text> </Normal Text><Path>my_file.txt</Path><Normal Text> </Normal Text><File Descriptor>2</File Descriptor><Redirection>>&</Redirection><File Descriptor>1</File Descriptor><br/> 0096 <Normal Text></Normal Text><br/> 0097 <Normal Text></Normal Text><br/> 0098 <Comment># All substitutions also work in strings:</Comment><br/> 0099 <Builtin>echo</Builtin><Normal Text> </Normal Text><String DoubleQ>"subst </String DoubleQ><Parameter Expansion>${</Parameter Expansion><Variable>in</Variable><Parameter Expansion>}</Parameter Expansion><String DoubleQ>side string"</String DoubleQ><Normal Text> </Normal Text><String SingleQ>'not $inside this ofcourse'</String SingleQ><br/> 0100 <Builtin>echo</Builtin><Normal Text> </Normal Text><String DoubleQ>"The result is </String DoubleQ><Parameter Expansion>$((</Parameter Expansion><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>a</Variable><Normal Text> </Normal Text><Operator>+</Operator><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>b</Variable><Normal Text> </Normal Text><Parameter Expansion>))</Parameter Expansion><String DoubleQ>. Thanks!"</String DoubleQ><br/> 0101 <Builtin>echo</Builtin><Normal Text> </Normal Text><String DoubleQ>"Your homedir contains </String DoubleQ><Backquote>`</Backquote><Command>ls</Command><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>HOME</Variable><Normal Text> </Normal Text><Control>|</Control><Command>wc</Command><Normal Text> </Normal Text><Option>-l</Option><Backquote>`</Backquote><String DoubleQ> files."</String DoubleQ><br/> 0102 <Normal Text></Normal Text><br/> 0103 <Normal Text></Normal Text><br/> 0104 <Comment># Escapes in strings:</Comment><br/> 0105 <Variable>p</Variable><Operator>=</Operator><String DoubleQ>"String </String DoubleQ><String Escape>\`</String Escape><String DoubleQ> with </String DoubleQ><String Escape>\$</String Escape><String DoubleQ> escapes </String DoubleQ><String Escape>\"</String Escape><String DoubleQ> "</String DoubleQ><Control>;</Control><br/> 0106 <Normal Text></Normal Text><br/> 0107 <Normal Text></Normal Text><br/> 0108 <Comment># keywords are black, builtins dark purple and common commands lighter purple</Comment><br/> 0109 <Builtin>set</Builtin><br/> 0110 <Builtin>exit</Builtin><br/> 0111 <Command>login</Command><br/> 0112 <Normal Text></Normal Text><br/> 0113 <Normal Text></Normal Text><br/> 0114 <Comment># Other colorings:</Comment><br/> 0115 <Function>error()</Function><Normal Text> </Normal Text><Keyword>{</Keyword><br/> 0116 <Normal Text> </Normal Text><Command>cat</Command><Normal Text> </Normal Text><Path>/usr/bin/lesspipe.sh</Path><br/> 0117 <Normal Text> </Normal Text><OtherCommand>runscript</OtherCommand><Normal Text> </Normal Text><Redirection>>&</Redirection><Normal Text> </Normal Text><Path>redir.bak</Path><br/> 0118 <Normal Text> </Normal Text><Builtin>exec</Builtin><Normal Text> </Normal Text><File Descriptor>3</File Descriptor><Redirection>>&</Redirection><File Descriptor>4</File Descriptor><br/> 0119 <Keyword>}</Keyword><br/> 0120 <Normal Text></Normal Text><br/> 0121 <Normal Text></Normal Text><br/> 0122 <Comment># do - done make code blocks</Comment><br/> 0123 <Control Flow>while</Control Flow><Normal Text> </Normal Text><Builtin>[</Builtin><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>p</Variable><Normal Text> </Normal Text><Expression>-lt</Expression><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>q</Variable><Normal Text> </Normal Text><Builtin>]</Builtin><br/> 0124 <Control Flow>do</Control Flow><br/> 0125 <Normal Text> </Normal Text><Command>chown</Command><Normal Text> 0644 </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>file</Variable><Normal Text>.</Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>p</Variable><br/> 0126 <Control Flow>done</Control Flow><br/> 0127 <Normal Text></Normal Text><br/> 0128 <Normal Text></Normal Text><br/> 0129 <Comment># braces as well</Comment><br/> 0130 <OtherCommand>run_prog</OtherCommand><Normal Text> </Normal Text><Control>|</Control><Normal Text> </Normal Text><Command>sort</Command><Normal Text> </Normal Text><Option>-u</Option><Normal Text> </Normal Text><Control>|</Control><br/> 0131 <Keyword>{</Keyword><br/> 0132 <Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> Header</Normal Text><br/> 0133 <Normal Text> </Normal Text><Control Flow>while</Control Flow><Normal Text> </Normal Text><Builtin>read</Builtin><Normal Text> </Normal Text><Variable>a</Variable><Normal Text> </Normal Text><Variable>b</Variable><Normal Text> </Normal Text><Variable>d</Variable><br/> 0134 <Normal Text> </Normal Text><Control Flow>do</Control Flow><br/> 0135 <Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>a</Variable><Path>/</Path><Dollar Prefix>$</Dollar Prefix><Variable>b</Variable><Path>/</Path><Dollar Prefix>$</Dollar Prefix><Variable>c</Variable><br/> 0136 <Normal Text> </Normal Text><Control Flow>done</Control Flow><br/> 0137 <Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> Footer</Normal Text><br/> 0138 <Keyword>}</Keyword><br/> 0139 <Normal Text></Normal Text><br/> 0140 <Normal Text></Normal Text><br/> 0141 <Comment># Any constructions can be nested:</Comment><br/> 0142 <Builtin>echo</Builtin><Normal Text> </Normal Text><String DoubleQ>"A long string with </String DoubleQ><Parameter Expansion>$(</Parameter Expansion><br/> 0143 <Normal Text> </Normal Text><Control Flow>if</Control Flow><Normal Text> </Normal Text><Builtin>[</Builtin><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>count</Variable><Normal Text> </Normal Text><Expression>-gt</Expression><Normal Text> 100 </Normal Text><Builtin>]</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>then</Control Flow><br/> 0144 <Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><String DoubleQ>"much"</String DoubleQ><br/> 0145 <Normal Text> </Normal Text><Control Flow>else</Control Flow><br/> 0146 <Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><String DoubleQ>"not much"</String DoubleQ><br/> 0147 <Normal Text> </Normal Text><Control Flow>fi</Control Flow><Normal Text> </Normal Text><Parameter Expansion>)</Parameter Expansion><String DoubleQ> substitutions."</String DoubleQ><Normal Text> </Normal Text><Control>;</Control><br/> 0148 <Normal Text></Normal Text><br/> 0149 <Normal Text></Normal Text><br/> 0150 <Comment># Even the case construct is correctly folded:</Comment><br/> 0151 <Builtin>test</Builtin><Normal Text> </Normal Text><Option>-f</Option><Normal Text> blaat </Normal Text><Control>&&</Control><br/> 0152 <Keyword>(</Keyword><Normal Text> </Normal Text><OtherCommand>do_something</OtherCommand><br/> 0153 <Normal Text> </Normal Text><Control Flow>case</Control Flow><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>p</Variable><Normal Text> </Normal Text><Keyword>in</Keyword><br/> 0154 <Normal Text> </Normal Text><Glob>*</Glob><Pattern>bak</Pattern><Keyword>)</Keyword><br/> 0155 <Normal Text> </Normal Text><OtherCommand>do_bak</OtherCommand><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>p</Variable><br/> 0156 <Normal Text> </Normal Text><Control Flow>;;</Control Flow><br/> 0157 <Normal Text> </Normal Text><Glob>*</Glob><Keyword>)</Keyword><br/> 0158 <Normal Text> </Normal Text><OtherCommand>dont_bak</OtherCommand><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>p</Variable><br/> 0159 <Normal Text> </Normal Text><Control Flow>;;</Control Flow><br/> 0160 <Normal Text> </Normal Text><Control Flow>esac</Control Flow><br/> 0161 <Keyword>)</Keyword><Normal Text> </Normal Text><Comment># despite the extra parentheses in the case construction.</Comment><br/> 0162 <Normal Text></Normal Text><br/> 0163 <Normal Text></Normal Text><br/> 0164 <Comment># more control flow</Comment><br/> 0165 <Control Flow>while</Control Flow><Normal Text> </Normal Text><Builtin>:</Builtin><Control>;</Control><br/> 0166 <Normal Text> </Normal Text><Control Flow>break</Control Flow><br/> 0167 <Normal Text> </Normal Text><Control Flow>continue</Control Flow><br/> 0168 <Normal Text> </Normal Text><Control Flow>return</Control Flow><br/> 0169 <Control Flow>done</Control Flow><br/> 0170 <Normal Text></Normal Text><br/> 0171 <Normal Text></Normal Text><br/> 0172 <Comment># variable assignments:</Comment><br/> 0173 <Variable>DIR</Variable><Operator>=</Operator><Path>/dev</Path><br/> 0174 <Variable>p</Variable><Operator>=</Operator><Backquote>`</Backquote><Command>ls</Command><Backquote>`</Backquote><br/> 0175 <Variable>LC_ALL</Variable><Operator>=</Operator><String DoubleQ>"nl"</String DoubleQ><Normal Text> </Normal Text><Command>dcop</Command><Normal Text> </Normal Text><String SingleQ>'kate*'</String SingleQ><br/> 0176 <Variable>_VAR</Variable><Operator>=</Operator><Normal Text>val</Normal Text><br/> 0177 <Variable>ARR</Variable><Operator>=</Operator><Variable>(</Variable><Normal Text>this is an array</Normal Text><Variable>)</Variable><br/> 0178 <Variable>ARR2</Variable><Operator>=</Operator><Variable>(</Variable><Parameter Expansion Operator>[</Parameter Expansion Operator><Normal Text>this</Normal Text><Parameter Expansion Operator>]</Parameter Expansion Operator><Variable>=</Variable><Normal Text>too </Normal Text><Parameter Expansion Operator>[</Parameter Expansion Operator><Normal Text>and</Normal Text><Parameter Expansion Operator>]</Parameter Expansion Operator><Variable>=</Variable><String DoubleQ>"this too"</String DoubleQ><Variable>)</Variable><br/> 0179 <Variable>usage</Variable><Operator>=</Operator><String DoubleQ>"</String DoubleQ><Dollar Prefix>$</Dollar Prefix><Variable>0</Variable><String DoubleQ> -- version </String DoubleQ><Dollar Prefix>$</Dollar Prefix><Variable>VERSION</Variable><br/> 0180 <String DoubleQ>Multiple lines of output</String DoubleQ><br/> 0181 <String DoubleQ>can be possible."</String DoubleQ><br/> 0182 <Variable>ANSWER</Variable><Operator>=</Operator><Normal Text>yes </Normal Text><Comment># here 'yes' isn't highlighed as command</Comment><br/> 0183 <Normal Text></Normal Text><br/> 0184 <Normal Text></Normal Text><br/> 0185 <Comment># Some commands expect variable names, these are colored correctly:</Comment><br/> 0186 <Builtin>export</Builtin><Normal Text> </Normal Text><Variable>PATH</Variable><Operator>=</Operator><Path>/my/bin:</Path><Dollar Prefix>$</Dollar Prefix><Variable>PATH</Variable><Normal Text> </Normal Text><Variable>BLAAT</Variable><br/> 0187 <Builtin>export</Builtin><Normal Text> </Normal Text><Variable>A</Variable><Normal Text> </Normal Text><Variable>B</Variable><Normal Text> </Normal Text><Variable>D</Variable><br/> 0188 <Builtin>local</Builtin><Normal Text> </Normal Text><Variable>p</Variable><Operator>=</Operator><Normal Text>3 </Normal Text><Variable>x</Variable><Normal Text> </Normal Text><Variable>y</Variable><Operator>=</Operator><String SingleQ>'\'</String SingleQ><br/> 0189 <Builtin>read</Builtin><Normal Text> </Normal Text><Variable>x</Variable><Normal Text> </Normal Text><Variable>y</Variable><Normal Text> </Normal Text><Variable>z</Variable><Normal Text> </Normal Text><Redirection><<<</Redirection><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>hallo</Variable><br/> 0190 <Builtin>unset</Builtin><Normal Text> </Normal Text><Variable>B</Variable><br/> 0191 <Builtin>declare</Builtin><Normal Text> </Normal Text><Option>-a</Option><Normal Text> </Normal Text><Variable>VAR1</Variable><Normal Text> </Normal Text><Variable>VAR2</Variable><Normal Text> </Normal Text><Control>&&</Control><Normal Text> </Normal Text><Builtin>exit</Builtin><br/> 0192 <Builtin>declare</Builtin><Normal Text> </Normal Text><Variable>less</Variable><Normal Text> </Normal Text><Variable>a</Variable><Normal Text> </Normal Text><Control>&&</Control><Normal Text> </Normal Text><OtherCommand>b</OtherCommand><br/> 0193 <Builtin>declare</Builtin><Normal Text> </Normal Text><Variable>a</Variable><Operator>=</Operator><Variable>(</Variable><Normal Text>1 2</Normal Text><Variable>)</Variable><br/> 0194 <Builtin>getopts</Builtin><Normal Text> </Normal Text><Operator>:</Operator><Normal Text>h</Normal Text><Operator>:</Operator><Normal Text>l</Normal Text><Operator>::</Operator><Normal Text>d </Normal Text><Variable>arg</Variable><br/> 0195 <Builtin>read</Builtin><Normal Text> </Normal Text><Comment>#comment</Comment><br/> 0196 <Builtin>let</Builtin><Normal Text> </Normal Text><Variable>a</Variable><Operator>=</Operator><Decimal>4</Decimal><Operator>+</Operator><Decimal>4</Decimal><Normal Text> </Normal Text><Decimal>3</Decimal><Operator>+</Operator><Variable>a</Variable><Normal Text> </Normal Text><Variable>b</Variable><Operator>=</Operator><Variable>c</Variable><Operator>+</Operator><Decimal>3</Decimal><Normal Text> </Normal Text><Variable>d</Variable><Operator>+</Operator><Decimal>3</Decimal><Normal Text> </Normal Text><Variable>d</Variable><Glob>*</Glob><Path>4</Path><Normal Text> </Normal Text><Comment># * is a glob</Comment><br/> 0197 <Normal Text></Normal Text><br/> 0198 <Comment># options are recoqnized:</Comment><br/> 0199 <Command>zip</Command><Normal Text> </Normal Text><Option>-f</Option><Operator>=</Operator><Normal Text>file.zip</Normal Text><br/> 0200 <OtherCommand>./configure</OtherCommand><Normal Text> </Normal Text><Option>--destdir</Option><Operator>=</Operator><Path>/usr</Path><br/> 0201 <Command>make</Command><Normal Text> </Normal Text><Path>destdir=/usr/</Path><br/> 0202 <Normal Text></Normal Text><br/> 0203 <Normal Text></Normal Text><br/> 0204 <Comment># [[ and [ correctly need spaces to be regarded as structure,</Comment><br/> 0205 <Comment># otherwise they are patterns (currently treated as normal text)</Comment><br/> 0206 <Control Flow>if</Control Flow><Normal Text> </Normal Text><Builtin>[</Builtin><Normal Text> </Normal Text><String DoubleQ>"</String DoubleQ><Dollar Prefix>$</Dollar Prefix><Variable>p</Variable><String DoubleQ>"</String DoubleQ><Normal Text> </Normal Text><Expression>==</Expression><Normal Text> </Normal Text><String DoubleQ>""</String DoubleQ><Normal Text> </Normal Text><Builtin>]</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>then</Control Flow><br/> 0207 <Normal Text> </Normal Text><Command>ls</Command><Normal Text> </Normal Text><Path>/usr/bin/</Path><Glob>[</Glob><Pattern>a</Pattern><Glob>-</Glob><Pattern>z</Pattern><Glob>]*</Glob><br/> 0208 <Control Flow>elif</Control Flow><Normal Text> </Normal Text><Keyword>[[</Keyword><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>p</Variable><Normal Text> </Normal Text><Expression>==</Expression><Normal Text> 0 </Normal Text><Keyword>]]</Keyword><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>then</Control Flow><br/> 0209 <Normal Text> </Normal Text><Command>ls</Command><Normal Text> </Normal Text><Path>/usr/share/</Path><Dollar Prefix>$</Dollar Prefix><Variable>p</Variable><br/> 0210 <Control Flow>fi</Control Flow><br/> 0211 <Normal Text></Normal Text><br/> 0212 <Comment># Fixed:</Comment><br/> 0213 <Command>ls</Command><Normal Text> </Normal Text><Path>a</Path><Glob>[</Glob><Pattern>ab</Pattern><Glob>]*</Glob><Normal Text> </Normal Text><Comment># dont try to interprete as assignment with subscript (fixed)</Comment><br/> 0214 <Variable>a</Variable><Parameter Expansion Operator>[</Parameter Expansion Operator><Normal Text>ab</Normal Text><Parameter Expansion Operator>]</Parameter Expansion Operator><br/> 0215 <Variable>a</Variable><Parameter Expansion Operator>[</Parameter Expansion Operator><Normal Text>ab</Normal Text><Parameter Expansion Operator>]</Parameter Expansion Operator><Operator>=</Operator><Normal Text>sa</Normal Text><br/> 0216 <Normal Text></Normal Text><br/> 0217 <Normal Text></Normal Text><br/> 0218 <Comment># Here documents are difficult to catch:</Comment><br/> 0219 <Command>cat</Command><Normal Text> </Normal Text><Redirection>></Redirection><Normal Text> </Normal Text><Path>myfile</Path><Normal Text> </Normal Text><Redirection><< __EOF__</Redirection><br/> 0220 <Here Doc>You're right, this is definitely no bash code</Here Doc><br/> 0221 <Here Doc>But ls more </Here Doc><Dollar Prefix>$</Dollar Prefix><Variable>parameters</Variable><Here Doc> should be expanded.</Here Doc><br/> 0222 <Redirection>__EOF__</Redirection><br/> 0223 <Normal Text></Normal Text><br/> 0224 <Normal Text></Normal Text><br/> 0225 <Comment># quoted:</Comment><br/> 0226 <Command>cat</Command><Normal Text> </Normal Text><Redirection><< "EOF"</Redirection><Normal Text> </Normal Text><Control>|</Control><Normal Text> </Normal Text><Command>egrep</Command><Normal Text> </Normal Text><String DoubleQ>"this"</String DoubleQ><Normal Text> </Normal Text><Redirection>>&</Redirection><File Descriptor>4</File Descriptor><Normal Text> </Normal Text><Comment># the rest of the line is still considered bash source</Comment><br/> 0227 <Here Doc>You're right, this is definitely no bash code</Here Doc><br/> 0228 <Here Doc>But ls more $parameters should be expanded. :-></Here Doc><br/> 0229 <Redirection>EOF</Redirection><br/> 0230 <Normal Text></Normal Text><br/> 0231 <Command>cat</Command><Normal Text> </Normal Text><Redirection><<bla</Redirection><Normal Text> </Normal Text><Control>||</Control><Normal Text> </Normal Text><Builtin>exit</Builtin><br/> 0232 <Here Doc>bla bla</Here Doc><br/> 0233 <Redirection>bla</Redirection><br/> 0234 <Normal Text></Normal Text><br/> 0235 <Normal Text></Normal Text><br/> 0236 <Comment># indented:</Comment><br/> 0237 <Control Flow>if</Control Flow><Normal Text> </Normal Text><Command>true</Command><br/> 0238 <Control Flow>then</Control Flow><br/> 0239 <Normal Text> </Normal Text><Command>cat</Command><Normal Text> </Normal Text><Redirection><<- EOF</Redirection><br/> 0240 <Here Doc> Indented text with a </Here Doc><Dollar Prefix>$</Dollar Prefix><Variable>dollar</Variable><Here Doc> or </Here Doc><Escape>\$</Escape><Here Doc>two</Here Doc><br/> 0241 <Redirection> EOF</Redirection><br/> 0242 <Control Flow>elif</Control Flow><Normal Text> </Normal Text><Builtin>[</Builtin><Normal Text> </Normal Text><Expression>-d</Expression><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>file</Variable><Normal Text> </Normal Text><Builtin>]</Builtin><Control>;</Control><Normal Text> </Normal Text><Control Flow>then</Control Flow><br/> 0243 <Normal Text> </Normal Text><Command>cat</Command><Normal Text> </Normal Text><Redirection><<- "EOF"</Redirection><br/> 0244 <Here Doc> Indented text without a $dollar</Here Doc><br/> 0245 <Redirection> EOF</Redirection><br/> 0246 <Control Flow>fi</Control Flow><br/> 0247 <Normal Text></Normal Text><br/> 0248 <Control Flow>if</Control Flow><Normal Text> </Normal Text><Expression>! </Expression><Keyword>{</Keyword><Normal Text> </Normal Text><OtherCommand>cmd1</OtherCommand><Normal Text> </Normal Text><Control>&&</Control><Normal Text> </Normal Text><OtherCommand>cmd2</OtherCommand><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Keyword>}</Keyword><Control>;</Control><Normal Text> </Normal Text><Control Flow>then</Control Flow><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> ok </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>fi</Control Flow><br/> 0249 <Control Flow>if</Control Flow><Normal Text> </Normal Text><Expression>! </Expression><OtherCommand>cmd1</OtherCommand><Normal Text> arg</Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>then</Control Flow><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> ok </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>fi</Control Flow><br/> 0250 <Normal Text></Normal Text><br/> 0251 <Control Flow>case</Control Flow><Normal Text> 1 </Normal Text><Keyword>in</Keyword><br/> 0252 <Pattern>2</Pattern><Keyword>)</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> xxx</Normal Text><Control>;</Control><br/> 0253 <Control Flow>;;</Control Flow><br/> 0254 <Glob>?</Glob><Keyword>)</Keyword><Normal Text> </Normal Text><OtherCommand>foo</OtherCommand><Normal Text> </Normal Text><Control>||</Control><Normal Text> </Normal Text><OtherCommand>yyy</OtherCommand><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><OtherCommand>foo</OtherCommand><Normal Text> abc </Normal Text><Control>||</Control><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> abc </Normal Text><Control Flow>;;</Control Flow><br/> 0255 <Pattern>1</Pattern><Keyword>)</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> yyy</Normal Text><Control>;</Control><br/> 0256 <Control Flow>esac</Control Flow><br/> 0257 <Normal Text></Normal Text><br/> 0258 <Command>ls</Command><Normal Text> </Normal Text><Comment>#should be outside of case 1 folding block</Comment><br/> 0259 <Normal Text></Normal Text><br/> 0260 <Control Flow>for</Control Flow><Normal Text> i </Normal Text><Keyword>in</Keyword><Normal Text> </Normal Text><Backquote>`</Backquote><Command>ls</Command><Normal Text> </Normal Text><Path>tests/auto/output/</Path><Glob>*</Glob><Path>.html</Path><Backquote>`</Backquote><Control>;</Control><Normal Text> </Normal Text><Control Flow>do</Control Flow><br/> 0261 <Normal Text> </Normal Text><Variable>refFile</Variable><Operator>=</Operator><Backquote>`</Backquote><Builtin>echo</Builtin><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>i</Variable><Normal Text> </Normal Text><Control>|</Control><Normal Text> </Normal Text><Command>sed</Command><Normal Text> </Normal Text><Option>-e</Option><Normal Text> s,build,src, </Normal Text><Control>|</Control><Normal Text> </Normal Text><Command>sed</Command><Normal Text> </Normal Text><Option>-e</Option><Normal Text> s,output,reference, </Normal Text><Control>|</Control><Normal Text> </Normal Text><Command>sed</Command><Normal Text> </Normal Text><Option>-e</Option><Normal Text> s,.html,.ref.html,</Normal Text><Backquote>`</Backquote><br/> 0262 <Normal Text> </Normal Text><Command>cp</Command><Normal Text> </Normal Text><Option>-v</Option><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>i</Variable><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>refFile</Variable><br/> 0263 <Control Flow>done</Control Flow><br/> 0264 <Normal Text></Normal Text><br/> 0265 <Comment>## >Settings >Configure Kate >Fonts & Colors >Highlitghing Text Styles >Scripts/Bash >Option >Change colors to some distinct color</Comment><br/> 0266 <Comment>## 1- In following line the -ucode should not be colored as option</Comment><br/> 0267 <Normal Text></Normal Text><br/> 0268 <OtherCommand>pacman</OtherCommand><Normal Text> </Normal Text><Option>-Syu</Option><Normal Text> </Normal Text><Option>--needed</Option><Normal Text> intel-ucode grub</Normal Text><br/> 0269 <OtherCommand>pacman</OtherCommand><Normal Text> </Normal Text><Option>-syu</Option><Normal Text> </Normal Text><Option>--needed</Option><Normal Text> intel-ucode grub</Normal Text><br/> 0270 <Normal Text></Normal Text><br/> 0271 <Comment># Braces (bug ##387915)</Comment><br/> 0272 <Keyword>[[</Keyword><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>line_name</Variable><Normal Text> </Normal Text><Expression>=~</Expression><Normal Text> </Normal Text><Escape>\{</Escape><Operator>([</Operator><Pattern>0</Pattern><Operator>-</Operator><Pattern>9</Pattern><Operator>]</Operator><Parameter Expansion>{</Parameter Expansion><Decimal>1</Decimal><Parameter Expansion Operator>,</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><Operator>)</Operator><Escape>\}\{</Escape><Operator>([</Operator><Pattern>0</Pattern><Operator>-</Operator><Pattern>9</Pattern><Operator>]</Operator><Parameter Expansion>{</Parameter Expansion><Decimal>1</Decimal><Parameter Expansion Operator>,</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><Operator>)</Operator><Escape>\}</Escape><Operator>(</Operator><Glob>.*</Glob><Operator>)</Operator><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0273 <Keyword>[[</Keyword><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>name</Variable><Normal Text> </Normal Text><Expression>=~</Expression><Normal Text> </Normal Text><Operator>(</Operator><Glob>.*</Glob><Operator>)</Operator><Pattern>_</Pattern><Operator>(</Operator><Pattern>S</Pattern><Operator>[</Operator><Pattern>0</Pattern><Operator>-</Operator><Pattern>9</Pattern><Operator>]</Operator><Parameter Expansion>{</Parameter Expansion><Decimal>2</Decimal><Parameter Expansion>}</Parameter Expansion><Operator>)(</Operator><Pattern>E</Pattern><Operator>[</Operator><Pattern>0</Pattern><Operator>-</Operator><Pattern>9</Pattern><Operator>]</Operator><Parameter Expansion>{</Parameter Expansion><Decimal>2</Decimal><Parameter Expansion Operator>,</Parameter Expansion Operator><Decimal>3</Decimal><Parameter Expansion>}</Parameter Expansion><Operator>[</Operator><Pattern>a</Pattern><Operator>-</Operator><Pattern>z</Pattern><Operator>]</Operator><Parameter Expansion>{</Parameter Expansion><Decimal>0</Decimal><Parameter Expansion Operator>,</Parameter Expansion Operator><Decimal>1</Decimal><Parameter Expansion>}</Parameter Expansion><Operator>)</Operator><Pattern>_</Pattern><Operator>(</Operator><Glob>.*</Glob><Operator>)</Operator><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0274 <Comment># Comments in Braces (bug 450878)</Comment><br/> 0275 <Keyword>[[</Keyword><Normal Text> </Normal Text><Comment># comment 1</Comment><br/> 0276 <Normal Text> 1 </Normal Text><Expression>==</Expression><Normal Text> 1 </Normal Text><Comment># comment 2</Comment><br/> 0277 <Normal Text> </Normal Text><Comment># comment 3</Comment><br/> 0278 <Keyword>]]</Keyword><br/> 0279 <Normal Text></Normal Text><br/> 0280 <Command>rm</Command><Normal Text> </Normal Text><Path>/data/</Path><Escape>{hello1</Escape><Operator>,</Operator><Escape>hello2}</Escape><Path>/input/</Path><Escape>{bye1</Escape><Operator>,</Operator><Dollar Prefix>$</Dollar Prefix><Variable>bye2</Variable><Escape>}</Escape><Path>/si</Path><Escape>{a</Escape><Operator>,</Operator><Parameter Expansion>${</Parameter Expansion><Variable>b</Variable><Parameter Expansion>}</Parameter Expansion><Operator>,</Operator><Escape>c{k</Escape><Operator>,</Operator><Escape>p{e</Escape><Operator>,</Operator><Escape>a}}}</Escape><Path>/</Path><Glob>*</Glob><Path>.non</Path><br/> 0281 <Command>rm</Command><Normal Text> </Normal Text><Path>/data/{aa,</Path><Escape>{e</Escape><Operator>,</Operator><Escape>i}</Escape><Path>t</Path><Escape>{b</Escape><Operator>,</Operator><Escape>c}</Escape><Normal Text> </Normal Text><Comment># Not closed</Comment><br/> 0282 <Command>rm</Command><Normal Text> </Normal Text><Path>/data/</Path><Escape>{aa</Escape><Operator>,</Operator><Escape>{e</Escape><Operator>,</Operator><Escape>i}t{b</Escape><Operator>,</Operator><Escape>c}}</Escape><br/> 0283 <Command>rm</Command><Normal Text> </Normal Text><Path>/data/</Path><Escape>{aa</Escape><Operator>,</Operator><Escape>{i}}</Escape><br/> 0284 <Command>rm</Command><Normal Text> </Normal Text><Path>/data{aa{bb{cc{dd}}}}</Path><br/> 0285 <Command>rm</Command><Normal Text> </Normal Text><Path>/data{aaa</Path><Backquote>`</Backquote><OtherCommand>aaa}aa</OtherCommand><Backquote>`</Backquote><Normal Text>aaa}a</Normal Text><br/> 0286 <Normal Text></Normal Text><br/> 0287 <Parameter Expansion>${</Parameter Expansion><Variable>array</Variable><Parameter Expansion Operator>[</Parameter Expansion Operator><Decimal>0</Decimal><Parameter Expansion Operator>]:</Parameter Expansion Operator><Normal Text> -</Normal Text><Decimal>7</Decimal><Normal Text> </Normal Text><Parameter Expansion Operator>:</Parameter Expansion Operator><Normal Text> + </Normal Text><Decimal>22</Decimal><Normal Text> </Normal Text><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>array</Variable><Parameter Expansion Operator>[</Parameter Expansion Operator><Decimal>1</Decimal><Parameter Expansion Operator>]:</Parameter Expansion Operator><Normal Text> num </Normal Text><Parameter Expansion>}</Parameter Expansion><br/> 0288 <Parameter Expansion>${</Parameter Expansion><Variable>parameter</Variable><Parameter Expansion Operator>##</Parameter Expansion Operator><Normal Text>word</Normal Text><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>parameter</Variable><Parameter Expansion Operator>%%</Parameter Expansion Operator><Normal Text>word</Normal Text><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>parameter</Variable><Parameter Expansion Operator>^^</Parameter Expansion Operator><Pattern>pattern</Pattern><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>parameter</Variable><Parameter Expansion Operator>,,</Parameter Expansion Operator><Pattern>pattern</Pattern><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>parameter</Variable><Parameter Expansion Operator>@</Parameter Expansion Operator><Error>operator</Error><Parameter Expansion>}</Parameter Expansion><br/> 0289 <Normal Text></Normal Text><br/> 0290 <Comment># </Comment><Alert Level 2>TODO</Alert Level 2><Comment> `</Comment><br/> 0291 <Normal Text></Normal Text><br/> 0292 <Comment># commands</Comment><br/> 0293 <OtherCommand>abc</OtherCommand><br/> 0294 <Command>cp</Command><br/> 0295 <Builtin>:</Builtin><br/> 0296 <Builtin>.</Builtin><br/> 0297 <OtherCommand>:#nokeyword</OtherCommand><br/> 0298 <OtherCommand>path/cmd</OtherCommand><br/> 0299 <OtherCommand>ec</OtherCommand><Escape>\</Escape><br/> 0300 <OtherCommand>ho</OtherCommand><br/> 0301 <OtherCommand>2</OtherCommand><br/> 0302 <OtherCommand>{ab}c</OtherCommand><br/> 0303 <Escape>{a</Escape><Operator>,</Operator><Escape>b}</Escape><OtherCommand>c</OtherCommand><br/> 0304 <String SingleQ>'a'</String SingleQ><OtherCommand>c</OtherCommand><br/> 0305 <Dollar Prefix>$</Dollar Prefix><Variable>ab</Variable><br/> 0306 <Parameter Expansion>${</Parameter Expansion><Variable>ab</Variable><Parameter Expansion>}</Parameter Expansion><OtherCommand>c</OtherCommand><br/> 0307 <OtherCommand>\ a</OtherCommand><br/> 0308 <OtherCommand>!a</OtherCommand><br/> 0309 <OtherCommand>{ab}[</OtherCommand><br/> 0310 <Escape>{a</Escape><Operator>,</Operator><Escape>b}</Escape><OtherCommand>[</OtherCommand><br/> 0311 <String SingleQ>'a'</String SingleQ><OtherCommand>[</OtherCommand><br/> 0312 <OtherCommand>\ [</OtherCommand><br/> 0313 <OtherCommand>!a[</OtherCommand><br/> 0314 <OtherCommand>a{}d</OtherCommand><br/> 0315 <OtherCommand>a{bc}d</OtherCommand><br/> 0316 <OtherCommand>a</OtherCommand><Escape>{b</Escape><Operator>,</Operator><Escape>c}</Escape><OtherCommand>d</OtherCommand><br/> 0317 <OtherCommand>a</OtherCommand><String SingleQ>'b'</String SingleQ><OtherCommand>c</OtherCommand><br/> 0318 <OtherCommand>a</OtherCommand><Dollar Prefix>$</Dollar Prefix><Variable>bc</Variable><br/> 0319 <OtherCommand>a</OtherCommand><Parameter Expansion>${</Parameter Expansion><Variable>bc</Variable><Parameter Expansion>}</Parameter Expansion><OtherCommand>d</OtherCommand><br/> 0320 <OtherCommand>a\ b</OtherCommand><br/> 0321 <OtherCommand>a!b</OtherCommand><br/> 0322 <OtherCommand>a{}[</OtherCommand><br/> 0323 <OtherCommand>a{bc}[</OtherCommand><br/> 0324 <OtherCommand>a</OtherCommand><Escape>{b</Escape><Operator>,</Operator><Escape>c}</Escape><OtherCommand>[</OtherCommand><br/> 0325 <OtherCommand>a</OtherCommand><String SingleQ>'b'</String SingleQ><OtherCommand>[</OtherCommand><br/> 0326 <OtherCommand>a\ [</OtherCommand><br/> 0327 <OtherCommand>a!b[</OtherCommand><br/> 0328 <Normal Text></Normal Text><br/> 0329 <Comment># commands + params</Comment><br/> 0330 <OtherCommand>shortopt</OtherCommand><Normal Text> </Normal Text><Option>-ol</Option><Normal Text> </Normal Text><Option>-f</Option><Path>/fd/fd</Path><Normal Text> </Normal Text><Option>-hfd</Option><Path>/fds</Path><Normal Text> </Normal Text><Option>-</Option><Normal Text> </Normal Text><Option>-ol</Option><String SingleQ>'a'</String SingleQ><Option>b</Option><Normal Text> </Normal Text><Option>-f</Option><String SingleQ>'a'</String SingleQ><Path>/fd/fd</Path><Normal Text> </Normal Text><Option>-h</Option><String SingleQ>'a'</String SingleQ><Option>fd</Option><Path>/fds</Path><br/> 0331 <OtherCommand>longopt</OtherCommand><Normal Text> </Normal Text><Option>--long-a</Option><Normal Text> </Normal Text><Option>--long-b</Option><Operator>=</Operator><Normal Text>value </Normal Text><Option>--file</Option><Operator>=</Operator><Glob>*</Glob><Normal Text> </Normal Text><Option>--file</Option><Operator>=</Operator><Path>file</Path><Glob>*</Glob><Normal Text> </Normal Text><Option>--file</Option><Operator>=</Operator><Path>dir/file</Path><br/> 0332 <OtherCommand>longopt</OtherCommand><Normal Text> </Normal Text><Option>--long-a</Option><String SingleQ>'a'</String SingleQ><Option>b</Option><Normal Text> </Normal Text><Option>--long</Option><String SingleQ>'a'</String SingleQ><Option>-b</Option><Operator>=</Operator><Normal Text>value </Normal Text><Option>--fi</Option><String SingleQ>'a'</String SingleQ><Option>le</Option><Operator>=</Operator><Glob>*</Glob><br/> 0333 <OtherCommand>noopt</OtherCommand><Normal Text> 3 3d </Normal Text><Option>-f</Option><Normal Text> </Normal Text><Option>--</Option><Normal Text> </Normal Text><Option>-f</Option><Normal Text> </Normal Text><Option>--xx</Option><Normal Text> </Normal Text><Path>dir/file</Path><br/> 0334 <OtherCommand>opt</OtherCommand><Normal Text> param#nocomment ab</Normal Text><String SingleQ>'a'</String SingleQ><Normal Text>cd [[ param ]] } { ~a .a </Normal Text><Comment>#comments</Comment><br/> 0335 <OtherCommand>path</OtherCommand><Normal Text> </Normal Text><Path>path/file</Path><Normal Text> </Normal Text><Path>dir/</Path><Normal Text> </Normal Text><Path>/</Path><Normal Text> </Normal Text><Path>//</Path><Normal Text> </Normal Text><Path>3/f</Path><Normal Text> </Normal Text><Path>a@/</Path><Normal Text> </Normal Text><String SingleQ>'a'</String SingleQ><Path>/b</Path><Normal Text> </Normal Text><Path>d/</Path><String SingleQ>'a'</String SingleQ><Path>b</Path><Normal Text> </Normal Text><Path>a\ d/f</Path><Normal Text> </Normal Text><Path>f/f</Path><Escape>\</Escape><br/> 0336 <Path>ile</Path><br/> 0337 <OtherCommand>path</OtherCommand><Normal Text> </Normal Text><Path>~</Path><Normal Text> </Normal Text><Path>~/</Path><Normal Text> </Normal Text><Path>~a/</Path><Normal Text> </Normal Text><Path>.</Path><Normal Text> </Normal Text><Path>..</Path><Normal Text> </Normal Text><Path>./a</Path><Normal Text> </Normal Text><Path>../a</Path><br/> 0338 <OtherCommand>path</OtherCommand><Normal Text> </Normal Text><Path>/path/</Path><Glob>*</Glob><Normal Text> </Normal Text><Path>/path/f</Path><Glob>*</Glob><Normal Text> </Normal Text><Path>/path/f@</Path><Normal Text> </Normal Text><Path>/path/f</Path><Glob>@(|)</Glob><Normal Text> {</Normal Text><Path>a/b}</Path><Normal Text> </Normal Text><Path>a{b}/c</Path><Normal Text> </Normal Text><Path>a/b{c}</Path><Normal Text> </Normal Text><Path>a/{b}</Path><Normal Text> </Normal Text><Path>a/{b}c</Path><br/> 0339 <OtherCommand>glob</OtherCommand><Normal Text> </Normal Text><Glob>?</Glob><Normal Text> </Normal Text><Glob>*</Glob><Normal Text> </Normal Text><Glob>?</Glob><Path>f</Path><Normal Text> </Normal Text><Glob>*</Glob><Path>f</Path><Normal Text> </Normal Text><Path>f</Path><Glob>*</Glob><Normal Text> </Normal Text><Path>f</Path><Glob>?</Glob><Normal Text> </Normal Text><Glob>**</Glob><Path>/</Path><Normal Text> </Normal Text><Path>~/</Path><Glob>*</Glob><Normal Text> </Normal Text><Path>~</Path><Glob>*</Glob><Normal Text> </Normal Text><Path>/path/f</Path><Glob>*</Glob><Normal Text> </Normal Text><String SingleQ>'a'</String SingleQ><Glob>*</Glob><Normal Text> </Normal Text><String SingleQ>'a'</String SingleQ><Path>f/</Path><Glob>?</Glob><br/> 0340 <OtherCommand>extglob</OtherCommand><Normal Text> @ </Normal Text><Glob>@(*)</Glob><Normal Text> </Normal Text><Glob>@(</Glob><Path>f</Path><Glob>*|</Glob><Path>f</Path><Glob>??(</Glob><Path>f</Path><Glob>))</Glob><Normal Text> </Normal Text><Path>f</Path><Glob>!(+(?(@(*(</Glob><Path>f</Path><Glob>)</Glob><Path>f</Path><Glob>)</Glob><Path>f</Path><Glob>)</Glob><Path>f</Path><Glob>)</Glob><Path>f</Path><Glob>)</Glob><Path>f</Path><Normal Text> @</Normal Text><String SingleQ>'a'</String SingleQ><Glob>@(|)</Glob><Normal Text> </Normal Text><Path>a</Path><Glob>@(?)</Glob><br/> 0341 <OtherCommand>subs</OtherCommand><Normal Text> f! f!! f!s </Normal Text><String SingleQ>'a'</String SingleQ><Normal Text>!s </Normal Text><Escape>\(</Escape><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>v</Variable><Normal Text> </Normal Text><Escape>{a</Escape><Operator>,</Operator><Escape>b}</Escape><Normal Text> {a} {</Normal Text><Path>a}/d</Path><Normal Text> {a</Normal Text><Escape>\,</Escape><Normal Text>} </Normal Text><Escape>{a</Escape><Operator>,</Operator><Escape>}</Escape><Normal Text> </Normal Text><Escape>{a</Escape><Operator>,</Operator><Escape>\}</Escape><Operator>,</Operator><Escape>b}</Escape><Normal Text> </Normal Text><Path>ds/</Path><Escape>{a</Escape><Operator>,</Operator><Escape>b}</Escape><Path>sa/s</Path><br/> 0342 <OtherCommand>2</OtherCommand><Normal Text> </Normal Text><Option>-</Option><Normal Text> f </Normal Text><Option>-f</Option><br/> 0343 <OtherCommand>!a</OtherCommand><Normal Text> </Normal Text><Option>-f</Option><br/> 0344 <String SingleQ>'a'</String SingleQ><Normal Text> </Normal Text><Option>-f</Option><br/> 0345 <Dollar Prefix>$</Dollar Prefix><Variable>a</Variable><Normal Text> </Normal Text><Option>-f</Option><br/> 0346 <Expression>! </Expression><OtherCommand>cmd</OtherCommand><br/> 0347 <Normal Text></Normal Text><br/> 0348 <Comment># coproc command (#460301)</Comment><br/> 0349 <Builtin>coproc</Builtin><Normal Text> </Normal Text><Command>ls</Command><Normal Text> thisfiledoesntexist </Normal Text><File Descriptor>2</File Descriptor><Redirection>>&</Redirection><File Descriptor>1</File Descriptor><br/> 0350 <Builtin>coproc</Builtin><Normal Text> </Normal Text><Keyword>{</Keyword><Normal Text> </Normal Text><Command>ls</Command><Normal Text> thisfiledoesntexist</Normal Text><Control>;</Control><Normal Text> </Normal Text><Builtin>read</Builtin><Control>;</Control><Normal Text> </Normal Text><Keyword>}</Keyword><Normal Text> </Normal Text><File Descriptor>2</File Descriptor><Redirection>>&</Redirection><File Descriptor>1</File Descriptor><br/> 0351 <Builtin>coproc</Builtin><Normal Text> mycoproc </Normal Text><Keyword>{</Keyword><Normal Text> </Normal Text><Command>awk</Command><Normal Text> </Normal Text><String SingleQ>'{print "foo" $0;fflush()}'</String SingleQ><Control>;</Control><Normal Text> </Normal Text><Keyword>}</Keyword><Normal Text> </Normal Text><Redirection>>&</Redirection><File Descriptor>3</File Descriptor><br/> 0352 <Normal Text></Normal Text><br/> 0353 <Comment># redirections (prefix)</Comment><br/> 0354 <Redirection><<<</Redirection><Normal Text>s </Normal Text><Command>cat</Command><br/> 0355 <Redirection><<<</Redirection><String SingleQ>'s'</String SingleQ><Normal Text> </Normal Text><Command>cat</Command><br/> 0356 <Redirection><<<</Redirection><String SingleQ>'s'</String SingleQ><Normal Text>s </Normal Text><Command>cat</Command><br/> 0357 <Redirection><<<</Redirection><Normal Text>s</Normal Text><String SingleQ>'s'</String SingleQ><Normal Text>s </Normal Text><Command>cat</Command><br/> 0358 <Redirection><<<</Redirection><Normal Text>s</Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>s</Variable><Parameter Expansion>}</Parameter Expansion><Normal Text>s </Normal Text><Command>cat</Command><br/> 0359 <Redirection><<<</Redirection><Normal Text> s</Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>s</Variable><Parameter Expansion>}</Parameter Expansion><Normal Text>s </Normal Text><Command>cat</Command><br/> 0360 <Redirection>>&</Redirection><File Descriptor>2</File Descriptor><Normal Text> </Normal Text><Command>cat</Command><br/> 0361 <Redirection><</Redirection><Path>f</Path><Normal Text> </Normal Text><Command>cat</Command><br/> 0362 <Redirection><</Redirection><Normal Text> </Normal Text><Path>f</Path><Normal Text> </Normal Text><Command>cat</Command><br/> 0363 <File Descriptor>2</File Descriptor><Redirection>></Redirection><Path>3</Path><Normal Text> </Normal Text><Command>cat</Command><br/> 0364 <File Descriptor>2</File Descriptor><Redirection>>&</Redirection><File Descriptor>3</File Descriptor><Normal Text> </Normal Text><Command>cat</Command><br/> 0365 <File Descriptor>2</File Descriptor><Redirection>>&</Redirection><Normal Text> </Normal Text><File Descriptor>3</File Descriptor><Normal Text> </Normal Text><Command>cat</Command><br/> 0366 <File Descriptor>2</File Descriptor><Redirection>></Redirection><Path>f</Path><Normal Text> </Normal Text><Command>cat</Command><br/> 0367 <Redirection>&></Redirection><Path>f</Path><Normal Text> </Normal Text><Command>cat</Command><br/> 0368 <Normal Text></Normal Text><br/> 0369 <Redirection><<<</Redirection><Comment># comment</Comment><br/> 0370 <Redirection><</Redirection><Comment># comment</Comment><br/> 0371 <Redirection>></Redirection><Comment># comment</Comment><br/> 0372 <Redirection><<<</Redirection><Normal Text> </Normal Text><Comment># comment</Comment><br/> 0373 <Redirection><</Redirection><Normal Text> </Normal Text><Comment># comment</Comment><br/> 0374 <Redirection>></Redirection><Normal Text> </Normal Text><Comment># comment</Comment><br/> 0375 <Normal Text></Normal Text><br/> 0376 <Comment># redirections</Comment><br/> 0377 <Command>cat</Command><Normal Text> f</Normal Text><Redirection>></Redirection><Path>2</Path><br/> 0378 <Command>cat</Command><Normal Text> </Normal Text><Path>d/f</Path><Redirection>></Redirection><Path>2</Path><br/> 0379 <Command>cat</Command><Normal Text> </Normal Text><Path>d/f</Path><Normal Text> </Normal Text><Redirection>></Redirection><Path>2</Path><br/> 0380 <Command>cat</Command><Normal Text> </Normal Text><Path>d/f</Path><Normal Text> </Normal Text><Redirection>>&</Redirection><Normal Text> </Normal Text><File Descriptor>2</File Descriptor><br/> 0381 <Command>cat</Command><Normal Text> </Normal Text><Redirection>></Redirection><Path>2</Path><Normal Text> </Normal Text><Path>d/f</Path><br/> 0382 <Command>cat</Command><Normal Text> </Normal Text><Redirection>></Redirection><Normal Text> </Normal Text><Path>2</Path><br/> 0383 <Command>cat</Command><Normal Text> </Normal Text><Redirection><(</Redirection><Builtin>echo</Builtin><Redirection>)</Redirection><Normal Text> </Normal Text><Redirection><(</Redirection><Builtin>echo</Builtin><Normal Text> a</Normal Text><Redirection>)</Redirection><Normal Text> </Normal Text><Redirection><(</Redirection><Builtin>echo</Builtin><Normal Text> </Normal Text><Path>a/f</Path><Redirection>)</Redirection><Normal Text> </Normal Text><Redirection><(</Redirection><Builtin>echo</Builtin><Normal Text> </Normal Text><Redirection>)</Redirection><Normal Text> </Normal Text><Redirection><(</Redirection><Builtin>echo</Builtin><Normal Text> a </Normal Text><Redirection>)</Redirection><Normal Text> </Normal Text><Redirection><(</Redirection><Builtin>echo</Builtin><Normal Text> </Normal Text><Path>a/f</Path><Normal Text> </Normal Text><Redirection>)</Redirection><br/> 0384 <Command>cat</Command><Normal Text> </Normal Text><File Descriptor>2</File Descriptor><Redirection>>&</Redirection><File Descriptor>1</File Descriptor><Normal Text> </Normal Text><Redirection>&></Redirection><Path>f</Path><Normal Text> </Normal Text><Redirection>&>></Redirection><Path>f</Path><Normal Text> </Normal Text><File Descriptor>2</File Descriptor><Redirection><&</Redirection><File Descriptor>1</File Descriptor><Keyword>-</Keyword><Normal Text> </Normal Text><File Descriptor>2</File Descriptor><Redirection><></Redirection><Path>f</Path><Normal Text> </Normal Text><File Descriptor>2</File Descriptor><Redirection><<heredoc</Redirection><br/> 0385 <Here Doc>bla bla</Here Doc><br/> 0386 <Redirection>heredoc</Redirection><br/> 0387 <Redirection><<-'h'</Redirection><Normal Text> </Normal Text><Command>cat</Command><br/> 0388 <Here Doc>bla</Here Doc><br/> 0389 <Redirection>h</Redirection><br/> 0390 <Redirection><<"'"</Redirection><Normal Text> </Normal Text><Command>cat</Command><br/> 0391 <Here Doc>bla</Here Doc><br/> 0392 <Redirection>'</Redirection><br/> 0393 <Command>cat</Command><Normal Text> </Normal Text><Redirection><<heredoc</Redirection><br/> 0394 <Here Doc>bla bla</Here Doc><br/> 0395 <Redirection>heredoc</Redirection><br/> 0396 <Command>cat</Command><Normal Text> </Normal Text><Redirection><<heredoc</Redirection><Normal Text> </Normal Text><Option>-a</Option><br/> 0397 <Here Doc>bla bla</Here Doc><br/> 0398 <Redirection>heredoc</Redirection><br/> 0399 <Variable>r</Variable><Operator>=</Operator><Parameter Expansion>$(</Parameter Expansion><OtherCommand>xxx</OtherCommand><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>@</Variable><Normal Text> </Normal Text><File Descriptor>2</File Descriptor><Redirection>>&</Redirection><File Descriptor>1</File Descriptor><Parameter Expansion>)</Parameter Expansion><br/> 0400 <Normal Text></Normal Text><br/> 0401 <Command>cat</Command><Normal Text> </Normal Text><Redirection><<<</Redirection><Comment># comment</Comment><br/> 0402 <Command>cat</Command><Normal Text> </Normal Text><Redirection><</Redirection><Comment># comment</Comment><br/> 0403 <Command>cat</Command><Normal Text> </Normal Text><Redirection>></Redirection><Comment># comment</Comment><br/> 0404 <Command>cat</Command><Normal Text> </Normal Text><Redirection><<<</Redirection><Normal Text> </Normal Text><Comment># comment</Comment><br/> 0405 <Command>cat</Command><Normal Text> </Normal Text><Redirection><</Redirection><Normal Text> </Normal Text><Comment># comment</Comment><br/> 0406 <Command>cat</Command><Normal Text> </Normal Text><Redirection>></Redirection><Normal Text> </Normal Text><Comment># comment</Comment><br/> 0407 <Normal Text></Normal Text><br/> 0408 <Comment># branches</Comment><br/> 0409 <Command>cat</Command><Normal Text> a</Normal Text><Control>|</Control><Command>cat</Command><br/> 0410 <Command>cat</Command><Normal Text> a</Normal Text><Control>&</Control><Command>cat</Command><br/> 0411 <Command>cat</Command><Normal Text> a</Normal Text><Control>||</Control><Command>cat</Command><br/> 0412 <Command>cat</Command><Normal Text> a</Normal Text><Control>&&</Control><Command>cat</Command><br/> 0413 <Command>cat</Command><Normal Text> a</Normal Text><Control>;</Control><Command>cat</Command><br/> 0414 <Command>cat</Command><Normal Text> a </Normal Text><Control>|</Control><Normal Text> </Normal Text><Command>cat</Command><br/> 0415 <Command>cat</Command><Normal Text> a </Normal Text><Control>&</Control><Normal Text> </Normal Text><Command>cat</Command><br/> 0416 <Command>cat</Command><Normal Text> a </Normal Text><Control>||</Control><Normal Text> </Normal Text><Command>cat</Command><br/> 0417 <Command>cat</Command><Normal Text> a </Normal Text><Control>&&</Control><Normal Text> </Normal Text><Command>cat</Command><br/> 0418 <Command>cat</Command><Normal Text> a </Normal Text><Control>;</Control><Normal Text> </Normal Text><Command>cat</Command><br/> 0419 <Command>cat</Command><Normal Text> a</Normal Text><String SingleQ>'a'</String SingleQ><Control>;</Control><Command>cat</Command><br/> 0420 <Normal Text></Normal Text><br/> 0421 <Comment># substitutions</Comment><br/> 0422 <Builtin>echo</Builtin><Normal Text> </Normal Text><String SingleQ>''</String SingleQ><Normal Text> </Normal Text><String SingleQ>'a'</String SingleQ><Normal Text> </Normal Text><String SingleQ>'\'</String SingleQ><Normal Text> </Normal Text><String DoubleQ>""</String DoubleQ><Normal Text> </Normal Text><String DoubleQ>"a"</String DoubleQ><Normal Text> </Normal Text><String DoubleQ>"</String DoubleQ><String Escape>\\</String Escape><String DoubleQ>"</String DoubleQ><Normal Text> </Normal Text><String DoubleQ>"</String DoubleQ><Dollar Prefix>$</Dollar Prefix><Variable>a</Variable><String DoubleQ>"</String DoubleQ><Normal Text> </Normal Text><String DoubleQ>"a""a"</String DoubleQ><String SingleQ>'a''a'</String SingleQ><Normal Text> a</Normal Text><String SingleQ>'b'</String SingleQ><Normal Text>c a</Normal Text><String DoubleQ>"b"</String DoubleQ><Normal Text>c a</Normal Text><String SingleQ>$'</String SingleQ><String Escape>\n</String Escape><String SingleQ>'</String SingleQ><Normal Text>c</Normal Text><br/> 0423 <Builtin>echo</Builtin><Normal Text> a!bc a{a}b a</Normal Text><Escape>{b</Escape><Operator>,</Operator><Escape>c}</Escape><Normal Text>d a</Normal Text><Escape>{b</Escape><Operator>,</Operator><Escape>{d</Escape><Operator>,</Operator><Escape>e}}</Escape><Normal Text>d a</Normal Text><Escape>\ </Escape><Normal Text>b</Normal Text><br/> 0424 <Builtin>echo</Builtin><Normal Text> a</Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>bc</Variable><Normal Text> a</Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>b</Variable><Path>/c</Path><Normal Text> a</Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>b</Variable><Parameter Expansion>}</Parameter Expansion><Normal Text>c a</Normal Text><Parameter Expansion>$((</Parameter Expansion><Variable>b</Variable><Operator>-</Operator><Decimal>3</Decimal><Parameter Expansion>))</Parameter Expansion><Normal Text>c a</Normal Text><Parameter Expansion>$(</Parameter Expansion><OtherCommand>b</OtherCommand><Parameter Expansion>)</Parameter Expansion><Normal Text>c a</Normal Text><Parameter Expansion>$(</Parameter Expansion><OtherCommand>a</OtherCommand><Normal Text> b c</Normal Text><Parameter Expansion>)</Parameter Expansion><Normal Text>c</Normal Text><br/> 0425 <Builtin>echo</Builtin><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>a</Variable><Parameter Expansion Operator>[*]</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>a</Variable><Parameter Expansion Operator>[@]</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>a</Variable><Parameter Expansion Operator>[</Parameter Expansion Operator><Parameter Expansion>${</Parameter Expansion><Variable>b</Variable><Parameter Expansion>}</Parameter Expansion><Parameter Expansion Operator>]</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>a</Variable><Parameter Expansion Operator>:-</Parameter Expansion Operator><Normal Text>x</Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>z</Variable><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>a</Variable><Parameter Expansion Operator>-</Parameter Expansion Operator><Normal Text>x</Normal Text><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>a</Variable><Parameter Expansion Operator>/</Parameter Expansion Operator><Pattern>g</Pattern><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>a</Variable><Parameter Expansion Operator>//</Parameter Expansion Operator><Pattern>f</Pattern><Parameter Expansion Operator>/</Parameter Expansion Operator><Normal Text>f</Normal Text><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>a</Variable><Parameter Expansion Operator>//</Parameter Expansion Operator><Pattern>f</Pattern><Glob>*</Glob><Parameter Expansion Operator>/</Parameter Expansion Operator><Path>f</Path><Glob>*</Glob><Parameter Expansion>}</Parameter Expansion><br/> 0426 <Builtin>echo</Builtin><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>a</Variable><Parameter Expansion Operator>^^</Parameter Expansion Operator><Pattern>l</Pattern><Glob>*</Glob><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>a</Variable><Parameter Expansion Operator>,</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Parameter Expansion Operator>!</Parameter Expansion Operator><Variable>a</Variable><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Parameter Expansion Operator>#</Parameter Expansion Operator><Variable>a</Variable><Parameter Expansion Operator>[</Parameter Expansion Operator><Decimal>1</Decimal><Parameter Expansion Operator>]</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>a</Variable><Parameter Expansion Operator>:</Parameter Expansion Operator><Decimal>1</Decimal><Parameter Expansion Operator>:</Parameter Expansion Operator><Dollar Prefix>$</Dollar Prefix><Variable>b</Variable><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Parameter Expansion>$((</Parameter Expansion><Operator>++</Operator><Variable>i</Variable><Control>,</Control><Variable>i</Variable><Operator>--</Operator><Parameter Expansion>))</Parameter Expansion><br/> 0427 <Builtin>echo</Builtin><Normal Text> </Normal Text><String DoubleQ>"</String DoubleQ><Parameter Expansion>${</Parameter Expansion><Variable>var</Variable><Parameter Expansion Operator>#</Parameter Expansion Operator><Path>lo</Path><Glob>+(</Glob><Path>r</Path><Glob>)</Glob><Path>em</Path><Parameter Expansion>}</Parameter Expansion><String DoubleQ>"</String DoubleQ><Normal Text> x </Normal Text><String DoubleQ>"</String DoubleQ><Parameter Expansion>${</Parameter Expansion><Variable>var</Variable><Parameter Expansion Operator>#</Parameter Expansion Operator><Glob>+(</Glob><Path>r</Path><Glob>)</Glob><Path>em</Path><Parameter Expansion>}</Parameter Expansion><String DoubleQ>"</String DoubleQ><Normal Text> x</Normal Text><br/> 0428 <Builtin>echo</Builtin><Normal Text> </Normal Text><String DoubleQ>"</String DoubleQ><Parameter Expansion>${</Parameter Expansion><Variable>var</Variable><Parameter Expansion Operator>#</Parameter Expansion Operator><Path>refs/heads</Path><Parameter Expansion>}</Parameter Expansion><String DoubleQ>"</String DoubleQ><Normal Text> x </Normal Text><String DoubleQ>"</String DoubleQ><Parameter Expansion>${</Parameter Expansion><Variable>var</Variable><Parameter Expansion Operator>#</Parameter Expansion Operator><Normal Text>refs</Normal Text><Parameter Expansion>}</Parameter Expansion><String DoubleQ>"</String DoubleQ><Normal Text> x</Normal Text><br/> 0429 <Normal Text></Normal Text><br/> 0430 <Builtin>[</Builtin><Normal Text> a </Normal Text><Builtin>]</Builtin><br/> 0431 <Builtin>[</Builtin><Normal Text> </Normal Text><Expression>-f</Expression><Normal Text> f</Normal Text><String SingleQ>'f'</String SingleQ><Normal Text>f </Normal Text><Builtin>]</Builtin><br/> 0432 <Builtin>[</Builtin><Normal Text> </Normal Text><Expression>-f</Expression><Normal Text> f]</Normal Text><String SingleQ>'f'</String SingleQ><Normal Text>f] </Normal Text><Builtin>]</Builtin><br/> 0433 <Builtin>[</Builtin><Normal Text> </Normal Text><Expression>-t</Expression><Normal Text> 13 </Normal Text><Builtin>]</Builtin><br/> 0434 <Builtin>[</Builtin><Normal Text> </Normal Text><Expression>-t</Expression><Normal Text> 13] </Normal Text><Builtin>]</Builtin><br/> 0435 <Builtin>[</Builtin><Normal Text> </Normal Text><Expression>-t</Expression><Normal Text> 13] </Normal Text><Builtin>]</Builtin><br/> 0436 <Builtin>[</Builtin><Normal Text> </Normal Text><Expression>-v</Expression><Normal Text> abc </Normal Text><Builtin>]</Builtin><br/> 0437 <Builtin>[</Builtin><Normal Text> </Normal Text><Expression>-z</Expression><Normal Text> abc </Normal Text><Builtin>]</Builtin><br/> 0438 <Builtin>[</Builtin><Normal Text> abc </Normal Text><Expression>-ef</Expression><Normal Text> abc </Normal Text><Builtin>]</Builtin><br/> 0439 <Builtin>[</Builtin><Normal Text> abc </Normal Text><Expression>-ef</Expression><Normal Text> abc </Normal Text><Builtin>]</Builtin><br/> 0440 <Builtin>[</Builtin><Normal Text> abc-ef </Normal Text><Expression>-ef</Expression><Normal Text> abc-ef </Normal Text><Builtin>]</Builtin><br/> 0441 <Builtin>[</Builtin><Normal Text> abc </Normal Text><Expression>==</Expression><Normal Text> abc </Normal Text><Builtin>]</Builtin><br/> 0442 <Builtin>[</Builtin><Normal Text> abc </Normal Text><Error><</Error><Normal Text> abc </Normal Text><Builtin>]</Builtin><br/> 0443 <Builtin>[</Builtin><Normal Text> abc </Normal Text><Expression>-eq</Expression><Normal Text> abc </Normal Text><Builtin>]</Builtin><br/> 0444 <Keyword>[[</Keyword><Normal Text> abc </Normal Text><Expression>-eq</Expression><Normal Text> abc </Normal Text><Keyword>]]</Keyword><br/> 0445 <Builtin>[</Builtin><Normal Text> 1+2 </Normal Text><Expression>-eq</Expression><Normal Text> 1+2 </Normal Text><Builtin>]</Builtin><br/> 0446 <Keyword>[[</Keyword><Normal Text> 1+2 </Normal Text><Expression>-eq</Expression><Normal Text> 1+2 </Normal Text><Keyword>]]</Keyword><br/> 0447 <Builtin>[</Builtin><Normal Text> a </Normal Text><Expression>=</Expression><Normal Text> b </Normal Text><Error>c</Error><Normal Text> </Normal Text><OtherCommand>]</OtherCommand><br/> 0448 <Keyword>[[</Keyword><Normal Text> a </Normal Text><Expression>=</Expression><Normal Text> b </Normal Text><Error>c</Error><Normal Text> </Normal Text><OtherCommand>]]</OtherCommand><br/> 0449 <Builtin>[</Builtin><Normal Text> </Normal Text><Expression>-z</Expression><Normal Text> 1 </Normal Text><Expression>-a</Expression><Normal Text> 1 </Normal Text><Expression>-eq</Expression><Normal Text> 1 </Normal Text><Builtin>]</Builtin><br/> 0450 <Builtin>[</Builtin><Normal Text> 2 </Normal Text><Expression>-eq</Expression><Normal Text> 1 </Normal Text><Expression>-o</Expression><Normal Text> 1 </Normal Text><Expression>-eq</Expression><Normal Text> 1 </Normal Text><Builtin>]</Builtin><br/> 0451 <Keyword>[[</Keyword><Normal Text> x </Normal Text><Expression>=~</Expression><Normal Text> </Normal Text><Pattern>a</Pattern><Operator>(</Operator><Pattern>b c</Pattern><Glob>|</Glob><Operator>$)</Operator><String SingleQ>' '</String SingleQ><Parameter Expansion>{</Parameter Expansion><Decimal>1</Decimal><Parameter Expansion Operator>,</Parameter Expansion Operator><Parameter Expansion>}</Parameter Expansion><Operator>[</Operator><Pattern>a</Pattern><Parameter Expansion Operator>[.</Parameter Expansion Operator><Parameter Expansion>digit</Parameter Expansion><Parameter Expansion Operator>.]</Parameter Expansion Operator><Operator>]</Operator><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0452 <Keyword>[[</Keyword><Normal Text> x </Normal Text><Expression>=~</Expression><Normal Text> </Normal Text><Operator>[</Operator><Normal Text> </Normal Text><Error>] </Error><OtherCommand>]]</OtherCommand><br/> 0453 <Keyword>[[</Keyword><Normal Text> x </Normal Text><Expression>=~</Expression><Normal Text> </Normal Text><Operator>([</Operator><Pattern> </Pattern><Operator>])</Operator><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0454 <Keyword>[[</Keyword><Normal Text> x </Normal Text><Expression>=~</Expression><Normal Text> </Normal Text><Operator>[</Operator><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0455 <Keyword>[[</Keyword><Normal Text> x </Normal Text><Expression>=~</Expression><Normal Text> </Normal Text><Operator>([)</Operator><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0456 <Keyword>[[</Keyword><Normal Text> </Normal Text><Operator>(</Operator><Normal Text>a </Normal Text><Expression>=~</Expression><Normal Text> </Normal Text><Pattern>a</Pattern><Operator>)</Operator><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0457 <Keyword>[[</Keyword><Normal Text> a </Normal Text><Expression>=~</Expression><Normal Text> </Normal Text><Pattern>a</Pattern><Normal Text> </Normal Text><Control>||</Control><Normal Text> a </Normal Text><Expression>-eq</Expression><Normal Text> 2 </Normal Text><Keyword>]]</Keyword><br/> 0458 <Keyword>[[</Keyword><Normal Text> </Normal Text><Operator>(</Operator><Normal Text>a </Normal Text><Expression>=~</Expression><Normal Text> </Normal Text><Pattern>a</Pattern><Operator>)</Operator><Normal Text> </Normal Text><Control>||</Control><Normal Text> a </Normal Text><Expression>-eq</Expression><Normal Text> 2 </Normal Text><Keyword>]]</Keyword><br/> 0459 <Keyword>[[</Keyword><Normal Text> </Normal Text><Operator>(</Operator><Normal Text>0 </Normal Text><Expression>-le</Expression><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>b</Variable><Operator>)</Operator><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0460 <Keyword>[[</Keyword><Normal Text> </Normal Text><Operator>(</Operator><Normal Text> 0 </Normal Text><Expression>-le</Expression><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>b</Variable><Normal Text> </Normal Text><Operator>)</Operator><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0461 <Keyword>[[</Keyword><Normal Text> </Normal Text><Operator>(</Operator><Normal Text> 0 </Normal Text><Expression>-le</Expression><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>b</Variable><Normal Text> </Normal Text><Control>||</Control><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>b</Variable><Normal Text> </Normal Text><Expression>-le</Expression><Normal Text> 100 </Normal Text><Operator>)</Operator><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0462 <Keyword>[[</Keyword><Normal Text> a</Normal Text><Expression><</Expression><Normal Text>b </Normal Text><Keyword>]]</Keyword><br/> 0463 <Keyword>[[</Keyword><Normal Text> a </Normal Text><Expression><</Expression><Normal Text>b </Normal Text><Keyword>]]</Keyword><br/> 0464 <Keyword>[[</Keyword><Normal Text> a</Normal Text><Expression><</Expression><Normal Text> b </Normal Text><Keyword>]]</Keyword><br/> 0465 <Keyword>[[</Keyword><Normal Text> a </Normal Text><Expression><</Expression><Normal Text> b </Normal Text><Keyword>]]</Keyword><br/> 0466 <Keyword>[[</Keyword><Operator>(</Operator><Expression>!</Expression><Normal Text> </Normal Text><Expression>-d</Expression><Normal Text> </Normal Text><Path>.</Path><Operator>)</Operator><Keyword>]]</Keyword><br/> 0467 <Keyword>[[</Keyword><Normal Text> </Normal Text><Expression>!</Expression><Normal Text> </Normal Text><Expression>-d</Expression><Normal Text> </Normal Text><Path>.</Path><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0468 <Keyword>[[</Keyword><Normal Text> </Normal Text><Expression>!</Expression><Operator>(</Operator><Expression>-d</Expression><Normal Text> </Normal Text><Path>.</Path><Operator>)</Operator><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0469 <Keyword>[[</Keyword><Normal Text> </Normal Text><Expression>-f</Expression><Normal Text> a </Normal Text><Control>||</Control><Normal Text> </Normal Text><Expression>-f</Expression><Normal Text> b </Normal Text><Keyword>]]</Keyword><br/> 0470 <Keyword>[[</Keyword><Normal Text> </Normal Text><Expression>-f</Expression><Normal Text> a</Normal Text><Control>||</Control><Expression>-f</Expression><Normal Text> b </Normal Text><Keyword>]]</Keyword><br/> 0471 <Keyword>[[</Keyword><Normal Text> </Normal Text><Expression>!</Expression><Normal Text> </Normal Text><Operator>(</Operator><Normal Text>a </Normal Text><Expression>-eq</Expression><Normal Text> b</Normal Text><Operator>)</Operator><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0472 <Builtin>[</Builtin><Normal Text> </Normal Text><Expression>-d</Expression><Normal Text> </Normal Text><Backquote>`</Backquote><Builtin>echo</Builtin><Normal Text> .</Normal Text><Backquote>`</Backquote><Normal Text>] </Normal Text><Builtin>]</Builtin><br/> 0473 <Keyword>[[</Keyword><Normal Text> </Normal Text><Expression>-d</Expression><Normal Text> </Normal Text><Backquote>`</Backquote><Builtin>echo</Builtin><Normal Text> .</Normal Text><Backquote>`</Backquote><Normal Text>]] </Normal Text><Keyword>]]</Keyword><br/> 0474 <Keyword>[[</Keyword><Normal Text> a </Normal Text><Expression>!=</Expression><Normal Text> b </Normal Text><Control>&&</Control><Normal Text> </Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>a</Variable><Parameter Expansion>}</Parameter Expansion><Normal Text>a </Normal Text><Expression>=</Expression><Normal Text> b</Normal Text><Parameter Expansion>${</Parameter Expansion><Variable>b</Variable><Parameter Expansion>}</Parameter Expansion><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0475 <Keyword>[[</Keyword><br/> 0476 <Normal Text> 1 </Normal Text><Expression>-eq</Expression><Normal Text> 2</Normal Text><br/> 0477 <Keyword>]]</Keyword><br/> 0478 <Keyword>[[</Keyword><Normal Text> -</Normal Text><Control>&&</Control><Normal Text>- </Normal Text><Keyword>]]</Keyword><br/> 0479 <Keyword>[[</Keyword><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0480 <Keyword>[[</Keyword><Normal Text> </Normal Text><Expression>-f</Expression><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0481 <Keyword>[[</Keyword><Normal Text> </Normal Text><Expression>-f</Expression><Normal Text> [0-9a] </Normal Text><Keyword>]]</Keyword><br/> 0482 <Keyword>[[</Keyword><Normal Text> ?*[0-9] </Normal Text><Expression>=</Expression><Normal Text> </Normal Text><Glob>[^</Glob><Pattern>0</Pattern><Glob>-</Glob><Pattern>9</Pattern><Glob>]</Glob><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0483 <Keyword>[[</Keyword><Normal Text> -f </Normal Text><Expression>=</Expression><Normal Text> </Normal Text><Glob>?*[</Glob><Pattern>0</Pattern><Glob>-</Glob><Pattern>9</Pattern><Glob>]</Glob><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0484 <Keyword>[[</Keyword><Normal Text> ?*[0-9] </Normal Text><Expression>=</Expression><Normal Text> </Normal Text><Glob>?*[</Glob><Pattern>0</Pattern><Glob>-</Glob><Pattern>9</Pattern><Glob>]</Glob><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0485 <Keyword>[[</Keyword><Normal Text> </Normal Text><Path>a/sa[s</Path><Normal Text> </Normal Text><Expression>=</Expression><Normal Text> dsad</Normal Text><Glob>?*[</Glob><Pattern>0</Pattern><Glob>-</Glob><Pattern>9</Pattern><Glob>]</Glob><Normal Text>dsa</Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>ds</Variable><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0486 <Keyword>[[</Keyword><Normal Text> </Normal Text><Path>a/sa[s</Path><Normal Text> </Normal Text><Expression>=</Expression><Normal Text> </Normal Text><Path>dsad</Path><Glob>?*[</Glob><Pattern>0</Pattern><Glob>-</Glob><Pattern>9</Pattern><Glob>]</Glob><Path>ds/a</Path><Dollar Prefix>$</Dollar Prefix><Variable>ds</Variable><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0487 <Keyword>[[</Keyword><Normal Text> a </Normal Text><Expression>=~</Expression><Normal Text> </Normal Text><Operator>[</Operator><Pattern>12</Pattern><Operator>]</Operator><Pattern>a</Pattern><Operator>([</Operator><Pattern>!d</Pattern><Operator>]</Operator><Pattern>a</Pattern><Glob>?</Glob><Pattern>s</Pattern><Operator>[</Operator><Pattern>x</Pattern><Parameter Expansion Operator>[:</Parameter Expansion Operator><Parameter Expansion>alnum</Parameter Expansion><Parameter Expansion Operator>:]</Parameter Expansion Operator><Operator>]</Operator><Glob>|</Glob><Pattern>d</Pattern><Glob>?</Glob><Operator>)</Operator><Pattern>p</Pattern><Normal Text> </Normal Text><Keyword>]]</Keyword><br/> 0488 <Normal Text></Normal Text><br/> 0489 <Keyword>[[</Keyword><Normal Text> </Normal Text><Comment>#comm1</Comment><br/> 0490 <Normal Text> </Normal Text><Comment>#comm2</Comment><br/> 0491 <Normal Text> p[1] </Normal Text><Expression>==</Expression><Normal Text> p</Normal Text><Glob>[</Glob><Pattern>2</Pattern><Glob>]</Glob><br/> 0492 <Normal Text> </Normal Text><Comment>#comm3</Comment><br/> 0493 <Normal Text> </Normal Text><Comment>#comm4</Comment><br/> 0494 <Keyword>]]</Keyword><br/> 0495 <Normal Text></Normal Text><br/> 0496 <Keyword>[[</Keyword><Normal Text> </Normal Text><Comment>#comm1</Comment><br/> 0497 <Normal Text> </Normal Text><Comment>#comm2</Comment><br/> 0498 <Normal Text> </Normal Text><Expression>-f</Expression><Normal Text> p[2]</Normal Text><br/> 0499 <Normal Text> </Normal Text><Comment>#comm3</Comment><br/> 0500 <Normal Text> </Normal Text><Comment>#comm4</Comment><br/> 0501 <Keyword>]]</Keyword><br/> 0502 <Normal Text></Normal Text><br/> 0503 <Keyword>((</Keyword><Decimal>3</Decimal><Operator>+</Operator><Decimal>1</Decimal><Operator>+</Operator><Variable>a</Variable><Operator>+</Operator><Dollar Prefix>$</Dollar Prefix><Variable>c</Variable><Operator>*</Operator><Normal Text>(</Normal Text><Variable>x</Variable><Normal Text>) </Normal Text><Operator>&</Operator><Normal Text> </Normal Text><Hex>0x43422fd</Hex><Operator>+</Operator><Octal>03</Octal><Operator>-</Operator><Decimal>0</Decimal><Error>85</Error><Operator>/</Operator><Base>23#</Base><BaseN>D9a@_</BaseN><Operator>^</Operator><Decimal>8</Decimal><Keyword>))</Keyword><br/> 0504 <Keyword>((</Keyword><Decimal>1</Decimal><Operator>/</Operator><Normal Text>(</Normal Text><Decimal>2</Decimal><Operator>-</Operator><Normal Text>(</Normal Text><Variable>a</Variable><Operator>-</Operator><Decimal>4</Decimal><Normal Text>))</Normal Text><Keyword>))</Keyword><br/> 0505 <Normal Text></Normal Text><br/> 0506 <Comment># they are not arithmetic evaluations...</Comment><br/> 0507 <Keyword>((</Keyword><OtherCommand>cmd</OtherCommand><Normal Text> </Normal Text><Control>&&</Control><Normal Text> </Normal Text><OtherCommand>cmd</OtherCommand><Keyword>)</Keyword><Normal Text> </Normal Text><Control>||</Control><Normal Text> </Normal Text><OtherCommand>cmd</OtherCommand><Keyword>)</Keyword><br/> 0508 <Parameter Expansion>$(</Parameter Expansion><Keyword>(</Keyword><OtherCommand>cmd</OtherCommand><Normal Text> </Normal Text><Control>&&</Control><Normal Text> </Normal Text><OtherCommand>cmd</OtherCommand><Keyword>)</Keyword><Normal Text> </Normal Text><Control>||</Control><Normal Text> </Normal Text><OtherCommand>cmd</OtherCommand><Parameter Expansion>)</Parameter Expansion><br/> 0509 <Keyword>((</Keyword><Variable>cmd</Variable><Normal Text> </Normal Text><Control>&&</Control><br/> 0510 <Variable>cmd</Variable><Keyword>)</Keyword><Normal Text> </Normal Text><Control>||</Control><Normal Text> </Normal Text><OtherCommand>cmd</OtherCommand><Keyword>)</Keyword><br/> 0511 <Parameter Expansion>$((</Parameter Expansion><Variable>cmd</Variable><Normal Text> </Normal Text><Control>&&</Control><br/> 0512 <Variable>cmd</Variable><Parameter Expansion>)</Parameter Expansion><Normal Text> </Normal Text><Control>||</Control><Normal Text> </Normal Text><OtherCommand>cmd</OtherCommand><Parameter Expansion>)</Parameter Expansion><br/> 0513 <Normal Text></Normal Text><br/> 0514 <Keyword>{</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><br/> 0515 <Normal Text> </Normal Text><Builtin>echo</Builtin><br/> 0516 <Keyword>}</Keyword><br/> 0517 <Keyword>{</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Keyword>}</Keyword><br/> 0518 <Keyword>(</Keyword><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Builtin>echo</Builtin><Keyword>)</Keyword><br/> 0519 <Keyword>(</Keyword><Builtin>echo</Builtin><br/> 0520 <Normal Text> </Normal Text><Builtin>echo</Builtin><Keyword>)</Keyword><br/> 0521 <Keyword>(</Keyword><Builtin>echo</Builtin><Normal Text> a</Normal Text><Keyword>)</Keyword><br/> 0522 <Keyword>({</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> plop</Normal Text><Control>;</Control><Keyword>})</Keyword><br/> 0523 <Builtin>[</Builtin><Normal Text> a </Normal Text><Expression>-eq</Expression><Normal Text> 2 </Normal Text><Builtin>]</Builtin><Normal Text> </Normal Text><Control>||</Control><Normal Text> </Normal Text><Builtin>[</Builtin><Normal Text> a </Normal Text><Expression>-eq</Expression><Normal Text> 2] </Normal Text><Builtin>]</Builtin><Normal Text> </Normal Text><Control>&&</Control><Normal Text> </Normal Text><Keyword>[[</Keyword><Normal Text> a </Normal Text><Expression>-eq</Expression><Normal Text> 2 </Normal Text><Keyword>]]</Keyword><Normal Text> </Normal Text><Control>||</Control><Normal Text> </Normal Text><Keyword>[[</Keyword><Normal Text> a </Normal Text><Expression>!=</Expression><Normal Text> b </Normal Text><Keyword>]]</Keyword><Control>;</Control><br/> 0524 <Builtin>[</Builtin><Normal Text> a </Normal Text><Expression>-eq</Expression><Normal Text> 2 </Normal Text><Builtin>]</Builtin><Control>||</Control><Builtin>[</Builtin><Normal Text> a </Normal Text><Expression>-eq</Expression><Normal Text> 2] </Normal Text><Builtin>]</Builtin><Control>&&</Control><Keyword>[[</Keyword><Normal Text> a </Normal Text><Expression>-eq</Expression><Normal Text> 2 </Normal Text><Keyword>]]</Keyword><Control>||</Control><Keyword>[[</Keyword><Normal Text> a </Normal Text><Expression>!=</Expression><Normal Text> b </Normal Text><Keyword>]]</Keyword><Control>;</Control><br/> 0525 <Builtin>test</Builtin><Normal Text> a </Normal Text><Option>-eq</Option><Normal Text> b</Normal Text><br/> 0526 <Normal Text></Normal Text><br/> 0527 <Comment># functions</Comment><br/> 0528 <Function>a()</Function><Normal Text> </Normal Text><Keyword>{</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> x</Normal Text><Control>;</Control><Normal Text> </Normal Text><Keyword>}</Keyword><br/> 0529 <Function>a ()</Function><Normal Text> </Normal Text><Keyword>{</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> x</Normal Text><Control>;</Control><Normal Text> </Normal Text><Keyword>}</Keyword><br/> 0530 <Keyword>function</Keyword><Function> f</Function><Normal Text> </Normal Text><Keyword>{</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> x</Normal Text><Control>;</Control><Normal Text> </Normal Text><Keyword>}</Keyword><br/> 0531 <Function>kde.org()</Function><Normal Text> </Normal Text><Keyword>{</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> x</Normal Text><Control>;</Control><Normal Text> </Normal Text><Keyword>}</Keyword><br/> 0532 <Function>--func()</Function><Normal Text> </Normal Text><Keyword>{</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> x</Normal Text><Control>;</Control><Normal Text> </Normal Text><Keyword>}</Keyword><br/> 0533 <Normal Text></Normal Text><br/> 0534 <Comment># variables</Comment><br/> 0535 <Variable>a</Variable><Operator>=</Operator><Variable>(</Variable><Normal Text>a b c</Normal Text><Variable>)</Variable><br/> 0536 <Variable>a</Variable><Operator>=</Operator><String SingleQ>'a'</String SingleQ><br/> 0537 <Variable>a</Variable><Operator>+=</Operator><Normal Text>b</Normal Text><br/> 0538 <Variable>a</Variable><Parameter Expansion Operator>[</Parameter Expansion Operator><Decimal>1</Decimal><Parameter Expansion Operator>]</Parameter Expansion Operator><Operator>=</Operator><String SingleQ>'a'</String SingleQ><br/> 0539 <Variable>a</Variable><Parameter Expansion Operator>[</Parameter Expansion Operator><Dollar Prefix>$</Dollar Prefix><Variable>i</Variable><Parameter Expansion Operator>]</Parameter Expansion Operator><Operator>=</Operator><String SingleQ>'x'</String SingleQ><br/> 0540 <Variable>a</Variable><Parameter Expansion Operator>[</Parameter Expansion Operator><Parameter Expansion>$((</Parameter Expansion><br/> 0541 <Normal Text> </Normal Text><Decimal>2</Decimal><Operator>+</Operator><Decimal>4</Decimal><br/> 0542 <Parameter Expansion>))</Parameter Expansion><Parameter Expansion Operator>]</Parameter Expansion Operator><Operator>=</Operator><String SingleQ>'x'</String SingleQ><br/> 0543 <Variable>a</Variable><Operator>=</Operator><Variable>(</Variable><Parameter Expansion Operator>[</Parameter Expansion Operator><Normal Text>a</Normal Text><Parameter Expansion Operator>]</Parameter Expansion Operator><Variable>=</Variable><Normal Text>2 </Normal Text><Backquote>`</Backquote><Builtin>echo</Builtin><Backquote>`</Backquote><Normal Text> -s </Normal Text><Error>></Error><Normal Text> </Normal Text><String SingleQ>'ds'</String SingleQ><Variable>)</Variable><br/> 0544 <Variable>a</Variable><Operator>=</Operator><Variable>(</Variable><Comment>#comment</Comment><br/> 0545 <Normal Text>value#nocomment </Normal Text><Comment>#comment)</Comment><br/> 0546 <Variable>)</Variable><br/> 0547 <Variable>a</Variable><Operator>=</Operator><Normal Text>a </Normal Text><Command>cat</Command><br/> 0548 <Variable>a</Variable><Operator>=</Operator><Backquote>`</Backquote><Command>ls</Command><Backquote>`</Backquote><Normal Text> </Normal Text><Command>cat</Command><br/> 0549 <Normal Text></Normal Text><br/> 0550 <Comment># errors</Comment><br/> 0551 <OtherCommand>a</OtherCommand><Normal Text> a</Normal Text><Error>(</Error><OtherCommand>s</OtherCommand><Keyword>)</Keyword><Normal Text> </Normal Text><OtherCommand>a</OtherCommand><br/> 0552 <Normal Text></Normal Text><br/> 0553 <Comment># control structure</Comment><br/> 0554 <Control Flow>for</Control Flow><Normal Text> name </Normal Text><Keyword>in</Keyword><Normal Text> a b c </Normal Text><Escape>{d</Escape><Operator>,</Operator><Escape>e}</Escape><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>do</Control Flow><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>done</Control Flow><br/> 0555 <Control Flow>for</Control Flow><Normal Text> name</Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>do</Control Flow><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>done</Control Flow><br/> 0556 <Control Flow>for</Control Flow><Normal Text> name </Normal Text><Control Flow>do</Control Flow><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>done</Control Flow><br/> 0557 <Control Flow>for</Control Flow><Normal Text> </Normal Text><Keyword>((</Keyword><Variable>i</Variable><Operator>=</Operator><Decimal>0</Decimal><Control>;</Control><Variable>i</Variable><Operator><</Operator><Decimal>5</Decimal><Control>;</Control><Operator>++</Operator><Variable>i</Variable><Keyword>))</Keyword><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>do</Control Flow><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Dollar Prefix>$</Dollar Prefix><Variable>i</Variable><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>done</Control Flow><br/> 0558 <Control Flow>select</Control Flow><Normal Text> name </Normal Text><Keyword>in</Keyword><Normal Text> a </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>do</Control Flow><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>done</Control Flow><br/> 0559 <Control Flow>select</Control Flow><Normal Text> name</Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>do</Control Flow><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>done</Control Flow><br/> 0560 <Control Flow>if</Control Flow><Normal Text> </Normal Text><Builtin>:</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>then</Control Flow><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>elif</Control Flow><Normal Text> </Normal Text><Keyword>[[</Keyword><Normal Text> : </Normal Text><Keyword>]]</Keyword><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>then</Control Flow><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>else</Control Flow><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>fi</Control Flow><br/> 0561 <Control Flow>while</Control Flow><Normal Text> </Normal Text><Builtin>:</Builtin><Normal Text> </Normal Text><Control>||</Control><Normal Text> </Normal Text><Builtin>:</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>do</Control Flow><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>done</Control Flow><br/> 0562 <Control Flow>until</Control Flow><Normal Text> </Normal Text><Builtin>:</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Builtin>:</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>do</Control Flow><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>done</Control Flow><br/> 0563 <Control Flow>case</Control Flow><Normal Text> a </Normal Text><Keyword>in</Keyword><Normal Text> </Normal Text><Pattern>a</Pattern><Keyword>)</Keyword><Normal Text> </Normal Text><Control Flow>esac</Control Flow><br/> 0564 <Control Flow>case</Control Flow><Normal Text> a </Normal Text><Keyword>in</Keyword><Normal Text> </Normal Text><Pattern>a</Pattern><Keyword>)</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Control Flow>esac</Control Flow><br/> 0565 <Control Flow>case</Control Flow><Normal Text> pwd </Normal Text><Keyword>in</Keyword><Normal Text> </Normal Text><Keyword>(</Keyword><Pattern>patt1</Pattern><Keyword>)</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control>;</Control><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control Flow>;;</Control Flow><Normal Text> </Normal Text><Keyword>(</Keyword><Pattern>patt</Pattern><Glob>*</Glob><Keyword>)</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control Flow>;;&</Control Flow><Normal Text> </Normal Text><Pattern>patt</Pattern><Glob>?</Glob><Keyword>|</Keyword><Pattern>patt</Pattern><Keyword>)</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control Flow>;&</Control Flow><br/> 0566 <Pattern>patt</Pattern><Keyword>)</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><Control Flow>;;</Control Flow><Normal Text> </Normal Text><Control Flow>esac</Control Flow><br/> 0567 <Normal Text></Normal Text><br/> 0568 <Control Flow>for</Control Flow><Normal Text> name </Normal Text><Keyword>in</Keyword><Normal Text> a</Normal Text><br/> 0569 <Normal Text> </Normal Text><OtherCommand>b</OtherCommand><Normal Text> c </Normal Text><Control>;</Control><br/> 0570 <Control Flow>do</Control Flow><br/> 0571 <Builtin>echo</Builtin><br/> 0572 <Control Flow>done</Control Flow><br/> 0573 <Normal Text></Normal Text><br/> 0574 <Control Flow>case</Control Flow><Normal Text> a </Normal Text><Keyword>in</Keyword><br/> 0575 <Normal Text> </Normal Text><Pattern>a</Pattern><Escape>\(</Escape><Normal Text> </Normal Text><Keyword>|</Keyword><Normal Text> </Normal Text><Pattern>b</Pattern><Glob>*</Glob><Pattern>c</Pattern><Glob>?</Glob><Normal Text> </Normal Text><Keyword>)</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><br/> 0576 <Normal Text> </Normal Text><Keyword>(</Keyword><OtherCommand>b</OtherCommand><Dollar Prefix>$</Dollar Prefix><Variable>c</Variable><Keyword>)</Keyword><Normal Text> </Normal Text><Comment># no pattern</Comment><br/> 0577 <Normal Text> </Normal Text><Control Flow>;;</Control Flow><br/> 0578 <Normal Text> </Normal Text><Keyword>(</Keyword><Pattern>b</Pattern><Dollar Prefix>$</Dollar Prefix><Variable>c</Variable><Keyword>)</Keyword><Normal Text> </Normal Text><Control Flow>;;</Control Flow><br/> 0579 <Normal Text> </Normal Text><Comment># no pattern</Comment><br/> 0580 <Normal Text> </Normal Text><Keyword>(</Keyword><Pattern>b</Pattern><Dollar Prefix>$</Dollar Prefix><Variable>c</Variable><Keyword>)</Keyword><br/> 0581 <Control Flow>esac</Control Flow><br/> 0582 <Normal Text></Normal Text><br/> 0583 <Control Flow>case</Control Flow><Normal Text> </Normal Text><String DoubleQ>"</String DoubleQ><Dollar Prefix>$</Dollar Prefix><Variable>1</Variable><String DoubleQ>"</String DoubleQ><Normal Text> </Normal Text><Keyword>in</Keyword><br/> 0584 <Normal Text> </Normal Text><String DoubleQ>"a"</String DoubleQ><Keyword>)</Keyword><Normal Text> </Normal Text><OtherCommand>run_a</OtherCommand><Control>|&</Control><OtherCommand>a</OtherCommand><Control Flow>;;</Control Flow><br/> 0585 <Normal Text> </Normal Text><String DoubleQ>"b"</String DoubleQ><Keyword>)</Keyword><Normal Text> </Normal Text><OtherCommand>run_b</OtherCommand><Control Flow>;;</Control Flow><br/> 0586 <Normal Text> </Normal Text><String DoubleQ>"c"</String DoubleQ><Keyword>)</Keyword><Normal Text> </Normal Text><OtherCommand>run_c</OtherCommand><Control Flow>;;</Control Flow><br/> 0587 <Normal Text> </Normal Text><Glob>*</Glob><Keyword>)</Keyword><Normal Text> </Normal Text><Builtin>echo</Builtin><Normal Text> </Normal Text><String DoubleQ>"Plase choose between 'a', 'b' or 'c'"</String DoubleQ><Normal Text> </Normal Text><Control>&&</Control><Normal Text> </Normal Text><Builtin>exit</Builtin><Normal Text> 1</Normal Text><Control Flow>;;</Control Flow><br/> 0588 <Control Flow>esac</Control Flow><br/>