File indexing completed on 2024-05-12 04:02:05
0001 #!/usr/bin/perl -w 0002 # This is a pseudo Perl file to test Kate's Perl syntax highlighting. 0003 # TODO: this is incomplete, add more syntax examples! 0004 0005 sub prg($) 0006 <beginfold id='1'>{</beginfold id='1'> 0007 my $var = shift; 0008 0009 $var =~ s<beginfold id='2'>/</beginfold id='2'>bla<endfold id='2'></endfold id='2'><beginfold id='3'>/</beginfold id='3'>foo<endfold id='3'>/igs</endfold id='3'>; 0010 $var =~ s<beginfold id='2'>!</beginfold id='2'>bla<endfold id='2'></endfold id='2'><beginfold id='3'>!</beginfold id='3'>foo<endfold id='3'>!igs</endfold id='3'>; 0011 $var =~ s<beginfold id='2'>#</beginfold id='2'>bla<endfold id='2'></endfold id='2'><beginfold id='3'>#</beginfold id='3'>foo<endfold id='3'>#igs</endfold id='3'>; 0012 $var =~ tr/a-z/A-Z/; 0013 ($match) = ($var =~ m<beginfold id='2'>/</beginfold id='2'>(.*?)<endfold id='2'>/igs</endfold id='2'>); 0014 0015 $test = 2/453453.21; 0016 $test /= 2; 0017 0018 print qq<beginfold id='4'>~</beginfold id='4'>d fsd fsdf sdfl sd<endfold id='4'>~</endfold id='4'> 0019 0020 $" = <beginfold id='4'>'</beginfold id='4'>/<endfold id='4'>'</endfold id='4'>; 0021 0022 $foo = <beginfold id='5'><<</beginfold id='5'>__EOF; 0023 d ahfdklf klsdfl sdf sd 0024 fsd sdf sdfsdlkf sd 0025 <endfold id='5'>__EOF</endfold id='5'> 0026 0027 $x = <beginfold id='4'>"</beginfold id='4'>dasds<endfold id='4'>"</endfold id='4'>; 0028 0029 next if( $match eq <beginfold id='4'>"</beginfold id='4'>two<endfold id='4'>"</endfold id='4'> ); 0030 next if( $match =~ <beginfold id='2'>/</beginfold id='2'>go<endfold id='2'>/i</endfold id='2'> ); 0031 0032 @array = (1,2,3); # a comment 0033 # Test qw versions with special ending characters 0034 @array = qw<beginfold id='6'>(</beginfold id='6'>apple foo bar<endfold id='6'>)</endfold id='6'>; 0035 @array = qw<beginfold id='6'>[</beginfold id='6'>apple foo bar<endfold id='6'>]</endfold id='6'>; 0036 @array = qw<beginfold id='6'>{</beginfold id='6'>apple foo bar<endfold id='6'>}</endfold id='6'>; 0037 @array = qw<beginfold id='6'><</beginfold id='6'>apple foo bar<endfold id='6'>></endfold id='6'>; 0038 @array = qw<beginfold id='6'>(</beginfold id='6'> 0039 multi 0040 line 0041 test 0042 <endfold id='6'>)</endfold id='6'>; 0043 # Test qw with non special ending characters; 0044 @array = qw<beginfold id='6'>/</beginfold id='6'>apple foo bar<endfold id='6'>/</endfold id='6'>; 0045 @array = qw<beginfold id='6'>|</beginfold id='6'>apple foo bar<endfold id='6'>|</endfold id='6'>; 0046 @array = qw<beginfold id='6'>@</beginfold id='6'>apple foo bar<endfold id='6'>@</endfold id='6'>; 0047 @array = qw<beginfold id='6'>!</beginfold id='6'>apple foo bar<endfold id='6'>!</endfold id='6'>; 0048 @array = qw<beginfold id='6'>"</beginfold id='6'>apple foo bar<endfold id='6'>"</endfold id='6'>; 0049 @array = qw<beginfold id='6'>'</beginfold id='6'>apple foo bar<endfold id='6'>'</endfold id='6'>; 0050 push(@array, 4); 0051 %hash = (red => <beginfold id='4'>'</beginfold id='4'>rot<endfold id='4'>'</endfold id='4'>, 0052 blue => <beginfold id='4'>'</beginfold id='4'>blau<endfold id='4'>'</endfold id='4'>); 0053 print keys(%hash); 0054 <endfold id='1'>}</endfold id='1'> 0055 0056 sub blah <beginfold id='1'>{</beginfold id='1'> 0057 my $str = <beginfold id='5'><<</beginfold id='5'> ' EOS'; 0058 this is my string 0059 and it's continuation 0060 <endfold id='5'> EOS</endfold id='5'> 0061 0062 $str = <beginfold id='4'>"</beginfold id='4'>hello world<endfold id='4'>"</endfold id='4'>; 0063 0064 $str = <beginfold id='5'><<</beginfold id='5'> " EOS"; 0065 this is my string 0066 and it's continuation 0067 <endfold id='5'> EOS</endfold id='5'> 0068 <endfold id='1'>}</endfold id='1'> 0069 0070 &blah; 0071 prg(<beginfold id='4'>"</beginfold id='4'>test<endfold id='4'>"</endfold id='4'>); 0072 0073 # Bracket closures in RegExp patterns (bug #364866) 0074 qr<beginfold id='2'>{</beginfold id='2'> ${var} aa{aa{a}a} aa*b?<endfold id='2'>}</endfold id='2'>; 0075 qr<beginfold id='2'>(</beginfold id='2'>aa(a(a(a(b|c)a)a)a)aa*b?<endfold id='2'>)</endfold id='2'>; 0076 s<beginfold id='2'>{</beginfold id='2'>aaa {aaa} a \x{A2} *b?<endfold id='2'>}</endfold id='2'><beginfold id='3'>{</beginfold id='3'>aa<endfold id='3'>}</endfold id='3'>; 0077 s<beginfold id='2'>(</beginfold id='2'>aa(a(a(a(b|c)a)a)a)aa<endfold id='2'>)</endfold id='2'><beginfold id='3'>(</beginfold id='3'>aa<endfold id='3'>)</endfold id='3'>; 0078 0079 # Strings as scalar references (bug #348765) 0080 $x = \<beginfold id='4'>'</beginfold id='4'>Reference of a String<endfold id='4'>'</endfold id='4'>; 0081 $y = \<beginfold id='4'>"</beginfold id='4'>Reference of a String<endfold id='4'>"</endfold id='4'>; 0082 0083 # Variables that start with underscore (bug #355300) 0084 $_variable 0085 $_ # Reserved var. 0086 0087 for my $x ($hash-><beginfold id='1'>{</beginfold id='1'>arr<endfold id='1'>}</endfold id='1'>->@*) <beginfold id='1'>{</beginfold id='1'> 0088 for my $k (keys $k->%*) <beginfold id='1'>{</beginfold id='1'> 0089 ... 0090 <endfold id='1'>}</endfold id='1'> 0091 <endfold id='1'>}</endfold id='1'> 0092 0093 # Highlight correctly operator // (bug #407327) 0094 $x = ns // <beginfold id='4'>"</beginfold id='4'><endfold id='4'>"</endfold id='4'>; 0095 print $x;