Add built local::lib
[catagits/Gitalist.git] / local-lib5 / lib / perl5 / Syntax / Highlight / Engine / Kate / Spice.pm
1 # Copyright (c) 2005 - 2006 Hans Jeuken. All rights reserved.
2 # This program is free software; you can redistribute it and/or
3 # modify it under the same terms as Perl itself.
4
5 # This file was generated from the 'spice.xml' file of the syntax highlight
6 # engine of the kate text editor (http://www.kate-editor.org
7
8 #kate xml version 1.01
9 #kate version 2.3
10 #kate author Steven Robson (s.a.robson@sms.ed.ac.uk) and Anders Lund
11 #generated: Sun Feb  3 22:02:06 2008, localtime
12
13 package Syntax::Highlight::Engine::Kate::Spice;
14
15 our $VERSION = '0.06';
16
17 use strict;
18 use warnings;
19 use base('Syntax::Highlight::Engine::Kate::Template');
20
21 sub new {
22    my $proto = shift;
23    my $class = ref($proto) || $proto;
24    my $self = $class->SUPER::new(@_);
25    $self->attributes({
26       'Comment' => 'Comment',
27       'Keyword' => 'Keyword',
28       'Normal Text' => 'Normal',
29       'Number' => 'DecVal',
30       'String' => 'String',
31       'String Char' => 'Char',
32    });
33    $self->contextdata({
34       'Commentar 1' => {
35          callback => \&parseCommentar1,
36          attribute => 'Comment',
37          lineending => '#pop',
38       },
39       'Normal' => {
40          callback => \&parseNormal,
41          attribute => 'Normal Text',
42       },
43       'String' => {
44          callback => \&parseString,
45          attribute => 'String',
46          lineending => '#pop',
47       },
48    });
49    $self->deliminators('\\s||\\(|\\)|:|\\!|\\+|,|-|<|=|>|\\%|\\&|\\*|\\/|;|\\?|\\[|\\]|\\^|\\{|\\||\\}|\\~|\\\\|\\.');
50    $self->basecontext('Normal');
51    $self->keywordscase(0);
52    $self->initialize;
53    bless ($self, $class);
54    return $self;
55 }
56
57 sub language {
58    return 'Spice';
59 }
60
61 sub parseCommentar1 {
62    my ($self, $text) = @_;
63    return 0;
64 };
65
66 sub parseNormal {
67    my ($self, $text) = @_;
68    # String => '\B\.\w+'
69    # attribute => 'Keyword'
70    # context => '#stay'
71    # type => 'RegExpr'
72    if ($self->testRegExpr($text, '\\B\\.\\w+', 0, 0, 0, undef, 0, '#stay', 'Keyword')) {
73       return 1
74    }
75    # attribute => 'Number'
76    # context => '#stay'
77    # type => 'Int'
78    if ($self->testInt($text, 0, undef, 0, '#stay', 'Number')) {
79       return 1
80    }
81    # attribute => 'Number'
82    # context => '#stay'
83    # type => 'Float'
84    if ($self->testFloat($text, 0, undef, 0, '#stay', 'Number')) {
85       return 1
86    }
87    # String => '$*'
88    # attribute => 'Comment'
89    # context => 'Commentar 1'
90    # type => 'AnyChar'
91    if ($self->testAnyChar($text, '$*', 0, 0, undef, 0, 'Commentar 1', 'Comment')) {
92       return 1
93    }
94    # attribute => 'String'
95    # char => '"'
96    # context => 'String'
97    # type => 'DetectChar'
98    if ($self->testDetectChar($text, '"', 0, 0, 0, undef, 0, 'String', 'String')) {
99       return 1
100    }
101    # attribute => 'String'
102    # char => '''
103    # context => 'String'
104    # type => 'DetectChar'
105    if ($self->testDetectChar($text, '\'', 0, 0, 0, undef, 0, 'String', 'String')) {
106       return 1
107    }
108    return 0;
109 };
110
111 sub parseString {
112    my ($self, $text) = @_;
113    # attribute => 'String'
114    # context => '#stay'
115    # type => 'LineContinue'
116    if ($self->testLineContinue($text, 0, undef, 0, '#stay', 'String')) {
117       return 1
118    }
119    # attribute => 'String Char'
120    # context => '#stay'
121    # type => 'HlCStringChar'
122    if ($self->testHlCStringChar($text, 0, undef, 0, '#stay', 'String Char')) {
123       return 1
124    }
125    # attribute => 'String'
126    # char => '''
127    # context => '#pop'
128    # type => 'DetectChar'
129    if ($self->testDetectChar($text, '\'', 0, 0, 0, undef, 0, '#pop', 'String')) {
130       return 1
131    }
132    return 0;
133 };
134
135
136 1;
137
138 __END__
139
140 =head1 NAME
141
142 Syntax::Highlight::Engine::Kate::Spice - a Plugin for Spice syntax highlighting
143
144 =head1 SYNOPSIS
145
146  require Syntax::Highlight::Engine::Kate::Spice;
147  my $sh = new Syntax::Highlight::Engine::Kate::Spice([
148  ]);
149
150 =head1 DESCRIPTION
151
152 Syntax::Highlight::Engine::Kate::Spice is a  plugin module that provides syntax highlighting
153 for Spice to the Syntax::Haghlight::Engine::Kate highlighting engine.
154
155 This code is generated from the syntax definition files used
156 by the Kate project.
157 It works quite fine, but can use refinement and optimization.
158
159 It inherits Syntax::Higlight::Engine::Kate::Template. See also there.
160
161 =cut
162
163 =head1 AUTHOR
164
165 Hans Jeuken (haje <at> toneel <dot> demon <dot> nl)
166
167 =cut
168
169 =head1 BUGS
170
171 Unknown. If you find any, please contact the author
172
173 =cut
174