File indexing completed on 2024-05-12 04:02:06

0001 <!DOCTYPE html>
0002 <html><head>
0003 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
0004 <title>highlight.awk</title>
0005 <meta name="generator" content="KF5::SyntaxHighlighting - Definition (AWK) - Theme (Breeze Dark)"/>
0006 </head><body style="background-color:#232629;color:#cfcfc2"><pre>
0007 <span style="color:#7a7c7d">#!/usr</span>
0008 <span style="color:#7a7c7d"># AWK hl test</span>
0009 
0010 <span style="color:#7a7c7d"># </span><span style="color:#2980b9;background-color:#153042">BEGIN</span><span style="color:#7a7c7d"> and </span><span style="color:#2980b9;background-color:#153042">END</span><span style="color:#7a7c7d"> are also matched as patterns</span>
0011 <span style="color:#fdbc4b">BEGIN</span> <span style="color:#3f8058">{</span>
0012     p <span style="color:#3f8058">=</span> <span style="color:#f67400">0</span><span style="color:#3f8058">;</span>
0013 <span style="color:#3f8058">}</span>
0014 
0015 <span style="color:#27ae60">/</span><span style="color:#da4453">some pattern</span><span style="color:#27ae60">/</span> <span style="color:#3f8058">{</span>
0016     p<span style="color:#3f8058">++</span><span style="color:#3f8058">;</span>
0017 <span style="color:#3f8058">}</span>
0018 
0019 <span style="color:#7a7c7d"># / inside brackets is not considered end of expression</span>
0020 <span style="color:#7a7c7d"># a loose division operator (/) is not mismatched as a pattern.</span>
0021 <span style="color:#2980b9">$1</span> <span style="color:#3f8058">=~</span> <span style="color:#27ae60">/[^</span><span style="color:#da4453">abc/</span><span style="color:#27ae60">]</span><span style="color:#da4453">def</span><span style="color:#27ae60">/</span> <span style="color:#3f8058">||</span> b <span style="color:#3f8058">==</span> <span style="color:#f67400">3</span> <span style="color:#3f8058">/</span> <span style="color:#f67400">5</span> <span style="color:#3f8058">{</span>
0022 
0023     <span style="color:#8e44ad">gsub</span> <span style="color:#3f8058">(</span> <span style="color:#7f8c8d">FILENAME</span> <span style="color:#3f8058">)</span><span style="color:#3f8058">;</span>
0024 
0025 <span style="color:#3f8058">}</span>
0026 
0027 <span style="color:#7a7c7d"># </span><span style="color:#ca9219;background-color:#451e1a;font-weight:bold">TODO</span><span style="color:#7a7c7d"> and </span><span style="color:#ca9219;background-color:#451e1a;font-weight:bold">FIXME</span><span style="color:#7a7c7d"> also work in comments in Awk.</span>
0028 
0029 <span style="color:#7a7c7d"># Also backslash in patterns works.</span>
0030 <span style="color:#27ae60">/\</span><span style="color:#3daee9">/</span><span style="color:#da4453">usr</span><span style="color:#27ae60">\</span><span style="color:#3daee9">/</span><span style="color:#da4453">bin</span><span style="color:#27ae60">\</span><span style="color:#3daee9">/</span><span style="color:#da4453">awk</span><span style="color:#27ae60">/</span> <span style="color:#3f8058">{</span> <span style="font-weight:bold">print</span> <span style="color:#f44f4f">"This is me"</span><span style="color:#3f8058">;</span> <span style="color:#3f8058">}</span>
0031 
0032 <span style="color:#fdbc4b">END</span> <span style="color:#3f8058">{</span>
0033     <span style="font-weight:bold">print</span> p<span style="color:#3f8058">;</span>
0034 <span style="color:#3f8058">}</span>
0035 
0036 <span style="font-weight:bold">function</span> myfunc<span style="color:#3f8058">()</span>
0037 <span style="color:#3f8058">{</span>
0038     <span style="font-weight:bold">print</span> <span style="color:#f67400">42</span>
0039 <span style="color:#3f8058">}</span>
0040 
0041 <span style="color:#27ae60">/</span><span style="color:#da4453">abc</span><span style="color:#27ae60">/</span><span style="color:#3f8058">,</span><span style="color:#27ae60">/</span><span style="color:#da4453">a</span><span style="color:#27ae60">[</span><span style="color:#da4453">b</span><span style="color:#27ae60">]</span><span style="color:#da4453">c</span><span style="color:#27ae60">/</span><span style="color:#3f8058">{</span>
0042     <span style="color:#7a7c7d"># parameter with a regex</span>
0043     <span style="color:#fdbc4b;font-weight:bold">if</span> <span style="color:#3f8058">(</span><span style="color:#8e44ad">match</span><span style="color:#3f8058">(</span><span style="color:#2980b9">$0</span><span style="color:#3f8058">,</span> <span style="color:#27ae60">/</span><span style="color:#da4453">a</span><span style="color:#27ae60">/</span><span style="color:#3f8058">))</span> <span style="color:#3f8058">{}</span>
0044 
0045     <span style="color:#f44f4f">"x</span><span style="color:#3daee9">\a</span><span style="color:#f44f4f">x</span><span style="color:#3daee9">\n</span><span style="color:#f44f4f">x</span><span style="color:#3daee9">\</span><span style="color:#da4453;text-decoration:underline">e</span><span style="color:#f44f4f">x</span><span style="color:#3daee9">\</span><span style="color:#da4453;text-decoration:underline">z</span><span style="color:#f44f4f">x</span><span style="color:#3daee9">\023</span><span style="color:#f44f4f">x</span><span style="color:#3daee9">\2</span><span style="color:#f44f4f">x</span><span style="color:#3daee9">\xff</span><span style="color:#f44f4f">x</span><span style="color:#3daee9">\xFf\xa</span><span style="color:#f44f4f">x</span><span style="color:#3daee9">\12</span><span style="color:#f44f4f">x"</span>
0046 
0047     a <span style="color:#3f8058">=~</span> <span style="color:#27ae60">/[</span><span style="color:#0099ff;font-weight:bold">[:alpha:]</span><span style="color:#27ae60">]/</span>
0048     a <span style="color:#3f8058">=~</span> <span style="color:#27ae60">/[</span><span style="color:#da4453">xx</span><span style="color:#0099ff;font-weight:bold">[:alpha:]</span><span style="color:#da4453">xx</span><span style="color:#27ae60">]/</span>
0049     a <span style="color:#3f8058">=~</span> <span style="color:#27ae60">/[</span><span style="color:#da4453">a</span><span style="color:#27ae60">-</span><span style="color:#da4453">z</span><span style="color:#0099ff;font-weight:bold">[:alpha:]</span><span style="color:#da4453">xx-</span><span style="color:#27ae60">]/</span>
0050     a <span style="color:#3f8058">=~</span> <span style="color:#27ae60">/[</span><span style="color:#da4453">]a</span><span style="color:#27ae60">]/</span>
0051     a <span style="color:#3f8058">=~</span> <span style="color:#27ae60">/[</span><span style="color:#da4453">-a</span><span style="color:#27ae60">]/</span>
0052     a <span style="color:#3f8058">=~</span> <span style="color:#27ae60">/[^</span><span style="color:#da4453">]a</span><span style="color:#27ae60">]/</span>
0053     a <span style="color:#3f8058">=~</span> <span style="color:#27ae60">/[^</span><span style="color:#da4453">-a</span><span style="color:#27ae60">]/</span>
0054     a <span style="color:#3f8058">=~</span> <span style="color:#27ae60">/[</span><span style="color:#da4453">a</span><span style="color:#27ae60">]</span><span style="color:#da4453">a</span><span style="color:#27ae60">\</span><span style="color:#3daee9">/</span><span style="color:#27ae60">\</span><span style="color:#3daee9">n</span><span style="color:#27ae60">/</span>
0055     <span style="color:#7a7c7d"># incomplete regex</span>
0056     a <span style="color:#3f8058">=~</span> <span style="color:#27ae60">/[</span><span style="color:#da4453">xx</span><span style="color:#0099ff;font-weight:bold">[:</span><span style="color:#27ae60">alph</span>
0057     a <span style="color:#3f8058">=</span> <span style="color:#f67400">23.2</span>
0058 <span style="color:#3f8058">}</span>
0059 </pre></body></html>