1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
<!DOCTYPE html>
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>highlight.pl</title>
<meta name="generator" content="KF5::SyntaxHighlighting - Definition (Perl) - Theme (Breeze Dark)"/>
</head><body style="background-color:#232629;color:#cfcfc2"><pre>
<span style="font-weight:bold">#!/usr/bin/perl -w</span>
<span style="color:#7a7c7d"># This is a pseudo Perl file to test Kate's Perl syntax highlighting.</span>
<span style="color:#7a7c7d"># </span><span style="color:#ca9219;background-color:#451e1a;font-weight:bold">TODO</span><span style="color:#7a7c7d">: this is incomplete, add more syntax examples!</span>
<span style="font-weight:bold">sub </span><span style="color:#8e44ad">prg</span>(<span style="color:#2980b9">$</span>)
{
<span style="font-weight:bold">my</span> <span style="color:#2980b9">$var</span> = <span style="color:#8e44ad">shift</span>;
<span style="color:#2980b9">$var</span> =~ <span style="color:#27ae60;font-weight:bold">s/</span><span style="color:#27ae60">bla</span><span style="color:#27ae60;font-weight:bold">/</span><span style="color:#f44f4f">foo</span><span style="color:#27ae60;font-weight:bold">/igs</span>;
<span style="color:#2980b9">$var</span> =~ <span style="color:#27ae60;font-weight:bold">s!</span><span style="color:#27ae60">bla</span><span style="color:#27ae60;font-weight:bold">!</span><span style="color:#f44f4f">foo</span><span style="color:#27ae60;font-weight:bold">!igs</span>;
<span style="color:#2980b9">$var</span> =~ <span style="color:#27ae60;font-weight:bold">s#</span><span style="color:#27ae60">bla</span><span style="color:#27ae60;font-weight:bold">#</span><span style="color:#f44f4f">foo</span><span style="color:#27ae60;font-weight:bold">#igs</span>;
<span style="color:#2980b9">$var</span> =~ <span style="color:#27ae60;font-weight:bold">tr</span><span style="color:#27ae60">/a-z/A-Z/</span>;
(<span style="color:#2980b9">$match</span>) = (<span style="color:#2980b9">$var</span> =~ <span style="color:#27ae60;font-weight:bold">m/</span><span style="color:#3daee9">(</span><span style="color:#27ae60">.</span><span style="color:#3daee9">*?)</span><span style="color:#27ae60;font-weight:bold">/igs</span>);
<span style="color:#2980b9">$test</span> = <span style="color:#f67400">2</span>/<span style="color:#f67400">453453.21</span>;
<span style="color:#2980b9">$test</span> /= <span style="color:#f67400">2</span>;
<span style="color:#8e44ad">print</span> <span style="color:#27ae60;font-weight:bold">qq~</span><span style="color:#f44f4f">d fsd fsdf sdfl sd</span><span style="color:#27ae60;font-weight:bold">~</span>
<span style="color:#da4453">$"</span> = <span style="color:#27ae60;font-weight:bold">'</span><span style="color:#da4453">/</span><span style="color:#27ae60;font-weight:bold">'</span>;
<span style="color:#2980b9">$foo</span> = <span style="color:#27ae60;font-weight:bold"><<</span><span style="font-weight:bold">__EOF;</span>
<span style="color:#f44f4f">d ahfdklf klsdfl sdf sd</span>
<span style="color:#f44f4f">fsd sdf sdfsdlkf sd</span>
<span style="font-weight:bold">__EOF</span>
<span style="color:#2980b9">$x</span> = <span style="color:#27ae60;font-weight:bold">"</span><span style="color:#f44f4f">dasds</span><span style="color:#27ae60;font-weight:bold">"</span>;
<span style="font-weight:bold">next</span> <span style="font-weight:bold">if</span>( <span style="color:#2980b9">$match</span> <span style="color:#27ae60;font-weight:bold">eq</span> <span style="color:#27ae60;font-weight:bold">"</span><span style="color:#f44f4f">two</span><span style="color:#27ae60;font-weight:bold">"</span> );
<span style="font-weight:bold">next</span> <span style="font-weight:bold">if</span>( <span style="color:#2980b9">$match</span> =~ <span style="color:#27ae60;font-weight:bold">/</span><span style="color:#27ae60">go</span><span style="color:#27ae60;font-weight:bold">/i</span> );
<span style="color:#2980b9">@array</span> = (<span style="color:#f67400">1</span>,<span style="color:#f67400">2</span>,<span style="color:#f67400">3</span>); <span style="color:#7a7c7d"># a comment</span>
<span style="color:#7a7c7d"># Test qw versions with special ending characters</span>
<span style="color:#2980b9">@array</span> = <span style="color:#27ae60;font-weight:bold">qw(</span>apple foo bar<span style="color:#27ae60;font-weight:bold">)</span>;
<span style="color:#2980b9">@array</span> = <span style="color:#27ae60;font-weight:bold">qw[</span>apple foo bar<span style="color:#27ae60;font-weight:bold">]</span>;
<span style="color:#2980b9">@array</span> = <span style="color:#27ae60;font-weight:bold">qw{</span>apple foo bar<span style="color:#27ae60;font-weight:bold">}</span>;
<span style="color:#2980b9">@array</span> = <span style="color:#27ae60;font-weight:bold">qw<</span>apple foo bar<span style="color:#27ae60;font-weight:bold">></span>;
<span style="color:#2980b9">@array</span> = <span style="color:#27ae60;font-weight:bold">qw(</span>
multi
line
test
<span style="color:#27ae60;font-weight:bold">)</span>;
<span style="color:#7a7c7d"># Test qw with non special ending characters;</span>
<span style="color:#2980b9">@array</span> = <span style="color:#27ae60;font-weight:bold">qw/</span>apple foo bar<span style="color:#27ae60;font-weight:bold">/</span>;
<span style="color:#2980b9">@array</span> = <span style="color:#27ae60;font-weight:bold">qw|</span>apple foo bar<span style="color:#27ae60;font-weight:bold">|</span>;
<span style="color:#2980b9">@array</span> = <span style="color:#27ae60;font-weight:bold">qw@</span>apple foo bar<span style="color:#27ae60;font-weight:bold">@</span>;
<span style="color:#2980b9">@array</span> = <span style="color:#27ae60;font-weight:bold">qw!</span>apple foo bar<span style="color:#27ae60;font-weight:bold">!</span>;
<span style="color:#2980b9">@array</span> = <span style="color:#27ae60;font-weight:bold">qw"</span>apple foo bar<span style="color:#27ae60;font-weight:bold">"</span>;
<span style="color:#2980b9">@array</span> = <span style="color:#27ae60;font-weight:bold">qw'</span>apple foo bar<span style="color:#27ae60;font-weight:bold">'</span>;
<span style="color:#8e44ad">push</span>(<span style="color:#2980b9">@array</span>, <span style="color:#f67400">4</span>);
<span style="color:#2980b9">%hash</span> = (red => <span style="color:#27ae60;font-weight:bold">'</span><span style="color:#da4453">rot</span><span style="color:#27ae60;font-weight:bold">'</span>,
blue => <span style="color:#27ae60;font-weight:bold">'</span><span style="color:#da4453">blau</span><span style="color:#27ae60;font-weight:bold">'</span>);
<span style="color:#8e44ad">print</span> <span style="color:#8e44ad">keys</span>(<span style="color:#2980b9">%hash</span>);
}
<span style="font-weight:bold">sub </span><span style="color:#8e44ad">blah</span> {
<span style="font-weight:bold">my</span> <span style="color:#2980b9">$str</span> = <span style="color:#27ae60;font-weight:bold"><<</span><span style="font-weight:bold"> ' EOS';</span>
this is my string
and it's continuation
<span style="font-weight:bold"> EOS</span>
<span style="color:#2980b9">$str</span> = <span style="color:#27ae60;font-weight:bold">"</span><span style="color:#f44f4f">hello world</span><span style="color:#27ae60;font-weight:bold">"</span>;
<span style="color:#2980b9">$str</span> = <span style="color:#27ae60;font-weight:bold"><<</span><span style="font-weight:bold"> " EOS";</span>
<span style="color:#f44f4f"> this is my string</span>
<span style="color:#f44f4f"> and it's continuation</span>
<span style="font-weight:bold"> EOS</span>
}
&blah;
prg(<span style="color:#27ae60;font-weight:bold">"</span><span style="color:#f44f4f">test</span><span style="color:#27ae60;font-weight:bold">"</span>);
<span style="color:#7a7c7d"># Bracket closures in RegExp patterns (bug #364866)</span>
<span style="color:#27ae60;font-weight:bold">qr{</span><span style="color:#27ae60"> </span><span style="color:#3daee9">$</span><span style="color:#27ae60">{var} aa{aa{a}a} aa</span><span style="color:#3daee9">*</span><span style="color:#27ae60">b</span><span style="color:#3daee9">?</span><span style="color:#27ae60;font-weight:bold">}</span>;
<span style="color:#27ae60;font-weight:bold">qr(</span><span style="color:#27ae60">aa</span><span style="color:#3daee9">(</span><span style="color:#27ae60">a</span><span style="color:#3daee9">(</span><span style="color:#27ae60">a</span><span style="color:#3daee9">(</span><span style="color:#27ae60">a</span><span style="color:#3daee9">(</span><span style="color:#27ae60">b</span><span style="color:#3daee9">|</span><span style="color:#27ae60">c</span><span style="color:#3daee9">)</span><span style="color:#27ae60">a</span><span style="color:#3daee9">)</span><span style="color:#27ae60">a</span><span style="color:#3daee9">)</span><span style="color:#27ae60">a</span><span style="color:#3daee9">)</span><span style="color:#27ae60">aa</span><span style="color:#3daee9">*</span><span style="color:#27ae60">b</span><span style="color:#3daee9">?</span><span style="color:#27ae60;font-weight:bold">)</span>;
<span style="color:#27ae60;font-weight:bold">s{</span><span style="color:#27ae60">aaa {aaa} a </span><span style="color:#da4453">\x{A2}</span><span style="color:#27ae60"> </span><span style="color:#3daee9">*</span><span style="color:#27ae60">b</span><span style="color:#3daee9">?</span><span style="color:#27ae60;font-weight:bold">}{</span><span style="color:#f44f4f">aa</span><span style="color:#27ae60;font-weight:bold">}</span>;
<span style="color:#27ae60;font-weight:bold">s(</span><span style="color:#27ae60">aa</span><span style="color:#3daee9">(</span><span style="color:#27ae60">a</span><span style="color:#3daee9">(</span><span style="color:#27ae60">a</span><span style="color:#3daee9">(</span><span style="color:#27ae60">a</span><span style="color:#3daee9">(</span><span style="color:#27ae60">b</span><span style="color:#3daee9">|</span><span style="color:#27ae60">c</span><span style="color:#3daee9">)</span><span style="color:#27ae60">a</span><span style="color:#3daee9">)</span><span style="color:#27ae60">a</span><span style="color:#3daee9">)</span><span style="color:#27ae60">a</span><span style="color:#3daee9">)</span><span style="color:#27ae60">aa</span><span style="color:#27ae60;font-weight:bold">)(</span><span style="color:#f44f4f">aa</span><span style="color:#27ae60;font-weight:bold">)</span>;
<span style="color:#7a7c7d"># Strings as scalar references (bug #348765)</span>
<span style="color:#2980b9">$x</span> = \<span style="color:#27ae60;font-weight:bold">'</span><span style="color:#da4453">Reference of a String</span><span style="color:#27ae60;font-weight:bold">'</span>;
<span style="color:#2980b9">$y</span> = \<span style="color:#27ae60;font-weight:bold">"</span><span style="color:#f44f4f">Reference of a String</span><span style="color:#27ae60;font-weight:bold">"</span>;
<span style="color:#7a7c7d"># Variables that start with underscore (bug #355300)</span>
<span style="color:#2980b9">$_variable</span>
<span style="color:#da4453">$_</span> <span style="color:#7a7c7d"># Reserved var.</span>
<span style="font-weight:bold">for</span> <span style="font-weight:bold">my</span> <span style="color:#2980b9">$x</span> (<span style="color:#2980b9">$hash</span>->{arr}-><span style="color:#2980b9">@</span><span style="color:#27ae60;font-weight:bold">*</span>) {
<span style="font-weight:bold">for</span> <span style="font-weight:bold">my</span> <span style="color:#2980b9">$k</span> (<span style="color:#8e44ad">keys</span> <span style="color:#2980b9">$k</span>->%<span style="color:#27ae60;font-weight:bold">*</span>) {
...
}
}
<span style="color:#7a7c7d"># Highlight correctly operator // (bug #407327)</span>
<span style="color:#2980b9">$x</span> = ns // <span style="color:#27ae60;font-weight:bold">""</span>;
<span style="color:#8e44ad">print</span> <span style="color:#2980b9">$x</span>;
</pre></body></html>
|