Warning, file /frameworks/syntax-highlighting/autotests/html/highlight.fish.html was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 <!DOCTYPE html> 0002 <html><head> 0003 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> 0004 <title>highlight.fish</title> 0005 <meta name="generator" content="KF5::SyntaxHighlighting - Definition (Fish) - Theme (Breeze Light)"/> 0006 </head><body style="background-color:#ffffff;color:#1f1c1b"><pre> 0007 <span style="color:#898887;">### Comments</span> 0008 <span style="color:#898887;"># </span><span style="color:#ca9219;background-color:#451e1a;font-weight:bold;">TODO</span> 0009 <span style="color:#898887;"># </span><span style="color:#0057ae;background-color:#e0e9f8;">BEGIN</span> 0010 <span style="color:#898887;"># fg sfg sfh sft</span> 0011 <span style="color:#898887;"># </span><span style="color:#0057ae;background-color:#e0e9f8;">END</span> 0012 <span style="color:#898887;">#</span> 0013 <span style="color:#898887;"># text in (parenthesis) is ok, (even</span> 0014 <span style="color:#898887;"># over several lines)</span> 0015 <span style="color:#898887;"># escaped \) and \( are ok</span> 0016 <span style="color:#898887;"># an unbalanced single </span><span style="color:#bf0303;text-decoration:underline;">)</span> is not ok 0017 <span style="color:#898887;"># This is due to fish comment handling in command substitutions</span> 0018 <span style="color:#898887;"># which cannot reasonably handled by kate syntax highlighting</span> 0019 0020 0021 <span style="color:#898887;">### Commands and paths</span> 0022 <span style="color:#644a9b;">ls</span> -l <span style="font-weight:bold;">|</span><span style="color:#644a9b;">sort</span> 0023 <span style="color:#644a9b;">ls</span> -1 0024 <span style="color:#0095ff;font-weight:bold;">/usr/bin/</span><span style="color:#644a9b;">ls</span> -l /usr/local/test/ -xyz <span style="color:#898887;"># option as indicator of CommandArgs context</span> 0025 <span style="color:#0095ff;font-weight:bold;">./bin/</span><span style="color:#644a9b;">ls</span> -l /usr/abc<span style="font-weight:bold;">**</span>/tes<span style="font-weight:bold;">?</span>/lkhlk -xyz <span style="color:#898887;"># tabulator as separator</span> 0026 <span style="color:#0095ff;font-weight:bold;">../bin/</span><span style="color:#644a9b;">ls</span> -l /usr/abc<span style="font-weight:bold;">**</span>/tes<span style="font-weight:bold;">?</span>/lkhlk 0027 <span style="color:#0095ff;font-weight:bold;">~/bin/</span><span style="color:#644a9b;">ls</span> -l ../usr/lo<span style="font-weight:bold;">\ </span>cal/test 0028 <span style="color:#0095ff;font-weight:bold;">~user/bin/</span><span style="color:#644a9b;">ls</span> -l /usr/<span style="color:#3daee9;">{</span>local<span style="font-weight:bold;">,</span>remote<span style="color:#3daee9;">}</span><span style="color:#bf0303;text-decoration:underline;">}</span>/test<span style="font-weight:bold;">|</span><span style="color:#644a9b;">cat</span> <span style="color:#898887;"># show error</span> 0029 <span style="color:#0095ff;font-weight:bold;">/usr/bin/../lib/</span><span style="color:#644a9b;">ls</span> -l /usr/local/test.<span style="font-weight:bold;">???</span><span style="font-weight:bold;">|</span><span style="color:#644a9b;">cat</span> 0030 <span style="color:#0095ff;font-weight:bold;">/usr/bin\ sdfg/</span><span style="color:#644a9b;">ls</span> -l /usr/local/test.<span style="font-weight:bold;">*</span> 0031 <span style="color:#0095ff;font-weight:bold;">usr/bin/</span><span style="color:#644a9b;">other</span> -l <span style="font-weight:bold;">~user</span>/local/test 0032 <span style="color:#0095ff;font-weight:bold;">\ usr/bin/</span><span style="color:#644a9b;">other</span> -l <span style="font-weight:bold;">~user</span>/local/test 0033 <span style="color:#0095ff;font-weight:bold;">/usr/bin/</span><span style="color:#644a9b;">lsother</span> 0034 <span style="color:#0095ff;font-weight:bold;">../test/root/bin/</span><span style="color:#644a9b;">fish</span> -c <span style="color:#bf0303;">"echo </span><span style="color:#0057ae;">$t8</span><span style="color:#bf0303;">"</span> 0035 <span style="color:#0095ff;font-weight:bold;">test/root/bin/</span><span style="color:#644a9b;">fish</span> -c <span style="color:#bf0303;">"echo </span><span style="color:#0057ae;">$t8</span><span style="color:#bf0303;">"</span> 0036 <span style="color:#0095ff;font-weight:bold;">u?r/bin/</span><span style="color:#644a9b;">ls</span> 0037 <span style="color:#0095ff;font-weight:bold;">usr/b?n/</span><span style="color:#644a9b;">ls</span> 0038 <span style="color:#0095ff;font-weight:bold;">u*</span><span style="color:#644a9b;">ls</span> <span style="color:#898887;"># doesn't work, but ok</span> 0039 <span style="color:#bf0303;">"ls"</span> /tmp/testtest <span style="color:#898887;"># Quotes in commands are expanded</span> 0040 <span style="color:#0095ff;font-weight:bold;">/us</span><span style="color:#bf0303;">"r/bin"</span><span style="color:#0095ff;font-weight:bold;">/xy/</span><span style="color:#644a9b;">ls</span> 0041 <span style="color:#644a9b;">abcd</span><span style="color:#bf0303;text-decoration:underline;">$</span><span style="color:#644a9b;">a</span> <span style="color:#898887;"># show error</span> 0042 <span style="color:#644a9b;">other</span><span style="color:#bf0303;text-decoration:underline;">)</span> abc <span style="color:#898887;"># show error</span> 0043 <span style="color:#bf0303;text-decoration:underline;"><</span>other abc <span style="color:#898887;"># show error</span> 0044 <span style="color:#644a9b;">other</span><span style="color:#ca60ca;">></span> abc <span style="color:#898887;"># ok</span> 0045 <span style="color:#644a9b;">oth</span><span style="color:#ca60ca;">></span>er abc <span style="color:#898887;"># ok</span> 0046 <span style="color:#644a9b;">ot</span><span style="color:#bf0303;text-decoration:underline;">(</span><span style="color:#644a9b;">her</span><span style="color:#bf0303;text-decoration:underline;">)</span> abc <span style="color:#898887;"># show error</span> 0047 0048 <span style="color:#644a9b;">ls</span> /ho<span style="color:#bf0303;">"me/te"</span>st<span style="color:#bf0303;">'user'</span>/abc<span style="color:#0057ae;">$dir</span><span style="color:#0057ae;">[3]</span>/ab<span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">echo</span> cdefg<span style="color:#3daee9;">)</span>cd/xyz 0049 <span style="color:#644a9b;">cat\ alog</span> -abc 0050 <span style="color:#644a9b;">ls</span> path_not_detected 0051 <span style="color:#644a9b;">ls</span> <span style="font-weight:bold;">*</span> no_path 0052 <span style="color:#644a9b;">ls</span> <span style="font-weight:bold;">*</span>path_detected 0053 <span style="color:#0095ff;font-weight:bold;">ls/</span> 0054 <span style="color:#644a9b;">ls</span><span style="font-weight:bold;">;</span><span style="color:#644a9b;font-weight:bold;">echo</span> xy 0055 <span style="color:#644a9b;">flex++</span> 0056 0057 <span style="color:#898887;">#specials</span> 0058 <span style="color:#644a9b;font-weight:bold;">command</span> -s <span style="color:#644a9b;">ls</span> 0059 <span style="color:#644a9b;font-weight:bold;">builtin</span> --names <span style="color:#644a9b;font-weight:bold;">jobs</span> 0060 <span style="color:#644a9b;font-weight:bold;">exec</span> <span style="color:#644a9b;">bash</span> 0061 <span style="color:#644a9b;font-weight:bold;">exec</span> <span style="color:#0057ae;">$test</span> 0062 <span style="color:#644a9b;font-weight:bold;">set</span> -e <span style="color:#0057ae;">i</span><span style="color:#0057ae;">[-1]</span> 0063 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="color:#0057ae;">test1</span><span style="color:#0057ae;">[-1..1]</span> <span style="color:#0057ae;">$test</span><span style="font-weight:bold;">;</span> <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$test1</span> 0064 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="color:#0057ae;">test1</span><span style="color:#0057ae;">[1..</span><span style="color:#0057ae;">$n</span><span style="color:#0057ae;">]</span> <span style="color:#0057ae;">$test</span><span style="font-weight:bold;">;</span> <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$test1</span> 0065 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="color:#0057ae;">test1</span><span style="color:#0057ae;">[</span><span style="color:#0057ae;">$n</span><span style="color:#0057ae;">..1]</span> <span style="color:#0057ae;">$test</span><span style="font-weight:bold;">;</span> <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$test1</span> 0066 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="color:#0057ae;">test1</span><span style="color:#0057ae;">[2..4 -2..-4]</span> <span style="color:#0057ae;">$test1</span><span style="color:#0057ae;">[4..2 -4..-2]</span><span style="font-weight:bold;">;</span> <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$test1</span> 0067 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="color:#0057ae;">page_url</span> http://fishshell.com/docs/<span style="color:#0057ae;">$version_string</span>/<span style="color:#0057ae;">$fish_help_page</span> <span style="color:#898887;"># ???</span> 0068 <span style="color:#644a9b;font-weight:bold;">string</span> <span style="color:#644a9b;font-weight:bold;">split</span> . example.com 0069 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="color:#0057ae;">b</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">string</span> <span style="color:#644a9b;font-weight:bold;">repeat</span> -n 512 x<span style="color:#3daee9;">)</span> 0070 0071 <span style="color:#644a9b;font-weight:bold;">read</span> -gi <span style="color:#0057ae;">test</span> <span style="color:#898887;"># ok</span> 0072 <span style="color:#644a9b;font-weight:bold;">read</span> -gi <span style="color:#0057ae;">$test</span> 0073 <span style="color:#644a9b;font-weight:bold;">read</span> -gi <span style="color:#bf0303;">"test"</span> 0074 <span style="color:#644a9b;font-weight:bold;">read</span> -gi <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">echo</span> test<span style="color:#3daee9;">)</span> 0075 0076 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="color:#0057ae;">x</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">string</span> <span style="color:#644a9b;font-weight:bold;">split</span> --max 1 --right / <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">status</span> current-filename<span style="color:#3daee9;">)</span> <span style="color:#898887;">#Comment test</span><span style="color:#3daee9;">)</span> 0077 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="color:#0057ae;">test</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">exec</span> <span style="color:#0057ae;">$cmd</span><span style="color:#3daee9;">)</span> 0078 0079 <span style="color:#898887;"># direct path</span> 0080 <span style="color:#644a9b;font-weight:bold;">test</span> <span style="color:#ca60ca;">-d </span><span style="color:#0057ae;">$tmpldir</span>/resources 0081 0082 <span style="color:#898887;">### Options</span> 0083 <span style="color:#644a9b;">cat</span> -l /usr/local/test<span style="color:#ca60ca;">></span>logfile 0084 <span style="color:#644a9b;">ls</span> --longopt<span style="color:#ca60ca;">=</span>/test 0085 <span style="color:#644a9b;">ls</span> -l<span style="color:#bf0303;">"kasdflakjs"</span> -r/usr/test -x../test/../bla -z<span style="font-weight:bold;">~xyz</span>/hello 0086 0087 <span style="color:#898887;">### Arguments</span> 0088 <span style="color:#644a9b;font-weight:bold;">echo</span> abc<span style="color:#bf0303;">"def"</span>ghi 0089 <span style="color:#644a9b;font-weight:bold;">echo</span> abc/def 0090 <span style="color:#644a9b;font-weight:bold;">echo</span> abc[de] 0091 <span style="color:#644a9b;font-weight:bold;">echo</span> abc<span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">echo</span> def<span style="color:#3daee9;">)</span>ghi 0092 <span style="color:#644a9b;font-weight:bold;">echo</span> abc<span style="color:#3daee9;">{</span>de<span style="font-weight:bold;">,</span>f<span style="color:#3daee9;">}</span>ghi 0093 0094 <span style="color:#898887;"># Path Detection</span> 0095 <span style="color:#644a9b;font-weight:bold;">cd</span> abc<span style="font-weight:bold;">*</span>efghi <span style="color:#898887;"># fish assumes * is glob -> path</span> 0096 <span style="color:#644a9b;font-weight:bold;">cd</span> abc<span style="font-weight:bold;">?</span>efghi 0097 <span style="color:#644a9b;font-weight:bold;">cd</span> .. 0098 <span style="color:#644a9b;font-weight:bold;">cd</span> .. <span style="color:#898887;">#</span> 0099 <span style="color:#644a9b;font-weight:bold;">cd</span> . 0100 <span style="color:#644a9b;font-weight:bold;">cd</span> . <span style="color:#898887;">#</span> 0101 <span style="color:#644a9b;font-weight:bold;">cd</span> <span style="font-weight:bold;">~</span> 0102 <span style="color:#644a9b;font-weight:bold;">cd</span> <span style="font-weight:bold;">~abc</span>/abc/<span style="font-weight:bold;">*</span>.txt 0103 <span style="color:#644a9b;font-weight:bold;">cd</span> ./abc 0104 <span style="color:#644a9b;font-weight:bold;">cd</span> ../abc 0105 <span style="color:#644a9b;font-weight:bold;">cd</span> <span style="font-weight:bold;">\ </span>abc/tmp<span style="font-weight:bold;">\ </span>.txt 0106 0107 <span style="color:#644a9b;font-weight:bold;">test</span> .. abc 0108 0109 <span style="color:#898887;">### Escapes</span> 0110 <span style="color:#644a9b;">touch</span> a<span style="font-weight:bold;">\?</span>bc<span style="font-weight:bold;">\[\]</span>ax<span style="font-weight:bold;">\~</span>dsf<span style="font-weight:bold;">\#</span>gsd<span style="font-weight:bold;">\a</span>f<span style="font-weight:bold;">\(\)</span>dg<span style="font-weight:bold;">\?</span>sd<span style="font-weight:bold;">\ </span>fg<span style="font-weight:bold;">\b</span>hh<span style="font-weight:bold;">\%</span>j<span style="font-weight:bold;">\$</span>k<span style="font-weight:bold;">\\</span>l<span style="font-weight:bold;">\?</span>sed<span style="font-weight:bold;">\*</span>jk<span style="font-weight:bold;">\></span>hj<span style="font-weight:bold;">\<</span>hou<span style="font-weight:bold;">\&</span>h<span style="font-weight:bold;">\;</span>hgkj<span style="font-weight:bold;">\^</span>kj<span style="font-weight:bold;">\"</span>kjh<span style="font-weight:bold;">\'</span>jhg 0111 <span style="color:#644a9b;">touch</span> sdf<span style="font-weight:bold;">\xa5</span>lh<span style="font-weight:bold;">\Xb7</span>kll<span style="font-weight:bold;">\157</span>j<span style="font-weight:bold;">\15</span>8hk<span style="font-weight:bold;">\ua47b</span>z<span style="font-weight:bold;">\U123b5678</span>fs<span style="font-weight:bold;">\cx</span>zdfga 0112 0113 <span style="color:#644a9b;">touch</span> <span style="color:#bf0303;">"a\?bc\[\]a"</span> <span style="color:#898887;"># no escaping in Quotes</span> 0114 <span style="color:#644a9b;">touch</span> fgh\y1 <span style="color:#898887;"># \y is no escape sequence in fish, show it as normal text like fish itself</span> 0115 0116 <span style="color:#898887;">### Builtins</span> 0117 <span style="color:#644a9b;font-weight:bold;">. </span>hallo 0118 <span style="color:#644a9b;font-weight:bold;">source</span> hallo 0119 <span style="color:#644a9b;font-weight:bold;">eval</span> <span style="color:#644a9b;">ls</span> . /tmp 0120 <span style="color:#644a9b;font-weight:bold;">eval</span> <span style="color:#644a9b;">ls</span> .../tmp 0121 <span style="color:#644a9b;font-weight:bold;">eval</span> <span style="color:#0057ae;">$var</span> 0122 <span style="color:#644a9b;font-weight:bold;">eval</span> <span style="color:#644a9b;">abc</span> 0123 <span style="color:#644a9b;font-weight:bold;">eval</span> <span style="color:#3daee9;">{</span>l<span style="font-weight:bold;">,</span>a<span style="color:#3daee9;">}</span><span style="color:#644a9b;">s</span> <span style="color:#898887;"># lists ./as. colours not ok, but we cut here</span> 0124 <span style="color:#644a9b;font-weight:bold;">eval</span> <span style="color:#bf0303;">"echo bla"</span> 0125 0126 <span style="color:#644a9b;font-weight:bold;">history</span> merge 0127 0128 <span style="color:#644a9b;font-weight:bold;">true</span> <span style="font-weight:bold;">;</span><span style="color:#644a9b;">ls</span> 0129 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">true</span><span style="color:#3daee9;">)</span> 0130 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">true</span> <span style="color:#898887;">#comment</span><span style="color:#3daee9;">)</span> 0131 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">true</span><span style="color:#ca60ca;">>></span>xyz/abc<span style="color:#3daee9;">)</span> 0132 <span style="color:#644a9b;font-weight:bold;">true</span> <span style="color:#bf0303;text-decoration:underline;">-error </span><span style="color:#898887;"># show error</span> 0133 <span style="color:#644a9b;font-weight:bold;">pwd</span> <span style="color:#ca60ca;">></span> abc 0134 0135 <span style="color:#644a9b;font-weight:bold;">command</span> -s <span style="color:#644a9b;">ls</span><span style="font-weight:bold;">;</span><span style="color:#644a9b;">cat</span> test 0136 <span style="color:#644a9b;font-weight:bold;">builtin</span> -n<span style="font-weight:bold;">;</span><span style="color:#644a9b;font-weight:bold;">builtin</span> <span style="color:#644a9b;font-weight:bold;">echo</span> 0137 0138 <span style="color:#644a9b;font-weight:bold;">complete</span> -c myprog -s o -l output -a <span style="color:#bf0303;">"yes no"</span> 0139 <span style="color:#644a9b;font-weight:bold;">builtin</span> <span style="color:#644a9b;font-weight:bold;">jobs</span> 0140 0141 <span style="color:#644a9b;font-weight:bold;">math</span> -s0 10.0 / 6.0 0142 0143 <span style="color:#898887;">#special keywords as directory names:</span> 0144 <span style="color:#0095ff;font-weight:bold;">/usr/function/</span><span style="color:#644a9b;">testtest</span> /usr/function/testtest 0145 <span style="color:#0095ff;font-weight:bold;">/usr/for/</span><span style="color:#644a9b;">testtest</span> /usr/for/testtest 0146 <span style="color:#0095ff;font-weight:bold;">/usr/begin/</span><span style="color:#644a9b;">testtest</span> /usr/begin/testtest 0147 <span style="color:#0095ff;font-weight:bold;">/usr/switch/</span><span style="color:#644a9b;">testtest</span> /usr/switch/testtest 0148 <span style="color:#0095ff;font-weight:bold;">/usr/if/</span><span style="color:#644a9b;">testtest</span> /usr/if/testtest 0149 <span style="color:#0095ff;font-weight:bold;">/usr/while/</span><span style="color:#644a9b;">testtest</span> /usr/while/testtest 0150 <span style="color:#0095ff;font-weight:bold;">/usr/command/</span><span style="color:#644a9b;">testtest</span> /usr/command/testtest 0151 <span style="color:#0095ff;font-weight:bold;">/usr/builtin/</span><span style="color:#644a9b;">testtest</span> /usr/builtin/testtest 0152 <span style="color:#0095ff;font-weight:bold;">/usr/eval/</span><span style="color:#644a9b;">testtest</span> /usr/eval/testtest 0153 <span style="color:#0095ff;font-weight:bold;">/usr/exec/</span><span style="color:#644a9b;">testtest</span> /usr/exec/testtest 0154 <span style="color:#0095ff;font-weight:bold;">/usr/set/</span><span style="color:#644a9b;">testtest</span> /usr/set/testtest 0155 <span style="color:#0095ff;font-weight:bold;">/usr/test/</span><span style="color:#644a9b;">testtest</span> /usr/test/testtest 0156 0157 <span style="color:#898887;">### test</span> 0158 <span style="color:#644a9b;font-weight:bold;">test</span> NUM1<span style="color:#ca60ca;"> -eq </span>NUM2 0159 <span style="color:#644a9b;font-weight:bold;">test</span> <span style="color:#ca60ca;">-f </span>/tmp/abc <span style="color:#ca60ca;">-a -e </span>/tmp/def<span style="font-weight:bold;">;</span><span style="color:#644a9b;">cat</span> /tmp/abc<span style="font-weight:bold;">;</span> 0160 0161 <span style="font-weight:bold;">if</span> <span style="color:#644a9b;font-weight:bold;">test</span> <span style="font-weight:bold;">\(</span> <span style="color:#ca60ca;">-f </span>/foo <span style="color:#ca60ca;">-o -f </span>/bar <span style="font-weight:bold;">\)</span> <span style="color:#ca60ca;">-a </span><span style="font-weight:bold;">\(</span> <span style="color:#ca60ca;">-f </span>/baz <span style="color:#ca60ca;">-o -f </span>/bat <span style="font-weight:bold;">\)</span> 0162 <span style="color:#644a9b;font-weight:bold;">echo</span> Success. 0163 <span style="font-weight:bold;">end</span> 0164 0165 <span style="color:#644a9b;font-weight:bold;">[ </span>25<span style="color:#ca60ca;"> -eq </span><span style="color:#0057ae;">$NUM2</span><span style="color:#644a9b;font-weight:bold;"> ]</span> 0166 <span style="color:#644a9b;font-weight:bold;">[ </span><span style="color:#bf0303;">"abc"</span> <span style="color:#ca60ca;">=</span> <span style="color:#bf0303;">"</span><span style="color:#0057ae;">$STRING2</span><span style="color:#bf0303;">"</span><span style="color:#644a9b;font-weight:bold;"> ]</span> 0167 0168 <span style="font-weight:bold;">if</span> <span style="color:#644a9b;font-weight:bold;">[ </span><span style="color:#ca60ca;">!</span> <span style="font-weight:bold;">\(</span>STRING1 <span style="color:#ca60ca;">!=</span> STRING2<span style="font-weight:bold;">\)</span><span style="color:#644a9b;font-weight:bold;"> ]</span><span style="font-weight:bold;">;</span><span style="color:#644a9b;">ls</span><span style="font-weight:bold;">;</span><span style="font-weight:bold;">end</span> 0169 <span style="font-weight:bold;">if</span> <span style="color:#644a9b;font-weight:bold;">[ </span><span style="color:#ca60ca;">-f </span>abc<span style="color:#644a9b;font-weight:bold;"> ]</span><span style="color:#bf0303;text-decoration:underline;">#</span> <span style="color:#bf0303;text-decoration:underline;">show error</span> 0170 <span style="font-weight:bold;">end</span> 0171 <span style="font-weight:bold;">if</span> <span style="color:#644a9b;font-weight:bold;">[ </span><span style="color:#ca60ca;">-f </span>abc<span style="color:#644a9b;font-weight:bold;"> ]</span> <span style="color:#898887;"># ok</span> 0172 <span style="font-weight:bold;">end</span> 0173 0174 <span style="font-weight:bold;">if</span> <span style="color:#644a9b;font-weight:bold;">[ </span><span style="color:#ca60ca;">!</span> <span style="font-weight:bold;">\(</span>STRING1 <span style="color:#ca60ca;">!=</span> STRING2<span style="font-weight:bold;">\)</span><span style="color:#644a9b;font-weight:bold;"> ]</span> <span style="color:#bf0303;text-decoration:underline;">ls</span><span style="font-weight:bold;">;</span><span style="font-weight:bold;">end</span> <span style="color:#898887;"># show error</span> 0175 <span style="font-weight:bold;">if</span> <span style="color:#644a9b;font-weight:bold;">[ </span><span style="color:#bf0303;">"abc"</span> <span style="color:#ca60ca;">!=</span> <span style="color:#bf0303;">"def"</span><span style="color:#644a9b;font-weight:bold;"> ]</span> <span style="color:#898887;"># hallo</span> 0176 <span style="color:#644a9b;font-weight:bold;">echo</span> x<span style="font-weight:bold;">;</span><span style="font-weight:bold;">end</span> 0177 0178 <span style="color:#898887;">### Redirections</span> 0179 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;"><</span> SOURCE_FILE <span style="color:#898887;"># stdin</span> 0180 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">></span> DESTINATION <span style="color:#898887;"># stdout</span> 0181 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">^</span> DESTINATION <span style="color:#898887;"># stderr</span> 0182 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">>></span> DESTINATION_FILE <span style="color:#898887;"># append</span> 0183 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">^^</span> DESTINATION_FILE <span style="color:#898887;"># append</span> 0184 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">>?</span> DESTINATION <span style="color:#898887;"># noclobber</span> 0185 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">^?</span> DESTINATION 0186 0187 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">^?</span> <span style="font-weight:bold;">~</span> 0188 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">^?</span> <span style="font-weight:bold;">~testuser</span>/abc 0189 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">^?</span>/DESTINATION 0190 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">^?</span><span style="color:#bf0303;text-decoration:underline;">#</span>DESTINATION <span style="color:#898887;"># show error</span> 0191 0192 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">></span> <span style="color:#0057ae;">$abc</span><span style="color:#0057ae;">[5]</span> 0193 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">></span><span style="color:#bf0303;">"abc"</span>/defg<span style="color:#0057ae;">$v</span>/xyz 0194 0195 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">></span><span style="color:#bf0303;text-decoration:underline;">&</span> <span style="color:#898887;"># show error</span> 0196 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">></span> <span style="color:#bf0303;text-decoration:underline;">&</span>1 <span style="color:#898887;"># show error</span> 0197 <span style="color:#644a9b;">ls</span> abc<span style="color:#ca60ca;">>&25</span> xyz /tmp/xyz <span style="color:#0057ae;">$abc</span> 0198 <span style="color:#644a9b;">ls</span> /tmp/tst<span style="color:#ca60ca;">>&25</span><span style="color:#bf0303;text-decoration:underline;">?</span> <span style="color:#898887;"># show error</span> 0199 <span style="color:#644a9b;">ls</span> /tmp/tst<span style="color:#ca60ca;">>&25</span> <span style="font-weight:bold;">?</span> <span style="color:#898887;"># ok</span> 0200 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">3>&-</span> xyz 0201 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">1<</span>DESTINATION 0202 <span style="color:#644a9b;font-weight:bold;">echo</span> Hello <span style="color:#ca60ca;">></span> all_output.txt <span style="color:#ca60ca;">^&1</span> xyz 0203 <span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">2>&-</span><span style="font-weight:bold;">;</span><span style="color:#644a9b;font-weight:bold;">echo</span> end 0204 <span style="color:#644a9b;">ls</span> xyz <span style="color:#ca60ca;">2>|</span><span style="color:#644a9b;">cat</span> 0205 0206 <span style="color:#644a9b;">ls</span><span style="color:#ca60ca;">></span>x 0207 <span style="color:#644a9b;">abs</span><span style="color:#ca60ca;">></span>x 0208 <span style="color:#0095ff;font-weight:bold;">/bin/</span><span style="color:#644a9b;">ls</span><span style="color:#ca60ca;">></span>x 0209 <span style="color:#0095ff;font-weight:bold;">/bin/</span><span style="color:#644a9b;">abs</span><span style="color:#ca60ca;">></span>x 0210 0211 <span style="color:#898887;">### Quoting</span> 0212 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#bf0303;">'abcdefg'</span> 0213 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#bf0303;">'abc</span><span style="font-weight:bold;">\'</span><span style="color:#bf0303;">de</span><span style="font-weight:bold;">\\</span><span style="color:#bf0303;">fg'</span> 0214 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#bf0303;">'abc\defg'</span> 0215 0216 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#bf0303;">"1</span><span style="font-weight:bold;">\"</span><span style="color:#bf0303;">23</span><span style="font-weight:bold;">\$</span><span style="color:#bf0303;">45</span><span style="font-weight:bold;">\\</span><span style="color:#bf0303;">6"</span> 0217 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#bf0303;">'1\"23\$45</span><span style="font-weight:bold;">\\</span><span style="color:#bf0303;">6'</span> 0218 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#bf0303;">'</span> 0219 <span style="color:#bf0303;">hallo</span> 0220 <span style="color:#bf0303;">'</span> 0221 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#bf0303;">"</span><span style="color:#0057ae;">$i</span><span style="color:#bf0303;">: '</span><span style="color:#0057ae;">$$name</span><span style="color:#0057ae;">[1][</span><span style="color:#0057ae;">$i</span><span style="color:#0057ae;">]</span><span style="color:#bf0303;">'"</span> 0222 0223 0224 <span style="color:#898887;">### Piping, Pipelines and background jobs</span> 0225 <span style="color:#644a9b;">ls</span> -l /tmp/hello <span style="color:#ca60ca;">1<</span>DEST<span style="font-weight:bold;">|</span> <span style="color:#644a9b;">sort</span> 0226 <span style="color:#644a9b;">comand_1</span><span style="font-weight:bold;">;</span><span style="color:#644a9b;">command_2</span> 0227 <span style="color:#644a9b;">comand_1</span> <span style="font-weight:bold;">;</span><span style="color:#644a9b;">command_2</span> 0228 <span style="color:#644a9b;">ls</span><span style="font-weight:bold;">;</span><span style="color:#644a9b;">ls</span> 0229 <span style="color:#644a9b;">run_long_job</span> <span style="font-weight:bold;">&</span> <span style="color:#644a9b;">ls</span> <span style="color:#898887;"># yes & is a command sequencing operator like | and ;</span> 0230 <span style="color:#644a9b;">cat</span> foo.txt <span style="font-weight:bold;">|</span> <span style="color:#644a9b;">head</span> 0231 <span style="color:#644a9b;">make</span> fish <span style="color:#ca60ca;">2>|</span> <span style="color:#644a9b;">less</span> <span style="color:#898887;">#show error</span> 0232 0233 <span style="color:#898887;">### Variable Expansion</span> 0234 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$PATH</span> 0235 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$PATH</span><span style="color:#0057ae;">[1..3]</span> 0236 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$PATH</span><span style="color:#0057ae;">[-1..3 5 9..15]</span> 0237 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$PATH</span><span style="color:#0057ae;">[</span><span style="color:#0057ae;">$n</span><span style="color:#0057ae;">[2]]</span> 0238 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$test</span><span style="color:#0057ae;">[1..</span><span style="color:#0057ae;">$n</span><span style="color:#0057ae;">]</span> 0239 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$test</span><span style="color:#0057ae;">[</span><span style="color:#0057ae;">$n</span><span style="color:#0057ae;">..1]</span> 0240 <span style="color:#644a9b;font-weight:bold;">echo</span> The plural of <span style="color:#0057ae;">$WORD</span> is <span style="color:#bf0303;">"</span><span style="color:#0057ae;">$WORD</span><span style="color:#bf0303;">"</span>s 0241 <span style="color:#644a9b;font-weight:bold;">echo</span> The plural of <span style="color:#0057ae;">$WORD</span> is <span style="color:#3daee9;">{</span><span style="color:#0057ae;">$WORD</span><span style="color:#3daee9;">}</span>s 0242 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$$foo</span><span style="color:#0057ae;">[</span><span style="color:#0057ae;">$i</span><span style="color:#0057ae;">]</span> 0243 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$test</span><span style="color:#0057ae;">[</span><span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">count</span> <span style="color:#0057ae;">$test</span><span style="color:#3daee9;">)</span><span style="color:#0057ae;">..1]</span> 0244 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$test</span><span style="color:#0057ae;">[1..</span><span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">count</span> <span style="color:#0057ae;">$test</span><span style="color:#0057ae;">[3]</span><span style="color:#3daee9;">)</span><span style="color:#0057ae;">]</span> 0245 0246 <span style="color:#898887;">#show error</span> 0247 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$PATH</span><span style="color:#0057ae;">[</span><span style="color:#bf0303;text-decoration:underline;">error</span> 0248 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$PATH</span><span style="color:#0057ae;">[1..</span><span style="color:#bf0303;text-decoration:underline;">error</span><span style="color:#0057ae;">]</span> 0249 0250 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$PATH</span><span style="color:#0057ae;">[1 2 34</span> <span style="color:#0057ae;">]</span> 0251 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$PATH</span><span style="color:#0057ae;">[1.. 2]</span> 0252 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$PATH</span><span style="color:#0057ae;">[1</span> <span style="color:#0057ae;">..2]</span> 0253 0254 <span style="color:#898887;">### Brace Expansion</span> 0255 <span style="color:#644a9b;font-weight:bold;">echo</span> input.<span style="color:#3daee9;">{</span>c<span style="font-weight:bold;">,</span>12h<span style="font-weight:bold;">,</span>TXT<span style="color:#3daee9;">}</span> 0256 <span style="color:#644a9b;font-weight:bold;">echo</span> input.<span style="color:#3daee9;">{</span>abc<span style="color:#0057ae;">$test</span><span style="color:#0057ae;">[</span><span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">count</span> <span style="color:#0057ae;">$test</span><span style="color:#3daee9;">)</span><span style="color:#0057ae;">..1]</span><span style="font-weight:bold;">,</span><span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$txt</span><span style="color:#3daee9;">)}</span> 0257 <span style="color:#644a9b;font-weight:bold;">echo</span> input.<span style="color:#3daee9;">{</span>a<span style="color:#3daee9;">{</span>b<span style="font-weight:bold;">,</span>c<span style="color:#3daee9;">}</span><span style="font-weight:bold;">,</span>12h<span style="font-weight:bold;">,</span>TXT<span style="color:#3daee9;">}</span><span style="color:#bf0303;text-decoration:underline;">}</span> <span style="color:#898887;"># show error</span> 0258 0259 0260 <span style="color:#898887;">### Index range expansion</span> 0261 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$a</span><span style="color:#3daee9;">)</span><span style="color:#0057ae;">[2..5]</span> 0262 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$a</span><span style="color:#3daee9;">)</span><span style="color:#0057ae;">[2..5 1..3]</span> 0263 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$a</span><span style="color:#3daee9;">)</span><span style="color:#0057ae;">[-1..1]</span> 0264 0265 <span style="color:#898887;">### Process expansion</span> 0266 <span style="color:#644a9b;font-weight:bold;">fg</span> <span style="color:#3daee9;">%</span><span style="color:#ff5500;">ema</span> <span style="color:#898887;"># ???</span> 0267 0268 0269 <span style="color:#898887;">### Command substitution</span> 0270 <span style="color:#644a9b;font-weight:bold;">echo</span> -n -s <span style="color:#bf0303;">"</span><span style="color:#0057ae;">$USER</span><span style="color:#bf0303;">"</span> @ <span style="color:#bf0303;">"</span><span style="color:#0057ae;">$__fish_prompt_hostname</span><span style="color:#bf0303;">"</span> <span style="color:#bf0303;">' '</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">set_color</span> <span style="color:#0057ae;">$color_cwd</span><span style="color:#3daee9;">)</span> <span style="color:#3daee9;">(</span><span style="color:#0095ff;font-weight:bold;">/usr/bin/</span><span style="color:#644a9b;">ls</span><span style="color:#3daee9;">)</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">set_color</span> normal<span style="color:#3daee9;">)</span> 0271 0272 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#898887;">#hallo</span><span style="color:#3daee9;">)</span>abc <span style="color:#898887;"># ok</span> 0273 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;">ls</span> <span style="color:#898887;">#hallo</span><span style="color:#3daee9;">)</span>abc <span style="color:#898887;"># ok, die context-Tiefe ist anders</span> 0274 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;">ls</span><span style="font-weight:bold;">;</span><span style="color:#898887;">#hallo</span><span style="color:#3daee9;">)</span>abc <span style="color:#898887;"># als hier.</span> 0275 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;">ls#hallo</span><span style="color:#3daee9;">)</span>abc <span style="color:#898887;"># ok: # may be inner part of function names!</span> 0276 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#0095ff;font-weight:bold;">/usr/bin/</span><span style="color:#644a9b;">ls</span><span style="color:#3daee9;">)</span> 0277 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;">ls</span> <span style="color:#ca60ca;">>></span>mem/abc<span style="color:#3daee9;">)</span> 0278 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$test</span><span style="color:#0057ae;">[2]</span><span style="color:#3daee9;">)</span> 0279 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="color:#0095ff;font-weight:bold;">/usr</span><span style="color:#bf0303;">"/bi"</span><span style="color:#0095ff;font-weight:bold;">n/</span><span style="color:#644a9b;">ls</span> /tmp<span style="color:#3daee9;">)</span> 0280 0281 <span style="color:#898887;"># multline command substitution</span> 0282 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="color:#0057ae;">x</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">echo</span> dirlist<span style="font-weight:bold;">;</span> <span style="color:#898887;"># blabla</span> 0283 <span style="color:#644a9b;">ls</span><span style="color:#3daee9;">)</span> 0284 0285 <span style="color:#898887;">## same, but commented out:</span> 0286 0287 <span style="color:#898887;"># set x (echo dirlist; # blabla</span> 0288 <span style="color:#898887;"># ls)</span> 0289 0290 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="color:#0057ae;">pi</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">math</span> <span style="color:#bf0303;">"scale=10; 4*a(1)"</span><span style="color:#3daee9;">)</span> 0291 0292 <span style="color:#898887;">### Continuation lines</span> 0293 <span style="color:#644a9b;">ls</span> <span style="font-weight:bold;">\</span> 0294 /usr/bin 0295 0296 <span style="color:#644a9b;font-weight:bold;">test</span> <span style="color:#bf0303;">"STRING1"</span><span style="color:#ca60ca;">=</span><span style="color:#bf0303;">"STRING2"</span> <span style="color:#ca60ca;">-a </span><span style="font-weight:bold;">\</span> 0297 <span style="color:#bf0303;">"STRING3"</span> <span style="color:#ca60ca;">=</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#bf0303;">"STRING4"</span><span style="color:#3daee9;">)</span> 0298 0299 <span style="color:#644a9b;font-weight:bold;">echo</span> input.<span style="color:#3daee9;">{</span>abc<span style="font-weight:bold;">\</span> 0300 <span style="font-weight:bold;">,</span>12h<span style="font-weight:bold;">,</span><span style="font-weight:bold;">\</span> 0301 TXT<span style="color:#3daee9;">}</span> 0302 0303 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#3daee9;">(</span><span style="font-weight:bold;">\</span> 0304 <span style="color:#644a9b;">ls</span><span style="color:#3daee9;">)</span> 0305 0306 <span style="color:#898887;"># no line continuation within single quotes</span> 0307 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#bf0303;">'abcdefg\</span> 0308 <span style="color:#bf0303;"> s$dfg sdf'</span> 0309 <span style="color:#898887;"># but within double quotes</span> 0310 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#bf0303;">"123456</span><span style="font-weight:bold;">\</span> 0311 <span style="color:#bf0303;"> 78910"</span> 0312 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$PATH</span><span style="color:#0057ae;">[1..3</span><span style="font-weight:bold;">\</span> 0313 <span style="color:#0057ae;">]</span> 0314 <span style="color:#644a9b;">ls</span> /usr<span style="font-weight:bold;">\</span> 0315 local/bin 0316 <span style="color:#644a9b;font-weight:bold;">echo</span> foo<span style="font-weight:bold;">\ </span>bar 0317 <span style="color:#644a9b;font-weight:bold;">echo</span> foo<span style="font-weight:bold;">\</span> 0318 bar 0319 0320 <span style="font-weight:bold;">for</span> <span style="color:#0057ae;">i</span> <span style="font-weight:bold;">\</span> 0321 <span style="font-weight:bold;">in</span> <span style="font-weight:bold;">\</span> 0322 a b c 0323 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$i</span> 0324 <span style="font-weight:bold;">end</span> 0325 0326 <span style="color:#898887;"># Bug?</span> 0327 <span style="color:#898887;"># Depending on weakDeliminators, either this works:</span> 0328 <span style="color:#644a9b;">cat\ alog</span> -abc 0329 <span style="color:#898887;"># or this:</span> 0330 <span style="color:#644a9b;">builtin</span><span style="font-weight:bold;">\</span> 0331 --names jobs 0332 <span style="color:#644a9b;font-weight:bold;">builtin</span> <span style="font-weight:bold;">\</span> 0333 --names <span style="color:#644a9b;font-weight:bold;">jobs</span> 0334 0335 <span style="color:#644a9b;font-weight:bold;">command</span> <span style="font-weight:bold;">\</span> 0336 <span style="color:#644a9b;">ls</span> 0337 0338 <span style="color:#644a9b;font-weight:bold;">eval</span> <span style="font-weight:bold;">\</span> 0339 <span style="color:#644a9b;">ls</span> . /tmp 0340 <span style="color:#644a9b;">eval</span><span style="font-weight:bold;">\</span> 0341 ls .../tmp 0342 0343 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="font-weight:bold;">\</span> 0344 -e <span style="color:#0057ae;">i</span><span style="color:#0057ae;">[-1]</span> 0345 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="font-weight:bold;">\</span> 0346 <span style="color:#0057ae;">test1</span><span style="color:#0057ae;">[-1..1]</span> <span style="font-weight:bold;">\</span> 0347 <span style="color:#0057ae;">$test</span><span style="font-weight:bold;">;</span> <span style="font-weight:bold;">\</span> 0348 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$test1</span> 0349 0350 <span style="color:#644a9b;font-weight:bold;">read</span> <span style="font-weight:bold;">\</span> 0351 -gi <span style="color:#0057ae;">test</span> 0352 0353 0354 0355 <span style="color:#898887;"># see https://github.com/fish-shell/fish-shell/pull/1987</span> 0356 <span style="color:#898887;"># this should work, but I found no way to implement it:</span> 0357 <span style="color:#644a9b;font-weight:bold;">echo</span> before comment <span style="font-weight:bold;">\</span> 0358 <span style="color:#898887;"># comment</span> 0359 <span style="color:#898887;"># comment2</span> 0360 <span style="color:#644a9b;">after</span> comment <span style="color:#898887;"># error: after should be just another argument</span> 0361 <span style="color:#644a9b;">from</span> root 0362 0363 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#bf0303;">"hello"</span> <span style="font-weight:bold;">|</span> <span style="font-weight:bold;">\</span> 0364 <span style="color:#898887;">#remove 'l'</span> 0365 <span style="color:#898887;">#and more</span> 0366 <span style="color:#644a9b;">tr</span> -d <span style="color:#bf0303;">'l'</span> 0367 0368 <span style="color:#898887;">### Trouble</span> 0369 <span style="color:#644a9b;">make</span><span style="font-weight:bold;">;</span> <span style="font-weight:bold;">and</span> <span style="color:#644a9b;">make</span> install<span style="font-weight:bold;">;</span> <span style="font-weight:bold;">or</span> <span style="color:#644a9b;">make</span> clean <span style="color:#898887;"># ok</span> 0370 <span style="color:#644a9b;font-weight:bold;">printf</span> <span style="color:#bf0303;">'%s\t%s\n'</span> flounder fish <span style="color:#898887;"># ok</span> 0371 <span style="color:#644a9b;">diff</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;">sort</span> a.txt <span style="font-weight:bold;">|</span> <span style="color:#644a9b;font-weight:bold;">psub</span><span style="color:#3daee9;">)</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;">sort</span> b.txt <span style="font-weight:bold;">|</span> <span style="color:#644a9b;font-weight:bold;">psub</span><span style="color:#3daee9;">)</span> 0372 <span style="color:#644a9b;">source-highlight</span> -f esc <span style="color:#3daee9;">(</span><span style="color:#644a9b;">cpp</span> main.c <span style="font-weight:bold;">|</span> <span style="color:#644a9b;font-weight:bold;">psub</span> -s .c<span style="color:#3daee9;">)</span> 0373 0374 <span style="font-weight:bold;">while</span> <span style="color:#644a9b;font-weight:bold;">test</span> <span style="color:#ca60ca;">-f </span>foo.txt <span style="color:#898887;"># comment</span> 0375 <span style="color:#644a9b;font-weight:bold;">echo</span> hallo 0376 <span style="font-weight:bold;">end</span> 0377 0378 <span style="font-weight:bold;">for</span> <span style="color:#0057ae;">i</span> <span style="font-weight:bold;">in</span> <span style="color:#3daee9;">{</span>1<span style="font-weight:bold;">,</span><span style="color:#3daee9;">(</span><span style="color:#644a9b;">ls</span><span style="color:#3daee9;">)</span><span style="font-weight:bold;">,</span>3<span style="color:#3daee9;">}</span> <span style="color:#898887;"># comment</span> 0379 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$i</span> 0380 <span style="font-weight:bold;">end</span> 0381 0382 <span style="color:#898887;"># function</span> 0383 <span style="font-weight:bold;">function</span> <span style="color:#644a9b;">__hidden</span> <span style="color:#898887;"># comment</span> 0384 <span style="color:#644a9b;font-weight:bold;">cd</span> / 0385 <span style="font-weight:bold;">end</span> 0386 0387 <span style="font-weight:bold;">function</span> <span style="color:#644a9b;">ll</span> <span style="font-weight:bold;">\</span> 0388 -d <span style="color:#607880;">"multiline</span> 0389 <span style="color:#607880;"> description"</span> 0390 <span style="color:#644a9b;">ls</span> -l <span style="color:#0057ae;">$argv</span> 0391 <span style="font-weight:bold;">end</span> 0392 0393 <span style="font-weight:bold;">function</span> <span style="color:#644a9b;">ls</span> --description=<span style="color:#607880;">"Description"</span> -a a b c <span style="color:#898887;"># comment</span> 0394 <span style="color:#644a9b;font-weight:bold;">command</span> <span style="color:#644a9b;">ls</span> --color<span style="color:#ca60ca;">=</span>auto <span style="color:#0057ae;">$argv</span> 0395 <span style="font-weight:bold;">if</span> <span style="color:#644a9b;font-weight:bold;">test</span> <span style="color:#ca60ca;">-f </span>foo.txt 0396 <span style="color:#644a9b;font-weight:bold;">echo</span> foo.txt exists 0397 <span style="font-weight:bold;">else</span> <span style="font-weight:bold;">if</span> <span style="color:#644a9b;font-weight:bold;">test</span> <span style="color:#ca60ca;">-f </span>bar.txt <span style="color:#898887;"># comment</span> 0398 <span style="color:#644a9b;font-weight:bold;">echo</span> bar.txt exists 0399 <span style="font-weight:bold;">else</span> 0400 <span style="color:#644a9b;font-weight:bold;">echo</span> foo.txt and bar.txt do not exist 0401 <span style="font-weight:bold;">end</span> <span style="color:#898887;"># comment</span> 0402 <span style="font-weight:bold;">end</span> 0403 0404 <span style="font-weight:bold;">function</span> <span style="color:#644a9b;">test</span><span style="font-weight:bold;">;</span><span style="color:#644a9b;font-weight:bold;">echo</span> hallo<span style="font-weight:bold;">;</span><span style="font-weight:bold;">end</span> <span style="color:#898887;"># comment</span> 0405 0406 <span style="font-weight:bold;">switch</span> <span style="color:#0057ae;">$animal</span> <span style="color:#898887;"># comment</span> 0407 <span style="font-weight:bold;">case</span> cat <span style="color:#898887;"># comment</span> 0408 <span style="color:#644a9b;font-weight:bold;">echo</span> evil 0409 <span style="font-weight:bold;">case</span> wolf <span style="font-weight:bold;">\</span> 0410 dog 0411 <span style="color:#644a9b;font-weight:bold;">echo</span> mammal 0412 <span style="font-weight:bold;">case</span> <span style="color:#bf0303;">'*'</span> 0413 <span style="color:#644a9b;font-weight:bold;">echo</span> I have no idea what a <span style="color:#0057ae;">$animal</span> is 0414 <span style="font-weight:bold;">end</span> 0415 0416 <span style="font-weight:bold;">if</span> <span style="color:#644a9b;font-weight:bold;">test</span> <span style="color:#3daee9;">(</span><span style="color:#644a9b;font-weight:bold;">count</span> <span style="color:#0057ae;">$argv</span><span style="color:#3daee9;">)</span> <span style="color:#ca60ca;">=</span> 1 0417 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#0057ae;">$argv</span> 0418 <span style="font-weight:bold;">else</span> 0419 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#bf0303;">"?"</span> 0420 <span style="font-weight:bold;">end</span> 0421 0422 <span style="font-weight:bold;">if</span> <span style="font-weight:bold;">not</span> <span style="color:#644a9b;font-weight:bold;">test</span> <span style="color:#ca60ca;">-f </span>spoon <span style="color:#898887;">#comment</span> 0423 <span style="color:#644a9b;font-weight:bold;">echo</span> There is no spoon 0424 <span style="font-weight:bold;">else</span> 0425 <span style="color:#644a9b;font-weight:bold;">exit</span> 1 0426 <span style="font-weight:bold;">end</span> 0427 0428 <span style="font-weight:bold;">for</span> <span style="color:#0057ae;">file</span> <span style="font-weight:bold;">in</span> <span style="color:#0057ae;">$cfgfiles</span> 0429 <span style="font-weight:bold;">if</span> <span style="color:#644a9b;font-weight:bold;">test</span> <span style="color:#ca60ca;">-f </span><span style="color:#0057ae;">$file</span> 0430 <span style="color:#644a9b;font-weight:bold;">string</span> <span style="color:#644a9b;font-weight:bold;">match</span> -r <span style="color:#bf0303;">'\[Dialer'</span> <span style="color:#ca60ca;"><</span> <span style="color:#0057ae;">$file</span> <span style="font-weight:bold;">|</span> <span style="color:#644a9b;font-weight:bold;">string</span> <span style="color:#644a9b;font-weight:bold;">replace</span> -r <span style="color:#bf0303;">'\[Dialer (.+)\]'</span> <span style="color:#bf0303;">'$1'</span> 0431 <span style="font-weight:bold;">end</span> 0432 <span style="font-weight:bold;">end</span> <span style="font-weight:bold;">|</span> <span style="color:#644a9b;">sort</span> -u <span style="font-weight:bold;">|</span> <span style="color:#644a9b;font-weight:bold;">string</span> <span style="color:#644a9b;font-weight:bold;">match</span> -v Defaults 0433 0434 <span style="font-weight:bold;">for</span> <span style="color:#0057ae;">i</span> <span style="font-weight:bold;">in</span> <span style="font-weight:bold;">*</span>.c 0435 <span style="font-weight:bold;">if</span> <span style="color:#644a9b;">grep</span> smurf <span style="color:#0057ae;">$i</span> <span style="color:#898887;"># comment</span> 0436 <span style="color:#644a9b;font-weight:bold;">echo</span> Smurfs are present in <span style="color:#0057ae;">$i</span> 0437 <span style="color:#644a9b;font-weight:bold;">break</span> 0438 <span style="font-weight:bold;">end</span> 0439 <span style="font-weight:bold;">end</span> 0440 0441 <span style="font-weight:bold;">if</span> <span style="font-weight:bold;">begin</span> <span style="color:#644a9b;font-weight:bold;">contains</span> -- <span style="color:#0057ae;">$argv</span> --force <span style="color:#898887;"># ohne ; nach begin: geht</span> 0442 <span style="font-weight:bold;">or</span> <span style="font-weight:bold;">not</span> <span style="color:#644a9b;font-weight:bold;">status</span> --is-interactive and not status --is-login 0443 <span style="font-weight:bold;">end</span> 0444 <span style="color:#644a9b;font-weight:bold;">echo</span> <span style="color:#bf0303;">""</span> 0445 <span style="font-weight:bold;">end</span> 0446 0447 <span style="font-weight:bold;">begin</span> <span style="color:#898887;"># comment</span> 0448 <span style="font-weight:bold;">for</span> <span style="color:#0057ae;">i</span> <span style="font-weight:bold;">in</span> <span style="font-weight:bold;">*</span>.tmp 0449 <span style="font-weight:bold;">if</span> <span style="color:#644a9b;">grep</span> smurf <span style="color:#0057ae;">$i</span> 0450 <span style="color:#644a9b;font-weight:bold;">continue</span> 0451 <span style="font-weight:bold;">end</span> 0452 <span style="color:#644a9b;">rm</span> <span style="color:#0057ae;">$i</span> 0453 <span style="font-weight:bold;">end</span> 0454 <span style="font-weight:bold;">end</span> 0455 0456 <span style="font-weight:bold;">if</span> <span style="color:#644a9b;font-weight:bold;">[ </span><span style="color:#0057ae;">$status</span><span style="color:#ca60ca;"> -eq </span>1<span style="color:#644a9b;font-weight:bold;"> ]</span> 0457 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="color:#0057ae;">sta</span> pass 0458 <span style="font-weight:bold;">else</span> 0459 <span style="color:#644a9b;font-weight:bold;">set</span> <span style="color:#0057ae;">sta</span> fail 0460 <span style="font-weight:bold;">end</span> 0461 0462 <span style="color:#644a9b;font-weight:bold;">exec</span> <span style="color:#bf0303;">"</span><span style="color:#0057ae;">$test</span><span style="color:#bf0303;">"</span> 0463 0464 0465 <span style="color:#898887;"># Process Expansion</span> 0466 <span style="color:#898887;"># see fish issue 4230</span> 0467 <span style="color:#644a9b;">kill</span> -STOP <span style="color:#3daee9;">%</span><span style="color:#ff5500;">self</span> 0468 0469 <span style="color:#644a9b;">endcmd</span> <span style="color:#898887;"># is a command</span> 0470 0471 <span style="font-weight:bold;">for</span> <span style="color:#0057ae;">inc</span> <span style="font-weight:bold;">in</span> a <span style="color:#898887;"># inc is a variable</span> 0472 <span style="font-weight:bold;">end</span> 0473 0474 <span style="font-weight:bold;">switch</span> d<span style="font-weight:bold;">;</span><span style="font-weight:bold;">case</span> <span style="color:#bf0303;">"*"</span> <span style="font-weight:bold;">;</span> <span style="font-weight:bold;">case</span> d<span style="font-weight:bold;">;</span><span style="color:#644a9b;font-weight:bold;">echo</span><span style="font-weight:bold;">;</span> <span style="font-weight:bold;">end</span> 0475 0476 <span style="font-weight:bold;">if</span> <span style="font-weight:bold;">;</span> <span style="font-weight:bold;">else</span> <span style="font-weight:bold;">if</span> <span style="font-weight:bold;">;</span> <span style="font-weight:bold;">else</span> <span style="font-weight:bold;">if</span> <span style="font-weight:bold;">;</span> <span style="font-weight:bold;">if</span> <span style="font-weight:bold;">;</span> <span style="font-weight:bold;">else</span> <span style="font-weight:bold;">;</span> <span style="font-weight:bold;">end</span><span style="font-weight:bold;">;</span><span style="font-weight:bold;">else</span> <span style="font-weight:bold;">;</span> <span style="font-weight:bold;">end</span> 0477 </pre></body></html>