fix function declarations inside of 'with' blocks
[cython.git] / Tools / cython-numpy-mode-kate.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE language>
3 <!-- Python syntax highlightning v0.9 by Per Wigren -->
4 <!-- Python syntax highlighting v1.9 by Michael Bueker (improved keyword differentiation) -->
5 <!-- Python syntax highlighting v1.97 by Paul Giannaros -->
6 <!-- Pyrex syntax highlighting v0.1 by Matthew Marshall -->
7 <!-- Cython syntax highlighting v1.0 by Martin Gysel -->
8 <!-- Cython syntax highlighting v2.0 by Sturla Molden -->
9
10 <!--
11
12 Disclaimer: IANAL. This file is a derivative work of KDE's Python 
13 syntax file. KDE does not specify a license for the syntax file python.xml 
14 in it's katepart component. However, katepart and KATE as a whole is 
15 released with LGPL v2. Assuing python.xml is LGPL'd, this file is hereby 
16 released with the same license. Note that this only applies to this XML 
17 file. It does not apply to any work written using this file to highlighting
18 syntax. Any changes  you make to this file will be covered by the LGPL, 
19 but it does not to my knowledge taint your source code. At least not 
20 any more than using KDE would do. Sturla Molden
21
22 Thus:
23
24 This library is free software; you can redistribute it and/or
25 modify it under the terms of the GNU Library General Public
26 License as published by the Free Software Foundation; either
27 version 2 of the License, or (at your option) any later version.
28
29 This library is distributed in the hope that it will be useful,
30 but WITHOUT ANY WARRANTY; without even the implied warranty of
31 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
32 Library General Public License for more details.
33
34 You should have received a copy of the GNU Library General Public
35 License along with this library; if not, write to the
36 Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
37 Boston, MA  02110-1301, USA.
38
39
40
41 -->
42
43 <language name="Cython with NumPy" version="1.1" kateversion="2.4" section="Sources" extensions="*.pyx;*.pxi;*.pxd" mimetype="application/x-cython;text/x-cython" casesensitive="1" author="Sturla Molden" license="LGPL">
44         <highlighting>
45         <list name="as">
46             <item> as </item>
47         </list>
48         <list name="imports">
49                         <item> cimport </item>
50             <item> import </item>
51             <item> from </item>
52             <item> as </item>
53         </list>
54         <list name="prep">
55             <item> DEF </item>
56             <item> IF </item>
57             <item> ELIF </item>
58             <item> ELSE </item>
59             <item> include </item>
60         </list>
61         <list name="defs">
62             <item> class </item>
63                         <item> cpdef </item>
64             <item> def </item>
65         </list>
66         <list name="cdef">
67             <item> cdef </item>
68             <item> ctypedef </item>
69         </list>
70         <list name="keyw" >
71                         <item> extern </item>
72             <item> api </item>                   
73                         <item> del </item>
74                         <item> global </item>
75                         <item> property </item>                 
76             <item> nogil </item>
77                         <item> gil </item>
78             <item> inline </item>
79                 </list>
80         <list name="access">
81             <item> readonly </item>
82             <item> public </item>
83         </list>        
84                 <list name="operators">
85                         <item> and </item>
86                         <item> assert </item>
87                         <item> in </item>
88                         <item> is </item>
89             <item> by </item>
90                         <item> not </item>
91                         <item> or </item>
92             <item> sizeof </item> 
93                 </list>
94                 <list name="commands">
95                         <!-- <item> exec </item> -->
96                         <item> print </item>
97                 </list>
98                 <list name="flow">
99                         <item> break </item>
100                         <item> continue </item>
101                         <item> elif </item>
102                         <item> else </item>
103                         <item> except </item>
104                         <item> finally </item>
105                         <item> for </item>
106                         <item> if </item>
107                         <item> pass </item>
108                         <item> raise </item>
109                         <item> return </item>
110                         <item> try </item>
111                         <item> while </item>
112                         <item> with </item>
113             <!-- <item> yield </item> -->
114                 </list>
115                 <list name="builtinfuncs">
116                         <item> __import__ </item>
117                         <item> abs </item>
118                         <item> all </item>
119                         <item> any </item>
120                         <item> apply </item>
121                         <item> basestring </item>
122                         <item> buffer </item>
123                         <item> callable </item>
124                         <item> chr </item>
125                         <item> classmethod </item>
126                         <item> cmp </item>
127                         <item> coerce </item>
128                         <item> compile </item>
129                         <item> delattr </item>
130                         <item> dir </item>
131                         <item> divmod </item>
132                         <item> enumerate </item>
133                         <item> eval </item>
134                         <item> execfile </item>
135                         <item> filter </item>
136                         <item> getattr </item>
137                         <!-- <item> globals </item> -->
138                         <item> hasattr </item>
139                         <item> hash </item>
140                         <item> hex </item>
141                         <item> id </item>
142                         <item> input </item>
143                         <item> intern </item>
144                         <item> isinstance </item>
145                         <item> issubclass </item>
146                         <item> iter </item>
147                         <item> len </item>
148                         <!-- <item> locals </item> -->
149                         <item> map </item>
150                         <item> max </item>
151                         <item> min </item>
152                         <item> oct </item>
153                         <item> open </item>
154                         <item> ord </item>
155                         <item> pow </item>
156                         <!-- <item> property </item> -->
157                         <item> range </item>
158                         <item> raw_input </item>
159                         <item> reduce </item>
160                         <item> reload </item>
161                         <item> repr </item>
162                         <item> reversed </item>
163                         <item> round </item>
164                         <item> setattr </item>
165                         <item> sorted </item>
166                         <item> staticmethod </item>
167                         <item> sum </item>
168                         <item> super </item>
169                         <item> type </item>
170                         <item> unichr </item>
171                         <item> unicode </item>
172                         <!-- <item> vars </item> -->
173                         <item> xrange </item>
174                         <item> zip </item>
175                 </list>
176                 <list name="ctypes">
177             <!-- native types -->
178                         <item> unsigned </item>
179                         <item> void </item>
180                         <item> enum </item>
181             <item> double </item>
182                         <item> long </item>
183                         <item> short </item>
184                         <item> char </item>
185                         <item> Py_ssize_t </item>
186             <item> Py_intptr_t </item>
187             <item> Py_buffer </item>
188             <item> bint </item>
189             <item> struct </item>
190             <item> union </item>
191             <item> enum </item>
192             <!-- python types -->
193         </list>
194         <list name="pytypes">
195             <item> int </item>
196             <item> float </item>
197             <item> object </item>
198             <item> list </item>
199             <item> tuple </item>
200             <item> str </item>
201             <item> dict </item>
202             <item> set </item>
203             <item> frozenset </item>
204             <item> slice </item>
205             <item> bool </item>
206             <item> complex </item>
207             <item> file </item>
208             <!-- numpy types -->
209         </list>
210         <list name="numpyselector">
211             <item> np </item>
212             <item> numpy </item>
213         </list>
214         <list name="numpymodule">
215             <item> numpy </item>
216         </list>
217         <list name="cythonmodule">
218             <item> cython </item>
219         </list>        
220         <list name="numpytypes">
221             <item>  dtype </item>
222             <item>  flatiter </item>
223             <item>  broadcast </item>
224             <item>  ndarray </item>
225             <item>  int8_t </item>
226             <item>  int16_t </item>
227             <item>  int32_t </item>
228             <item>  int64_t </item>
229             <item>  uint8_t </item>
230             <item>  uint16_t </item>
231             <item>  uint32_t </item>
232             <item>  uint64_t </item>
233             <item>  float32_t </item>
234             <item>  float64_t </item>
235             <item>  complex64_t </item>
236             <item>  complex128_t </item>
237             <item>  int_t </item>
238             <item>  long_t </item>
239             <item>  uint_t </item>
240             <item>  ulong_t </item>
241             <item>  float_t </item>
242             <item>  double_t </item>
243             <item>  longdouble_t </item>
244             <item>  cfloat_t </item>
245             <item>  cdouble_t </item>
246             <item>  clongdouble_t </item>
247             <item>  complex_t </item>            
248             <item>  npy_int8 </item> 
249             <item>  npy_int16 </item> 
250             <item>  npy_int32 </item> 
251             <item>  npy_int64 </item> 
252             <item>  npy_int96 </item> 
253             <item>  npy_int128 </item> 
254             <item>  npy_uint8 </item> 
255             <item>  npy_uint16 </item> 
256             <item>  npy_uint32 </item> 
257             <item>  npy_uint64 </item> 
258             <item>  npy_uint96 </item> 
259             <item>  npy_uint128 </item> 
260             <item>  npy_float32 </item> 
261             <item>  npy_float64 </item> 
262             <item>  npy_float80 </item> 
263             <item>  npy_float96 </item> 
264             <item>  npy_float128 </item> 
265             <item>  npy_complex64 </item> 
266             <item>  npy_complex128 </item> 
267             <item>  npy_complex120 </item> 
268             <item>  npy_complex192 </item> 
269             <item>  npy_complex256 </item> 
270             <item>  npy_cfloat </item> 
271             <item>  npy_cdouble </item> 
272             <item>  npy_clongdouble </item> 
273             <item>  npy_bool </item> 
274             <item>  npy_byte </item> 
275             <item>  npy_short </item> 
276             <item>  npy_int </item> 
277             <item>  npy_long </item> 
278             <item>  npy_longlong </item> 
279             <item>  npy_ubyte </item> 
280             <item>  npy_ushort </item> 
281             <item>  npy_uint </item> 
282             <item>  npy_ulong </item> 
283             <item>  npy_ulonglong </item> 
284             <item>  npy_float </item> 
285             <item>  npy_double </item> 
286             <item>  npy_longdouble </item> 
287             <item>  npy_intp </item>
288                 </list>        
289         <list name="numpyfuncs">
290             <item> DataSource </item>
291             <item> MachAr </item>
292             <item> PackageLoader </item>
293             <item> RankWarning </item>
294             <item> Tester </item>
295             <item> abs </item>
296             <item> absolute </item>
297             <item> add </item>
298             <item> add_docstring </item>
299             <item> add_newdoc </item>
300             <item> alen </item>
301             <item> all </item>
302             <item> allclose </item>
303             <item> alltrue </item>
304             <item> alterdot </item>
305             <item> amax </item>
306             <item> amin </item>
307             <item> angle </item>
308             <item> any </item>
309             <item> append </item>
310             <item> apply_along_axis </item>
311             <item> apply_over_axes </item>
312             <item> arange </item>
313             <item> arccos </item>
314             <item> arccosh </item>
315             <item> arcsin </item>
316             <item> arcsinh </item>
317             <item> arctan </item>
318             <item> arctan2 </item>
319             <item> arctanh </item>
320             <item> argmax </item>
321             <item> argmin </item>
322             <item> argsort </item>
323             <item> argwhere </item>
324             <item> around </item>
325             <item> array </item>
326             <item> array2string </item>
327             <item> array_equal </item>
328             <item> array_equiv </item>
329             <item> array_repr </item>
330             <item> array_split </item>
331             <item> array_str </item>
332             <item> asanyarray </item>
333             <item> asarray </item>
334             <item> asarray_chkfinite </item>
335             <item> ascontiguousarray </item>
336             <item> asfarray </item>
337             <item> asfortranarray </item>
338             <item> asmatrix </item>
339             <item> asscalar </item>
340             <item> atleast_1d </item>
341             <item> atleast_2d </item>
342             <item> atleast_3d </item>
343             <item> average </item>
344             <item> bartlett </item>
345             <item> base_repr </item>
346             <item> bench </item>
347             <item> binary_repr </item>
348             <item> bincount </item>
349             <item> bitwise_and </item>
350             <item> bitwise_not </item>
351             <item> bitwise_or </item>
352             <item> bitwise_xor </item>
353             <item> blackman </item>
354             <item> bmat </item>
355             <item> bool </item>
356             <item> bool8 </item>
357             <item> bool_ </item>
358             <item> broadcast </item>
359             <item> broadcast_arrays </item>
360             <item> byte </item>
361             <item> byte_bounds </item>
362             <item> can_cast </item>
363             <item> cdouble </item>
364             <item> ceil </item>
365             <item> cfloat </item>
366             <item> character </item>
367             <item> chararray </item>
368             <item> choose </item>
369             <item> clip </item>
370             <item> clongdouble </item>
371             <item> clongfloat </item>
372             <item> column_stack </item>
373             <item> common_type </item>
374             <item> compare_chararrays </item>
375             <item> complex </item>
376             <item> complex128 </item>
377             <item> complex192 </item>
378             <item> complex64 </item>
379             <item> complex_ </item>
380             <item> complexfloating </item>
381             <item> compress </item>
382             <item> concatenate </item>
383             <item> conj </item>
384             <item> conjugate </item>
385             <item> convolve </item>
386             <item> copy </item>
387             <item> corrcoef </item>
388             <item> correlate </item>
389             <item> cos </item>
390             <item> cosh </item>
391             <item> cov </item>
392             <item> cross </item>
393             <item> csingle </item>
394             <item> cumprod </item>
395             <item> cumproduct </item>
396             <item> cumsum </item>
397             <item> deg2rad </item>
398             <item> degrees </item>
399             <item> delete </item>
400             <item> deprecate </item>
401             <item> deprecate_with_doc </item>
402             <item> diag </item>
403             <item> diagflat </item>
404             <item> diagonal </item>
405             <item> diff </item>
406             <item> digitize </item>
407             <item> disp </item>
408             <item> divide </item>
409             <item> dot </item>
410             <item> double </item>
411             <item> dsplit </item>
412             <item> dstack </item>
413             <item> dtype </item>
414             <item> ediff1d </item>
415             <item> empty </item>
416             <item> empty_like </item>
417             <item> equal </item>
418             <item> errstate </item>
419             <item> exp </item>
420             <item> exp2 </item>
421             <item> expand_dims </item>
422             <item> expm1 </item>
423             <item> extract </item>
424             <item> eye </item>
425             <item> fabs </item>
426             <item> fastCopyAndTranspose </item>
427             <item> find_common_type </item>
428             <item> finfo </item>
429             <item> fix </item>
430             <item> flatiter </item>
431             <item> flatnonzero </item>
432             <item> flexible </item>
433             <item> fliplr </item>
434             <item> flipud </item>
435             <item> float </item>
436             <item> float32 </item>
437             <item> float64 </item>
438             <item> float96 </item>
439             <item> float_ </item>
440             <item> floating </item>
441             <item> floor </item>
442             <item> floor_divide </item>
443             <item> fmax </item>
444             <item> fmin </item>
445             <item> fmod </item>
446             <item> frexp </item>
447             <item> frombuffer </item>
448             <item> fromfile </item>
449             <item> fromfunction </item>
450             <item> fromiter </item>
451             <item> frompyfunc </item>
452             <item> fromregex </item>
453             <item> fromstring </item>
454             <item> fv </item>
455             <item> generic </item>
456             <item> genfromtxt </item>
457             <item> get_array_wrap </item>
458             <item> get_include </item>
459             <item> get_numarray_include </item>
460             <item> get_numpy_include </item>
461             <item> get_printoptions </item>
462             <item> getbuffer </item>
463             <item> getbufsize </item>
464             <item> geterr </item>
465             <item> geterrcall </item>
466             <item> geterrobj </item>
467             <item> gradient </item>
468             <item> greater </item>
469             <item> greater_equal </item>
470             <item> hamming </item>
471             <item> hanning </item>
472             <item> histogram </item>
473             <item> histogram2d </item>
474             <item> histogramdd </item>
475             <item> hsplit </item>
476             <item> hstack </item>
477             <item> hypot </item>
478             <item> i0 </item>
479             <item> identity </item>
480             <item> imag </item>
481             <item> indices </item>
482             <item> inexact </item>
483             <item> info </item>
484             <item> inner </item>
485             <item> insert </item>
486             <item> int </item>
487             <item> int0 </item>
488             <item> int16 </item>
489             <item> int32 </item>
490             <item> int64 </item>
491             <item> int8 </item>
492             <item> int_ </item>
493             <item> int_asbuffer </item>
494             <item> intc </item>
495             <item> integer </item>
496             <item> interp </item>
497             <item> intersect1d </item>
498             <item> intersect1d_nu </item>
499             <item> intp </item>
500             <item> invert </item>
501             <item> ipmt </item>
502             <item> irr </item>
503             <item> iscomplex </item>
504             <item> iscomplexobj </item>
505             <item> isfinite </item>
506             <item> isfortran </item>
507             <item> isinf </item>
508             <item> isnan </item>
509             <item> isneginf </item>
510             <item> isposinf </item>
511             <item> isreal </item>
512             <item> isrealobj </item>
513             <item> isscalar </item>
514             <item> issctype </item>
515             <item> issubclass_ </item>
516             <item> issubdtype </item>
517             <item> issubsctype </item>
518             <item> iterable </item>
519             <item> ix_ </item>
520             <item> kaiser </item>
521             <item> kron </item>
522             <item> ldexp </item>
523             <item> left_shift </item>
524             <item> less </item>
525             <item> less_equal </item>
526             <item> lexsort </item>
527             <item> linspace </item>
528             <item> load </item>
529             <item> loads </item>
530             <item> loadtxt </item>
531             <item> log </item>
532             <item> log10 </item>
533             <item> log1p </item>
534             <item> log2 </item>
535             <item> logaddexp </item>
536             <item> logaddexp2 </item>
537             <item> logical_and </item>
538             <item> logical_not </item>
539             <item> logical_or </item>
540             <item> logical_xor </item>
541             <item> logspace </item>
542             <item> long </item>
543             <item> longcomplex </item>
544             <item> longdouble </item>
545             <item> longfloat </item>
546             <item> longlong </item>
547             <item> lookfor </item>
548             <item> mafromtxt </item>
549             <item> mat </item>
550             <item> matrix </item>
551             <item> max </item>
552             <item> maximum </item>
553             <item> maximum_sctype </item>
554             <item> may_share_memory </item>
555             <item> mean </item>
556             <item> median </item>
557             <item> memmap </item>
558             <item> meshgrid </item>
559             <item> min </item>
560             <item> minimum </item>
561             <item> mintypecode </item>
562             <item> mirr </item>
563             <item> mod </item>
564             <item> modf </item>
565             <item> msort </item>
566             <item> multiply </item>
567             <item> nan_to_num </item>
568             <item> nanargmax </item>
569             <item> nanargmin </item>
570             <item> nanmax </item>
571             <item> nanmin </item>
572             <item> nansum </item>
573             <item> ndarray </item>
574             <item> ndenumerate </item>
575             <item> ndfromtxt </item>
576             <item> ndim </item>
577             <item> ndindex </item>
578             <item> negative </item>
579             <item> newbuffer </item>
580             <item> nonzero </item>
581             <item> not_equal </item>
582             <item> nper </item>
583             <item> npv </item>
584             <item> number </item>
585             <item> obj2sctype </item>
586             <item> object </item>
587             <item> object0 </item>
588             <item> object_ </item>
589             <item> ones </item>
590             <item> ones_like </item>
591             <item> outer </item>
592             <item> packbits </item>
593             <item> piecewise </item>
594             <item> pkgload </item>
595             <item> place </item>
596             <item> pmt </item>
597             <item> poly </item>
598             <item> poly1d </item>
599             <item> polyadd </item>
600             <item> polyder </item>
601             <item> polydiv </item>
602             <item> polyfit </item>
603             <item> polyint </item>
604             <item> polymul </item>
605             <item> polysub </item>
606             <item> polyval </item>
607             <item> power </item>
608             <item> ppmt </item>
609             <item> prod </item>
610             <item> product </item>
611             <item> ptp </item>
612             <item> put </item>
613             <item> putmask </item>
614             <item> pv </item>
615             <item> rad2deg </item>
616             <item> radians </item>
617             <item> rank </item>
618             <item> rate </item>
619             <item> ravel </item>
620             <item> real </item>
621             <item> real_if_close </item>
622             <item> recarray </item>
623             <item> recfromcsv </item>
624             <item> recfromtxt </item>
625             <item> reciprocal </item>
626             <item> record </item>
627             <item> remainder </item>
628             <item> repeat </item>
629             <item> require </item>
630             <item> reshape </item>
631             <item> resize </item>
632             <item> restoredot </item>
633             <item> right_shift </item>
634             <item> rint </item>
635             <item> roll </item>
636             <item> rollaxis </item>
637             <item> roots </item>
638             <item> rot90 </item>
639             <item> round </item>
640             <item> round_ </item>
641             <item> row_stack </item>
642             <item> safe_eval </item>
643             <item> save </item>
644             <item> savetxt </item>
645             <item> savez </item>
646             <item> sctype2char </item>
647             <item> searchsorted </item>
648             <item> select </item>
649             <item> set_numeric_ops </item>
650             <item> set_printoptions </item>
651             <item> set_string_function </item>
652             <item> setbufsize </item>
653             <item> setdiff1d </item>
654             <item> seterr </item>
655             <item> seterrcall </item>
656             <item> seterrobj </item>
657             <item> setmember1d </item>
658             <item> setxor1d </item>
659             <item> shape </item>
660             <item> short </item>
661             <item> show_config </item>
662             <item> sign </item>
663             <item> signbit </item>
664             <item> signedinteger </item>
665             <item> sin </item>
666             <item> sinc </item>
667             <item> single </item>
668             <item> singlecomplex </item>
669             <item> sinh </item>
670             <item> size </item>
671             <item> sometrue </item>
672             <item> sort </item>
673             <item> sort_complex </item>
674             <item> source </item>
675             <item> split </item>
676             <item> sqrt </item>
677             <item> square </item>
678             <item> squeeze </item>
679             <item> std </item>
680             <item> str </item>
681             <item> str_ </item>
682             <item> string0 </item>
683             <item> string_ </item>
684             <item> subtract </item>
685             <item> sum </item>
686             <item> swapaxes </item>
687             <item> take </item>
688             <item> tan </item>
689             <item> tanh </item>
690             <item> tensordot </item>
691             <item> test </item>
692             <item> tile </item>
693             <item> trace </item>
694             <item> transpose </item>
695             <item> trapz </item>
696             <item> tri </item>
697             <item> tril </item>
698             <item> trim_zeros </item>
699             <item> triu </item>
700             <item> true_divide </item>
701             <item> trunc </item>
702             <item> typename </item>
703             <item> ubyte </item>
704             <item> ufunc </item>
705             <item> uint </item>
706             <item> uint0 </item>
707             <item> uint16 </item>
708             <item> uint32 </item>
709             <item> uint64 </item>
710             <item> uint8 </item>
711             <item> uintc </item>
712             <item> uintp </item>
713             <item> ulonglong </item>
714             <item> unicode </item>
715             <item> unicode0 </item>
716             <item> unicode_ </item>
717             <item> union1d </item>
718             <item> unique </item>
719             <item> unique1d </item>
720             <item> unpackbits </item>
721             <item> unravel_index </item>
722             <item> unsignedinteger </item>
723             <item> unwrap </item>
724             <item> ushort </item>
725             <item> vander </item>
726             <item> var </item>
727             <item> vdot </item>
728             <item> vectorize </item>
729             <item> void </item>
730             <item> void0 </item>
731             <item> vsplit </item>
732             <item> vstack </item>
733             <item> where </item>
734             <item> who </item>
735             <item> zeros </item>
736             <item> zeros_like </item>
737         </list>
738         <list name="specialvars">
739             <item> __future__ </item>
740             <item> __import__ </item>
741             <item> __name__ </item>
742             <item> __cythonbufferdefaults__ </item>
743             <item> __weakref__ </item>
744                         <item> None </item>
745                         <item> self </item>
746                         <item> True </item>
747                         <item> False </item>
748                         <item> NotImplemented </item>
749                         <item> Ellipsis </item>
750                         <item> NULL </item>
751                 </list>
752         <list name="overloaders">
753             <item>__new__</item>
754             <item>__init__</item>
755             <item> __cinit__ </item>
756             <item> __dealloc__ </item>
757             <item> __cmp__ </item>
758             <item> __richcmp__ </item>
759             <item> __str__ </item>
760             <item> __repr__ </item>
761             <item> __hash__ </item>
762             <item> __call__ </item>
763             <item> __iter__ </item>
764             <item> __getattr__ </item>
765             <item> __setattr__ </item>
766             <item> __delattr__ </item>
767             <item> __add__ </item>
768             <item> __sub__ </item>
769             <item> __mul__ </item>
770             <item> __div__ </item>
771             <item> __floordiv__ </item>
772             <item> __truediv__ </item>
773             <item> __mod__ </item>
774             <item> __divmod__ </item>
775             <item> __pow__ </item>
776             <item> __neg__ </item>
777             <item> __pos__ </item>
778             <item> __abs__ </item>
779             <item> __nonzero__ </item>
780             <item> __invert__ </item>
781             <item> __lshift__ </item>
782             <item> __rshift__ </item>
783             <item> __and__ </item>
784             <item> __or__ </item>
785             <item> __xor__ </item>
786             <item> __int__ </item>
787             <item> __long__ </item>
788             <item> __float__ </item>
789             <item> __oct__ </item>
790             <item> __hex__ </item>
791             <item> __index__ </item>
792             <item> __iadd__ </item>
793             <item> __isub__ </item>
794             <item> __imul__ </item>
795             <item> __idiv__ </item>
796             <item> __ifloordiv__ </item>
797             <item> __itruediv__ </item>
798             <item> __imod__ </item>
799             <item> __ipow__ </item>
800             <item> __ilshift__ </item>
801             <item> __irshift__ </item>
802             <item> __iand__ </item>
803             <item> __ior__ </item>
804             <item> __ixor__ </item>
805             <item> __len__ </item>
806             <item> __getitem__ </item>
807             <item> __setitem__ </item>
808             <item> __delitem__ </item>
809             <item> __getslice__ </item>
810             <item> __setslice__ </item>
811             <item> __delslice__ </item>
812             <item> __contains__ </item>
813             <item> __next__ </item>
814             <item> __getreadbuffer__ </item>
815             <item> __getwritebuffer__ </item>
816             <item> __getsegcount__ </item>
817             <item> __getcharbuffer__ </item>
818             <item> __get__ </item>
819             <item> __set__ </item>
820             <item> __delete__ </item>
821             <item> __getbuffer__ </item>
822             <item> __releasebuffer__ </item>
823         </list>
824         <list name="exceptions">
825             <item>ArithmeticError</item>
826             <item>AssertionError</item>
827             <item>AttributeError</item>
828             <item>BaseException</item>
829             <item>DeprecationWarning</item>
830             <item>EnvironmentError</item>
831             <item>EOFError</item>
832             <item>Exception</item>
833             <item>FloatingPointError</item>
834             <item>FutureWarning</item>
835             <item>GeneratorExit</item>
836             <item>IOError</item>
837             <item>ImportError</item>
838             <item>ImportWarning</item>
839             <item>IndexError</item>
840             <item>KeyError</item>
841             <item>KeyboardInterrupt</item>
842             <item>LookupError</item>
843             <item>MemoryError</item>
844             <item>NameError</item>
845             <item>NotImplementedError</item>
846             <item>OSError</item>
847             <item>OverflowError</item>
848             <item>PendingDeprecationWarning</item>
849             <item>ReferenceError</item>
850             <item>RuntimeError</item>
851             <item>RuntimeWarning</item>
852             <item>StandardError</item>
853             <item>StopIteration</item>
854             <item>SyntaxError</item>
855             <item>SyntaxWarning</item>
856             <item>SystemError</item>
857             <item>SystemExit</item>
858             <item>TypeError</item>
859             <item>UnboundLocalError</item>
860             <item>UserWarning</item>
861             <item>UnicodeError</item>
862             <item>UnicodeWarning</item>
863             <item>UnicodeEncodeError</item>
864             <item>UnicodeDecodeError</item>
865             <item>UnicodeTranslateError</item>
866             <item>ValueError</item>
867             <item>Warning</item>
868             <item>WindowsError</item>
869             <item>ZeroDivisionError</item>
870         </list>
871         
872         <contexts>
873                       
874                         <context name="Normal" attribute="Normal Text" lineEndContext="#stay">
875                 
876                 <keyword attribute="Definition Keyword" String="cdef" context="cdefname"/>
877                 <keyword attribute="Definition Keyword" String="defs" context="defname"/>
878                 <keyword attribute="Definition Keyword" String="keyw" context="#stay"/>
879                 
880                                 <keyword attribute="Import Keyword" String="imports" context="#stay"/>
881                 <keyword attribute="Preprocessor" String="prep" context="#stay"/>
882                                 <keyword attribute="Operator" String="operators" context="#stay"/>
883                                 <keyword attribute="Command Keyword" String="commands" context="#stay"/>
884                                 <keyword attribute="Flow Control Keyword" String="flow" context="#stay"/>
885                                 <keyword attribute="Builtin Function" String="builtinfuncs" context="#stay"/>
886                 
887                                 <keyword attribute="Special Variable" String="specialvars" context="#stay"/>
888                                 <keyword attribute="Special Variable" String="exceptions" context="#stay"/>
889                 <keyword attribute="Special Variable" String="overloaders" context="#stay"/>
890                 
891                 <keyword attribute="C Type" context="#stay" String="ctypes" />
892                                 <keyword attribute="Python Type" context="#stay" String="pytypes" />
893                                                                                 
894                 <RegExpr attribute="Hex" String="0[Xx][0-9a-fA-F]+" context="#stay"/>
895                 <RegExpr attribute="Octal" String="0[1-9][0-9]*" context="#stay"/>
896                 <RegExpr attribute="Binary" String="0[Bb][0-9a-fA-F]+" context="#stay"/>
897                 
898                                 <RegExpr attribute="Complex" String=" ((([0-9]*\.[0-9]+|[0-9]+\.)|([0-9]+|([0-9]*\.[0-9]+|[0-9]+\.))[eE](\+|-)?[0-9]+)|[0-9]+)[jJ]" context="#stay"/>
899                                 <RegExpr attribute="Float" String="([0-9]+\.[0-9]*|\.[0-9]+)([eE][0-9]+)?" context="#stay"/>
900                                 
901                 <RegExpr attribute="Int" String="([1-9][0-9]*([eE][0-9]+)?|0)" context="#stay"/>
902                                 <RegExpr attribute="Long" String="[1-9][0-9]*([eE][0-9.]+)?[Ll]" context="#stay"/>
903                                 
904                 <keyword attribute="NumPyAttr" String="numpyselector" context="numpy"/>
905                 
906                 <RegExpr attribute="Decorator" String="@[a-zA-Z_][a-zA-Z_0-9\.]+" context="#stay"/>
907                 
908                 <RegExpr attribute="Normal" String="[a-zA-Z_][a-zA-Z_0-9]+" context="#stay"/>
909
910                                 <RegExpr attribute="Raw String" String="[rR]'''" context="Raw Tripple A-string"/>
911                                 <RegExpr attribute="Raw String" String="[rR]&quot;&quot;&quot;" context="Raw Tripple Q-string"/>
912
913                                 <RegExpr attribute="Raw String" String="[rR]'" context="Raw A-string"/>
914                                 <RegExpr attribute="Raw String" String="[rR]&quot;" context="Raw Q-string"/>
915
916                                 <RegExpr attribute="Comment" String="#.*$" context="#stay"/>
917                                 <RegExpr attribute="Comment" String="^\s*'''" context="Tripple A-comment" beginRegion="Tripple A-region"/>
918                                 <RegExpr attribute="Comment" String="^\s*&quot;&quot;&quot;" context="Tripple Q-comment" beginRegion="Tripple Q-region"/>
919        
920                                 <StringDetect attribute="String" String="'''" context="Tripple A-string" beginRegion="Tripple A-region"/>
921                                 <StringDetect attribute="String" String="&quot;&quot;&quot;" context="Tripple Q-string" beginRegion="Tripple Q-region"/>
922                                 <DetectChar attribute="String" char="'" context="Single A-string"/>
923                                 <DetectChar attribute="String" char="&quot;" context="Single Q-string"/>
924                 
925                 
926                 <DetectChar attribute="Operator" char="(" context="parenthesis" />
927                                 
928                 <DetectChar attribute="Operator" char="[" context="bracet" />
929                 
930                 <DetectChar attribute="Operator" char="{" context="dict" />
931                               
932                                 <RegExpr attribute="Operator" String="[+*/%\|=;\!&lt;&gt;!^&amp;~-]" context="#stay"/>
933                 
934                                 <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
935                         
936             </context>
937             
938              <context name="numpy" attribute="Normal Text" lineEndContext="#pop" noIndentationBasedFolding="True">
939                 <!-- highlight types in numpy.pxd after cimport numpy --> 
940                 <keyword attribute="Import Keyword" context="#pop" String="as" />
941                 <DetectChar attribute="Dot" context="#stay" char="." />
942                 <keyword attribute="NumPy Type" context="#pop" String="numpytypes" />
943                 <keyword attribute="NumPy Function" context="#pop" String="numpyfuncs" />
944             </context>
945                                     
946                         <context name="parenthesis" attribute="Normal Text" lineEndContext="#stay" noIndentationBasedFolding="True">
947                 <DetectChar attribute="Operator" char=")" context="#pop" /> 
948                                 <IncludeRules context="Normal" />
949                         </context>
950             
951             <context name="bracet" attribute="Normal Text" lineEndContext="#stay" noIndentationBasedFolding="True">
952                 <StringDetect attribute="Normal" String="readonly" context="#stay" />   
953                 <DetectChar attribute="Operator" char="]" context="#pop" /> 
954                 <IncludeRules context="Normal" />
955             </context>
956             
957             <context name="dict" attribute="Normal Text" lineEndContext="#stay" noIndentationBasedFolding="True">
958                 <DetectChar attribute="Operator" char="}" context="#pop" />
959                 <IncludeRules context="Normal" />
960             </context>
961             
962             <context name="defname" attribute="Normal Text" lineEndContext="#pop" noIndentationBasedFolding="True">
963                 <RegExpr attribute="Definition Name" String="[a-zA-Z_][a-zA-Z_0-9]+" context="#stay"/>
964                 <DetectChar attribute="Operator" char="(" context="callargs" />
965                 <DetectChar attribute="Operator" char="[" context="callbracket" />
966                 <IncludeRules context="Normal" />
967             </context>
968             
969             <context name="callargs" attribute="Normal Text" lineEndContext="#stay" noIndentationBasedFolding="True">
970                 <DetectChar attribute="Operator" char=")" context="#pop#pop" />
971                 <IncludeRules context="Normal" />
972             </context>
973             
974             <context name="callbracket" attribute="Normal Text" lineEndContext="#stay" noIndentationBasedFolding="True">
975                 <DetectChar attribute="Operator" char="]" context="#pop#pop" />
976                 <IncludeRules context="Normal" />
977             </context>
978             
979             
980             <context name="cdefname" attribute="Normal Text" lineEndContext="#pop" noIndentationBasedFolding="True">
981                 <keyword attribute="Definition Keyword" String="defs" context="defname"/>
982                 <keyword attribute="Definition Keyword" String="keyw" context="#stay"/>
983                 <keyword attribute="Definition Keyword" String="access" context="#stay"/>
984                 <keyword attribute="Import Keyword" String="imports" context="#stay"/>
985                 <keyword attribute="Special Variable" String="specialvars" context="#stay"/>
986                 
987                 <keyword attribute="C Type" context="#pop" String="ctypes" />
988                 <keyword attribute="Python Type" context="#pop" String="pytypes" />
989                                                                                 
990                 <RegExpr attribute="Hex" String="0[Xx][0-9a-fA-F]+" context="#stay"/>
991                 <RegExpr attribute="Octal" String="0[1-9][0-9]*" context="#stay"/>
992                 <RegExpr attribute="Binary" String="0[Bb][0-9a-fA-F]+" context="#stay"/>
993                 
994                 <RegExpr attribute="Complex" String=" ((([0-9]*\.[0-9]+|[0-9]+\.)|([0-9]+|([0-9]*\.[0-9]+|[0-9]+\.))[eE](\+|-)?[0-9]+)|[0-9]+)[jJ]" context="#stay"/>
995                 <RegExpr attribute="Float" String="([0-9]+\.[0-9]*|\.[0-9]+)([eE][0-9]+)?" context="#stay"/>
996                 
997                 <RegExpr attribute="Int" String="([1-9][0-9]*([eE][0-9]+)?|0)" context="#stay"/>
998                 <RegExpr attribute="Long" String="[1-9][0-9]*([eE][0-9.]+)?[Ll]" context="#stay"/>
999                 
1000                 <keyword attribute="NumPyAttr" String="numpyselector" context="numpy2"/>
1001                                 
1002                 <RegExpr attribute="C Definition Name" String="[a-zA-Z_][a-zA-Z_0-9]+" context="#stay"/>
1003                 <DetectChar attribute="Operator" char="(" context="callargs" />
1004                 <IncludeRules context="Normal" />
1005             </context>
1006             
1007             <context name="callargs" attribute="Normal Text" lineEndContext="#stay" noIndentationBasedFolding="True">
1008                 <DetectChar attribute="Operator" char=")" context="#pop#pop" />
1009                 <IncludeRules context="Normal" />
1010             </context>
1011             
1012             
1013             
1014             
1015             
1016             
1017             
1018             
1019             <context name="numpy2" attribute="Normal Text" lineEndContext="#pop" noIndentationBasedFolding="True">
1020                 <!-- highlight types in numpy.pxd after cimport numpy -->
1021                 <DetectChar attribute="Dot" context="#stay" char="." />
1022                 <keyword attribute="NumPy Type" context="#pop#pop" String="numpytypes" />
1023             </context>
1024             
1025             
1026             
1027             
1028                         <context name="Tripple A-comment" attribute="Comment" lineEndContext="#stay" noIndentationBasedFolding="True">
1029                                 <StringDetect attribute="Comment" String="'''" context="#pop" endRegion="Tripple A-region"/>
1030                         </context>
1031                         <context name="Tripple Q-comment" attribute="Comment" lineEndContext="#stay" noIndentationBasedFolding="True">
1032                                 <HlCChar attribute="Comment" context="#stay"/>
1033                                 <RegExpr attribute="Comment" String="&quot;&quot;&quot;" context="#pop" endRegion="Tripple Q-region"/>
1034                         </context>
1035                         <context name="Tripple A-string" attribute="String" lineEndContext="#stay" noIndentationBasedFolding="True">
1036                                 <HlCStringChar attribute="String Char" context="#stay"/>
1037                                 <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
1038                                 <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
1039                                 <RegExpr attribute="String" String="'''" context="#pop" endRegion="Tripple A-region"/>
1040                         </context>
1041                         <context name="Raw Tripple A-string" attribute="Raw String" lineEndContext="#stay" noIndentationBasedFolding="True">
1042                                 <HlCStringChar attribute="Raw String" context="#stay"/>
1043                                 <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
1044                                 <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
1045                                 <RegExpr attribute="String" String="'''" context="#pop" endRegion="Tripple A-region"/>
1046                         </context>
1047                         <context name="Tripple Q-string" attribute="String" lineEndContext="#stay" noIndentationBasedFolding="True">
1048                                 <HlCStringChar attribute="String Char" context="#stay"/>
1049                                 <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
1050                                 <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
1051                                 <RegExpr attribute="String" String="&quot;&quot;&quot;" context="#pop" endRegion="Tripple Q-region"/>
1052                         </context>
1053                         <context name="Raw Tripple Q-string" attribute="Raw String" lineEndContext="#stay" noIndentationBasedFolding="True">
1054                                 <HlCStringChar attribute="Raw String" context="#stay"/>
1055                                 <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
1056                                 <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
1057                                 <RegExpr attribute="String" String="&quot;&quot;&quot;" context="#pop" endRegion="Tripple Q-region"/>
1058                         </context>
1059                         <context name="Single A-comment" attribute="Comment" lineEndContext="#stay">
1060                                 <HlCStringChar attribute="Comment" context="#stay"/>
1061                                 <DetectChar attribute="Comment" char="'" context="#pop"/>
1062                         </context>
1063                         <context name="Single Q-comment" attribute="Comment" lineEndContext="#stay">
1064                                 <HlCStringChar attribute="Comment" context="#stay"/>
1065                                 <DetectChar attribute="Comment" char="&quot;" context="#pop"/>
1066                         </context>
1067                         <context name="Single A-string" attribute="String" lineEndContext="#stay">
1068                                 <HlCStringChar attribute="String Char" context="#stay"/>
1069                                 <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
1070                                 <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
1071                                 <DetectChar attribute="String" char="'" context="#pop"/>
1072                         </context>
1073                         <context name="Single Q-string" attribute="String" lineEndContext="#stay">
1074                                 <HlCStringChar attribute="String Char" context="#stay"/>
1075                                 <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
1076                                 <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
1077                                 <DetectChar attribute="String" char="&quot;" context="#pop"/>
1078                         </context>
1079                         <context name="Raw A-string" attribute="Raw String" lineEndContext="#stay">
1080                                 <HlCStringChar attribute="Raw String" context="#stay"/>
1081                                 <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
1082                                 <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
1083                                 <DetectChar attribute="Raw String" char="'" context="#pop"/>
1084                         </context>
1085                         <context name="Raw Q-string" attribute="Raw String" lineEndContext="#stay">
1086                                 <HlCStringChar attribute="Raw String" context="#stay"/>
1087                                 <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
1088                                 <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
1089                                 <DetectChar attribute="Raw String" char="&quot;" context="#pop"/>
1090                         </context>
1091                 </contexts>
1092                 <itemDatas>
1093                         <itemData name="Normal Text" defStyleNum="dsNormal"/>
1094                         <itemData name="Import Keyword" defStyleNum="dsKeyword"/>
1095             <itemData name="Definition Keyword" defStyleNum="dsKeyword"/>
1096             <itemData name="Definition Name" defStyleNum="dsOthers"/>
1097             <itemData name="Operator" defStyleNum="dsKeyword"/>
1098                         <itemData name="String Substitution" defStyleNum="dsNormal"/>
1099                         <itemData name="Command Keyword" defStyleNum="dsFunction"/>
1100                         <itemData name="Flow Control Keyword" defStyleNum="dsKeyword"/>
1101                         <itemData name="Builtin Function" defStyleNum="dsFunction"/>
1102                         <itemData name="C Type" defStyleNum="dsDataType"/>
1103             <itemData name="Python Type" defStyleNum="dsDataType"/>
1104             <itemData name="NumPy Type" defStyleNum="dsDataType"/>
1105             <itemData name="NumPy Function" defStyleNum="dsFunction"/>
1106                         <itemData name="Special Variable" defStyleNum="dsOthers"/>
1107                         <itemData name="Preprocessor" defStyleNum="dsOthers"/>
1108             <itemData name="Decorator" defStyleNum="dsFunction"/>
1109                         <itemData name="String Char" defStyleNum="dsChar"/>
1110                         <itemData name="Long" defStyleNum="dsOthers"/>
1111                         <itemData name="Float" defStyleNum="dsFloat"/>
1112                         <itemData name="Int" defStyleNum="dsDecVal"/>
1113                         <itemData name="Hex" defStyleNum="dsOthers"/>
1114                         <itemData name="Octal" defStyleNum="dsOthers"/>
1115             <itemData name="Binary" defStyleNum="dsOthers"/>
1116                         <itemData name="Complex" defStyleNum="dsOthers"/>
1117                         <itemData name="Comment" defStyleNum="dsComment"/>
1118                         <itemData name="String" defStyleNum="dsString"/>
1119                         <itemData name="Raw String" defStyleNum="dsString"/>
1120                 </itemDatas>
1121         </highlighting>
1122         <general>
1123                 <folding indentationsensitive="1" />
1124                 <emptyLines>
1125                         <emptyLine regexpr="\s+" casesensitive="false"/>
1126                         <emptyLine regexpr="\s*#.*$" casesensitive="false"/>
1127                 </emptyLines>
1128                 <comments>
1129                         <comment name="singleLine" start="#" position="afterwhitespace"/>
1130                 </comments>
1131                 <keywords casesensitive="1"/>
1132         </general>
1133 </language>