--- /dev/null
+# HG changeset patch
+# User Sturla Molden <sturla@molden.no>
+# Date 1256723843 25200
+# Node ID 0a6ce52272f641d58c874fa007187778d4c2c81c
+# Parent db4133d43a7ee34d4f172aced054785acba65a57
+Syntax highlighting for Cython and NumPy for KATE and KDevelop.
+
+diff -r db4133d43a7e -r 0a6ce52272f6 Tools/cython-numpy-mode-kate.xml
+--- /dev/null Thu Jan 01 00:00:00 1970 +0000
++++ b/Tools/cython-numpy-mode-kate.xml Wed Oct 28 02:57:23 2009 -0700
+@@ -0,0 +1,1133 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<!DOCTYPE language>
++<!-- Python syntax highlightning v0.9 by Per Wigren -->
++<!-- Python syntax highlighting v1.9 by Michael Bueker (improved keyword differentiation) -->
++<!-- Python syntax highlighting v1.97 by Paul Giannaros -->
++<!-- Pyrex syntax highlighting v0.1 by Matthew Marshall -->
++<!-- Cython syntax highlighting v1.0 by Martin Gysel -->
++<!-- Cython syntax highlighting v2.0 by Sturla Molden -->
++
++<!--
++
++Disclaimer: IANAL. This file is a derivative work of KDE's Python
++syntax file. KDE does not specify a license for the syntax file python.xml
++in it's katepart component. However, katepart and KATE as a whole is
++released with LGPL v2. Assuing python.xml is LGPL'd, this file is hereby
++released with the same license. Note that this only applies to this XML
++file. It does not apply to any work written using this file to highlighting
++syntax. Any changes you make to this file will be covered by the LGPL,
++but it does not to my knowledge taint your source code. At least not
++any more than using KDE would do. Sturla Molden
++
++Thus:
++
++This library is free software; you can redistribute it and/or
++modify it under the terms of the GNU Library General Public
++License as published by the Free Software Foundation; either
++version 2 of the License, or (at your option) any later version.
++
++This library is distributed in the hope that it will be useful,
++but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++Library General Public License for more details.
++
++You should have received a copy of the GNU Library General Public
++License along with this library; if not, write to the
++Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
++Boston, MA 02110-1301, USA.
++
++
++
++-->
++
++<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">
++ <highlighting>
++ <list name="as">
++ <item> as </item>
++ </list>
++ <list name="imports">
++ <item> cimport </item>
++ <item> import </item>
++ <item> from </item>
++ <item> as </item>
++ </list>
++ <list name="prep">
++ <item> DEF </item>
++ <item> IF </item>
++ <item> ELIF </item>
++ <item> ELSE </item>
++ <item> include </item>
++ </list>
++ <list name="defs">
++ <item> class </item>
++ <item> cpdef </item>
++ <item> def </item>
++ </list>
++ <list name="cdef">
++ <item> cdef </item>
++ <item> ctypedef </item>
++ </list>
++ <list name="keyw" >
++ <item> extern </item>
++ <item> api </item>
++ <item> del </item>
++ <item> global </item>
++ <item> property </item>
++ <item> nogil </item>
++ <item> gil </item>
++ <item> inline </item>
++ </list>
++ <list name="access">
++ <item> readonly </item>
++ <item> public </item>
++ </list>
++ <list name="operators">
++ <item> and </item>
++ <item> assert </item>
++ <item> in </item>
++ <item> is </item>
++ <item> by </item>
++ <item> not </item>
++ <item> or </item>
++ <item> sizeof </item>
++ </list>
++ <list name="commands">
++ <!-- <item> exec </item> -->
++ <item> print </item>
++ </list>
++ <list name="flow">
++ <item> break </item>
++ <item> continue </item>
++ <item> elif </item>
++ <item> else </item>
++ <item> except </item>
++ <item> finally </item>
++ <item> for </item>
++ <item> if </item>
++ <item> pass </item>
++ <item> raise </item>
++ <item> return </item>
++ <item> try </item>
++ <item> while </item>
++ <item> with </item>
++ <!-- <item> yield </item> -->
++ </list>
++ <list name="builtinfuncs">
++ <item> __import__ </item>
++ <item> abs </item>
++ <item> all </item>
++ <item> any </item>
++ <item> apply </item>
++ <item> basestring </item>
++ <item> buffer </item>
++ <item> callable </item>
++ <item> chr </item>
++ <item> classmethod </item>
++ <item> cmp </item>
++ <item> coerce </item>
++ <item> compile </item>
++ <item> delattr </item>
++ <item> dir </item>
++ <item> divmod </item>
++ <item> enumerate </item>
++ <item> eval </item>
++ <item> execfile </item>
++ <item> filter </item>
++ <item> getattr </item>
++ <!-- <item> globals </item> -->
++ <item> hasattr </item>
++ <item> hash </item>
++ <item> hex </item>
++ <item> id </item>
++ <item> input </item>
++ <item> intern </item>
++ <item> isinstance </item>
++ <item> issubclass </item>
++ <item> iter </item>
++ <item> len </item>
++ <!-- <item> locals </item> -->
++ <item> map </item>
++ <item> max </item>
++ <item> min </item>
++ <item> oct </item>
++ <item> open </item>
++ <item> ord </item>
++ <item> pow </item>
++ <!-- <item> property </item> -->
++ <item> range </item>
++ <item> raw_input </item>
++ <item> reduce </item>
++ <item> reload </item>
++ <item> repr </item>
++ <item> reversed </item>
++ <item> round </item>
++ <item> setattr </item>
++ <item> sorted </item>
++ <item> staticmethod </item>
++ <item> sum </item>
++ <item> super </item>
++ <item> type </item>
++ <item> unichr </item>
++ <item> unicode </item>
++ <!-- <item> vars </item> -->
++ <item> xrange </item>
++ <item> zip </item>
++ </list>
++ <list name="ctypes">
++ <!-- native types -->
++ <item> unsigned </item>
++ <item> void </item>
++ <item> enum </item>
++ <item> double </item>
++ <item> long </item>
++ <item> short </item>
++ <item> char </item>
++ <item> Py_ssize_t </item>
++ <item> Py_intptr_t </item>
++ <item> Py_buffer </item>
++ <item> bint </item>
++ <item> struct </item>
++ <item> union </item>
++ <item> enum </item>
++ <!-- python types -->
++ </list>
++ <list name="pytypes">
++ <item> int </item>
++ <item> float </item>
++ <item> object </item>
++ <item> list </item>
++ <item> tuple </item>
++ <item> str </item>
++ <item> dict </item>
++ <item> set </item>
++ <item> frozenset </item>
++ <item> slice </item>
++ <item> bool </item>
++ <item> complex </item>
++ <item> file </item>
++ <!-- numpy types -->
++ </list>
++ <list name="numpyselector">
++ <item> np </item>
++ <item> numpy </item>
++ </list>
++ <list name="numpymodule">
++ <item> numpy </item>
++ </list>
++ <list name="cythonmodule">
++ <item> cython </item>
++ </list>
++ <list name="numpytypes">
++ <item> dtype </item>
++ <item> flatiter </item>
++ <item> broadcast </item>
++ <item> ndarray </item>
++ <item> int8_t </item>
++ <item> int16_t </item>
++ <item> int32_t </item>
++ <item> int64_t </item>
++ <item> uint8_t </item>
++ <item> uint16_t </item>
++ <item> uint32_t </item>
++ <item> uint64_t </item>
++ <item> float32_t </item>
++ <item> float64_t </item>
++ <item> complex64_t </item>
++ <item> complex128_t </item>
++ <item> int_t </item>
++ <item> long_t </item>
++ <item> uint_t </item>
++ <item> ulong_t </item>
++ <item> float_t </item>
++ <item> double_t </item>
++ <item> longdouble_t </item>
++ <item> cfloat_t </item>
++ <item> cdouble_t </item>
++ <item> clongdouble_t </item>
++ <item> complex_t </item>
++ <item> npy_int8 </item>
++ <item> npy_int16 </item>
++ <item> npy_int32 </item>
++ <item> npy_int64 </item>
++ <item> npy_int96 </item>
++ <item> npy_int128 </item>
++ <item> npy_uint8 </item>
++ <item> npy_uint16 </item>
++ <item> npy_uint32 </item>
++ <item> npy_uint64 </item>
++ <item> npy_uint96 </item>
++ <item> npy_uint128 </item>
++ <item> npy_float32 </item>
++ <item> npy_float64 </item>
++ <item> npy_float80 </item>
++ <item> npy_float96 </item>
++ <item> npy_float128 </item>
++ <item> npy_complex64 </item>
++ <item> npy_complex128 </item>
++ <item> npy_complex120 </item>
++ <item> npy_complex192 </item>
++ <item> npy_complex256 </item>
++ <item> npy_cfloat </item>
++ <item> npy_cdouble </item>
++ <item> npy_clongdouble </item>
++ <item> npy_bool </item>
++ <item> npy_byte </item>
++ <item> npy_short </item>
++ <item> npy_int </item>
++ <item> npy_long </item>
++ <item> npy_longlong </item>
++ <item> npy_ubyte </item>
++ <item> npy_ushort </item>
++ <item> npy_uint </item>
++ <item> npy_ulong </item>
++ <item> npy_ulonglong </item>
++ <item> npy_float </item>
++ <item> npy_double </item>
++ <item> npy_longdouble </item>
++ <item> npy_intp </item>
++ </list>
++ <list name="numpyfuncs">
++ <item> DataSource </item>
++ <item> MachAr </item>
++ <item> PackageLoader </item>
++ <item> RankWarning </item>
++ <item> Tester </item>
++ <item> abs </item>
++ <item> absolute </item>
++ <item> add </item>
++ <item> add_docstring </item>
++ <item> add_newdoc </item>
++ <item> alen </item>
++ <item> all </item>
++ <item> allclose </item>
++ <item> alltrue </item>
++ <item> alterdot </item>
++ <item> amax </item>
++ <item> amin </item>
++ <item> angle </item>
++ <item> any </item>
++ <item> append </item>
++ <item> apply_along_axis </item>
++ <item> apply_over_axes </item>
++ <item> arange </item>
++ <item> arccos </item>
++ <item> arccosh </item>
++ <item> arcsin </item>
++ <item> arcsinh </item>
++ <item> arctan </item>
++ <item> arctan2 </item>
++ <item> arctanh </item>
++ <item> argmax </item>
++ <item> argmin </item>
++ <item> argsort </item>
++ <item> argwhere </item>
++ <item> around </item>
++ <item> array </item>
++ <item> array2string </item>
++ <item> array_equal </item>
++ <item> array_equiv </item>
++ <item> array_repr </item>
++ <item> array_split </item>
++ <item> array_str </item>
++ <item> asanyarray </item>
++ <item> asarray </item>
++ <item> asarray_chkfinite </item>
++ <item> ascontiguousarray </item>
++ <item> asfarray </item>
++ <item> asfortranarray </item>
++ <item> asmatrix </item>
++ <item> asscalar </item>
++ <item> atleast_1d </item>
++ <item> atleast_2d </item>
++ <item> atleast_3d </item>
++ <item> average </item>
++ <item> bartlett </item>
++ <item> base_repr </item>
++ <item> bench </item>
++ <item> binary_repr </item>
++ <item> bincount </item>
++ <item> bitwise_and </item>
++ <item> bitwise_not </item>
++ <item> bitwise_or </item>
++ <item> bitwise_xor </item>
++ <item> blackman </item>
++ <item> bmat </item>
++ <item> bool </item>
++ <item> bool8 </item>
++ <item> bool_ </item>
++ <item> broadcast </item>
++ <item> broadcast_arrays </item>
++ <item> byte </item>
++ <item> byte_bounds </item>
++ <item> can_cast </item>
++ <item> cdouble </item>
++ <item> ceil </item>
++ <item> cfloat </item>
++ <item> character </item>
++ <item> chararray </item>
++ <item> choose </item>
++ <item> clip </item>
++ <item> clongdouble </item>
++ <item> clongfloat </item>
++ <item> column_stack </item>
++ <item> common_type </item>
++ <item> compare_chararrays </item>
++ <item> complex </item>
++ <item> complex128 </item>
++ <item> complex192 </item>
++ <item> complex64 </item>
++ <item> complex_ </item>
++ <item> complexfloating </item>
++ <item> compress </item>
++ <item> concatenate </item>
++ <item> conj </item>
++ <item> conjugate </item>
++ <item> convolve </item>
++ <item> copy </item>
++ <item> corrcoef </item>
++ <item> correlate </item>
++ <item> cos </item>
++ <item> cosh </item>
++ <item> cov </item>
++ <item> cross </item>
++ <item> csingle </item>
++ <item> cumprod </item>
++ <item> cumproduct </item>
++ <item> cumsum </item>
++ <item> deg2rad </item>
++ <item> degrees </item>
++ <item> delete </item>
++ <item> deprecate </item>
++ <item> deprecate_with_doc </item>
++ <item> diag </item>
++ <item> diagflat </item>
++ <item> diagonal </item>
++ <item> diff </item>
++ <item> digitize </item>
++ <item> disp </item>
++ <item> divide </item>
++ <item> dot </item>
++ <item> double </item>
++ <item> dsplit </item>
++ <item> dstack </item>
++ <item> dtype </item>
++ <item> ediff1d </item>
++ <item> empty </item>
++ <item> empty_like </item>
++ <item> equal </item>
++ <item> errstate </item>
++ <item> exp </item>
++ <item> exp2 </item>
++ <item> expand_dims </item>
++ <item> expm1 </item>
++ <item> extract </item>
++ <item> eye </item>
++ <item> fabs </item>
++ <item> fastCopyAndTranspose </item>
++ <item> find_common_type </item>
++ <item> finfo </item>
++ <item> fix </item>
++ <item> flatiter </item>
++ <item> flatnonzero </item>
++ <item> flexible </item>
++ <item> fliplr </item>
++ <item> flipud </item>
++ <item> float </item>
++ <item> float32 </item>
++ <item> float64 </item>
++ <item> float96 </item>
++ <item> float_ </item>
++ <item> floating </item>
++ <item> floor </item>
++ <item> floor_divide </item>
++ <item> fmax </item>
++ <item> fmin </item>
++ <item> fmod </item>
++ <item> frexp </item>
++ <item> frombuffer </item>
++ <item> fromfile </item>
++ <item> fromfunction </item>
++ <item> fromiter </item>
++ <item> frompyfunc </item>
++ <item> fromregex </item>
++ <item> fromstring </item>
++ <item> fv </item>
++ <item> generic </item>
++ <item> genfromtxt </item>
++ <item> get_array_wrap </item>
++ <item> get_include </item>
++ <item> get_numarray_include </item>
++ <item> get_numpy_include </item>
++ <item> get_printoptions </item>
++ <item> getbuffer </item>
++ <item> getbufsize </item>
++ <item> geterr </item>
++ <item> geterrcall </item>
++ <item> geterrobj </item>
++ <item> gradient </item>
++ <item> greater </item>
++ <item> greater_equal </item>
++ <item> hamming </item>
++ <item> hanning </item>
++ <item> histogram </item>
++ <item> histogram2d </item>
++ <item> histogramdd </item>
++ <item> hsplit </item>
++ <item> hstack </item>
++ <item> hypot </item>
++ <item> i0 </item>
++ <item> identity </item>
++ <item> imag </item>
++ <item> indices </item>
++ <item> inexact </item>
++ <item> info </item>
++ <item> inner </item>
++ <item> insert </item>
++ <item> int </item>
++ <item> int0 </item>
++ <item> int16 </item>
++ <item> int32 </item>
++ <item> int64 </item>
++ <item> int8 </item>
++ <item> int_ </item>
++ <item> int_asbuffer </item>
++ <item> intc </item>
++ <item> integer </item>
++ <item> interp </item>
++ <item> intersect1d </item>
++ <item> intersect1d_nu </item>
++ <item> intp </item>
++ <item> invert </item>
++ <item> ipmt </item>
++ <item> irr </item>
++ <item> iscomplex </item>
++ <item> iscomplexobj </item>
++ <item> isfinite </item>
++ <item> isfortran </item>
++ <item> isinf </item>
++ <item> isnan </item>
++ <item> isneginf </item>
++ <item> isposinf </item>
++ <item> isreal </item>
++ <item> isrealobj </item>
++ <item> isscalar </item>
++ <item> issctype </item>
++ <item> issubclass_ </item>
++ <item> issubdtype </item>
++ <item> issubsctype </item>
++ <item> iterable </item>
++ <item> ix_ </item>
++ <item> kaiser </item>
++ <item> kron </item>
++ <item> ldexp </item>
++ <item> left_shift </item>
++ <item> less </item>
++ <item> less_equal </item>
++ <item> lexsort </item>
++ <item> linspace </item>
++ <item> load </item>
++ <item> loads </item>
++ <item> loadtxt </item>
++ <item> log </item>
++ <item> log10 </item>
++ <item> log1p </item>
++ <item> log2 </item>
++ <item> logaddexp </item>
++ <item> logaddexp2 </item>
++ <item> logical_and </item>
++ <item> logical_not </item>
++ <item> logical_or </item>
++ <item> logical_xor </item>
++ <item> logspace </item>
++ <item> long </item>
++ <item> longcomplex </item>
++ <item> longdouble </item>
++ <item> longfloat </item>
++ <item> longlong </item>
++ <item> lookfor </item>
++ <item> mafromtxt </item>
++ <item> mat </item>
++ <item> matrix </item>
++ <item> max </item>
++ <item> maximum </item>
++ <item> maximum_sctype </item>
++ <item> may_share_memory </item>
++ <item> mean </item>
++ <item> median </item>
++ <item> memmap </item>
++ <item> meshgrid </item>
++ <item> min </item>
++ <item> minimum </item>
++ <item> mintypecode </item>
++ <item> mirr </item>
++ <item> mod </item>
++ <item> modf </item>
++ <item> msort </item>
++ <item> multiply </item>
++ <item> nan_to_num </item>
++ <item> nanargmax </item>
++ <item> nanargmin </item>
++ <item> nanmax </item>
++ <item> nanmin </item>
++ <item> nansum </item>
++ <item> ndarray </item>
++ <item> ndenumerate </item>
++ <item> ndfromtxt </item>
++ <item> ndim </item>
++ <item> ndindex </item>
++ <item> negative </item>
++ <item> newbuffer </item>
++ <item> nonzero </item>
++ <item> not_equal </item>
++ <item> nper </item>
++ <item> npv </item>
++ <item> number </item>
++ <item> obj2sctype </item>
++ <item> object </item>
++ <item> object0 </item>
++ <item> object_ </item>
++ <item> ones </item>
++ <item> ones_like </item>
++ <item> outer </item>
++ <item> packbits </item>
++ <item> piecewise </item>
++ <item> pkgload </item>
++ <item> place </item>
++ <item> pmt </item>
++ <item> poly </item>
++ <item> poly1d </item>
++ <item> polyadd </item>
++ <item> polyder </item>
++ <item> polydiv </item>
++ <item> polyfit </item>
++ <item> polyint </item>
++ <item> polymul </item>
++ <item> polysub </item>
++ <item> polyval </item>
++ <item> power </item>
++ <item> ppmt </item>
++ <item> prod </item>
++ <item> product </item>
++ <item> ptp </item>
++ <item> put </item>
++ <item> putmask </item>
++ <item> pv </item>
++ <item> rad2deg </item>
++ <item> radians </item>
++ <item> rank </item>
++ <item> rate </item>
++ <item> ravel </item>
++ <item> real </item>
++ <item> real_if_close </item>
++ <item> recarray </item>
++ <item> recfromcsv </item>
++ <item> recfromtxt </item>
++ <item> reciprocal </item>
++ <item> record </item>
++ <item> remainder </item>
++ <item> repeat </item>
++ <item> require </item>
++ <item> reshape </item>
++ <item> resize </item>
++ <item> restoredot </item>
++ <item> right_shift </item>
++ <item> rint </item>
++ <item> roll </item>
++ <item> rollaxis </item>
++ <item> roots </item>
++ <item> rot90 </item>
++ <item> round </item>
++ <item> round_ </item>
++ <item> row_stack </item>
++ <item> safe_eval </item>
++ <item> save </item>
++ <item> savetxt </item>
++ <item> savez </item>
++ <item> sctype2char </item>
++ <item> searchsorted </item>
++ <item> select </item>
++ <item> set_numeric_ops </item>
++ <item> set_printoptions </item>
++ <item> set_string_function </item>
++ <item> setbufsize </item>
++ <item> setdiff1d </item>
++ <item> seterr </item>
++ <item> seterrcall </item>
++ <item> seterrobj </item>
++ <item> setmember1d </item>
++ <item> setxor1d </item>
++ <item> shape </item>
++ <item> short </item>
++ <item> show_config </item>
++ <item> sign </item>
++ <item> signbit </item>
++ <item> signedinteger </item>
++ <item> sin </item>
++ <item> sinc </item>
++ <item> single </item>
++ <item> singlecomplex </item>
++ <item> sinh </item>
++ <item> size </item>
++ <item> sometrue </item>
++ <item> sort </item>
++ <item> sort_complex </item>
++ <item> source </item>
++ <item> split </item>
++ <item> sqrt </item>
++ <item> square </item>
++ <item> squeeze </item>
++ <item> std </item>
++ <item> str </item>
++ <item> str_ </item>
++ <item> string0 </item>
++ <item> string_ </item>
++ <item> subtract </item>
++ <item> sum </item>
++ <item> swapaxes </item>
++ <item> take </item>
++ <item> tan </item>
++ <item> tanh </item>
++ <item> tensordot </item>
++ <item> test </item>
++ <item> tile </item>
++ <item> trace </item>
++ <item> transpose </item>
++ <item> trapz </item>
++ <item> tri </item>
++ <item> tril </item>
++ <item> trim_zeros </item>
++ <item> triu </item>
++ <item> true_divide </item>
++ <item> trunc </item>
++ <item> typename </item>
++ <item> ubyte </item>
++ <item> ufunc </item>
++ <item> uint </item>
++ <item> uint0 </item>
++ <item> uint16 </item>
++ <item> uint32 </item>
++ <item> uint64 </item>
++ <item> uint8 </item>
++ <item> uintc </item>
++ <item> uintp </item>
++ <item> ulonglong </item>
++ <item> unicode </item>
++ <item> unicode0 </item>
++ <item> unicode_ </item>
++ <item> union1d </item>
++ <item> unique </item>
++ <item> unique1d </item>
++ <item> unpackbits </item>
++ <item> unravel_index </item>
++ <item> unsignedinteger </item>
++ <item> unwrap </item>
++ <item> ushort </item>
++ <item> vander </item>
++ <item> var </item>
++ <item> vdot </item>
++ <item> vectorize </item>
++ <item> void </item>
++ <item> void0 </item>
++ <item> vsplit </item>
++ <item> vstack </item>
++ <item> where </item>
++ <item> who </item>
++ <item> zeros </item>
++ <item> zeros_like </item>
++ </list>
++ <list name="specialvars">
++ <item> __future__ </item>
++ <item> __import__ </item>
++ <item> __name__ </item>
++ <item> __cythonbufferdefaults__ </item>
++ <item> __weakref__ </item>
++ <item> None </item>
++ <item> self </item>
++ <item> True </item>
++ <item> False </item>
++ <item> NotImplemented </item>
++ <item> Ellipsis </item>
++ <item> NULL </item>
++ </list>
++ <list name="overloaders">
++ <item>__new__</item>
++ <item>__init__</item>
++ <item> __cinit__ </item>
++ <item> __dealloc__ </item>
++ <item> __cmp__ </item>
++ <item> __richcmp__ </item>
++ <item> __str__ </item>
++ <item> __repr__ </item>
++ <item> __hash__ </item>
++ <item> __call__ </item>
++ <item> __iter__ </item>
++ <item> __getattr__ </item>
++ <item> __setattr__ </item>
++ <item> __delattr__ </item>
++ <item> __add__ </item>
++ <item> __sub__ </item>
++ <item> __mul__ </item>
++ <item> __div__ </item>
++ <item> __floordiv__ </item>
++ <item> __truediv__ </item>
++ <item> __mod__ </item>
++ <item> __divmod__ </item>
++ <item> __pow__ </item>
++ <item> __neg__ </item>
++ <item> __pos__ </item>
++ <item> __abs__ </item>
++ <item> __nonzero__ </item>
++ <item> __invert__ </item>
++ <item> __lshift__ </item>
++ <item> __rshift__ </item>
++ <item> __and__ </item>
++ <item> __or__ </item>
++ <item> __xor__ </item>
++ <item> __int__ </item>
++ <item> __long__ </item>
++ <item> __float__ </item>
++ <item> __oct__ </item>
++ <item> __hex__ </item>
++ <item> __index__ </item>
++ <item> __iadd__ </item>
++ <item> __isub__ </item>
++ <item> __imul__ </item>
++ <item> __idiv__ </item>
++ <item> __ifloordiv__ </item>
++ <item> __itruediv__ </item>
++ <item> __imod__ </item>
++ <item> __ipow__ </item>
++ <item> __ilshift__ </item>
++ <item> __irshift__ </item>
++ <item> __iand__ </item>
++ <item> __ior__ </item>
++ <item> __ixor__ </item>
++ <item> __len__ </item>
++ <item> __getitem__ </item>
++ <item> __setitem__ </item>
++ <item> __delitem__ </item>
++ <item> __getslice__ </item>
++ <item> __setslice__ </item>
++ <item> __delslice__ </item>
++ <item> __contains__ </item>
++ <item> __next__ </item>
++ <item> __getreadbuffer__ </item>
++ <item> __getwritebuffer__ </item>
++ <item> __getsegcount__ </item>
++ <item> __getcharbuffer__ </item>
++ <item> __get__ </item>
++ <item> __set__ </item>
++ <item> __delete__ </item>
++ <item> __getbuffer__ </item>
++ <item> __releasebuffer__ </item>
++ </list>
++ <list name="exceptions">
++ <item>ArithmeticError</item>
++ <item>AssertionError</item>
++ <item>AttributeError</item>
++ <item>BaseException</item>
++ <item>DeprecationWarning</item>
++ <item>EnvironmentError</item>
++ <item>EOFError</item>
++ <item>Exception</item>
++ <item>FloatingPointError</item>
++ <item>FutureWarning</item>
++ <item>GeneratorExit</item>
++ <item>IOError</item>
++ <item>ImportError</item>
++ <item>ImportWarning</item>
++ <item>IndexError</item>
++ <item>KeyError</item>
++ <item>KeyboardInterrupt</item>
++ <item>LookupError</item>
++ <item>MemoryError</item>
++ <item>NameError</item>
++ <item>NotImplementedError</item>
++ <item>OSError</item>
++ <item>OverflowError</item>
++ <item>PendingDeprecationWarning</item>
++ <item>ReferenceError</item>
++ <item>RuntimeError</item>
++ <item>RuntimeWarning</item>
++ <item>StandardError</item>
++ <item>StopIteration</item>
++ <item>SyntaxError</item>
++ <item>SyntaxWarning</item>
++ <item>SystemError</item>
++ <item>SystemExit</item>
++ <item>TypeError</item>
++ <item>UnboundLocalError</item>
++ <item>UserWarning</item>
++ <item>UnicodeError</item>
++ <item>UnicodeWarning</item>
++ <item>UnicodeEncodeError</item>
++ <item>UnicodeDecodeError</item>
++ <item>UnicodeTranslateError</item>
++ <item>ValueError</item>
++ <item>Warning</item>
++ <item>WindowsError</item>
++ <item>ZeroDivisionError</item>
++ </list>
++
++ <contexts>
++
++ <context name="Normal" attribute="Normal Text" lineEndContext="#stay">
++
++ <keyword attribute="Definition Keyword" String="cdef" context="cdefname"/>
++ <keyword attribute="Definition Keyword" String="defs" context="defname"/>
++ <keyword attribute="Definition Keyword" String="keyw" context="#stay"/>
++
++ <keyword attribute="Import Keyword" String="imports" context="#stay"/>
++ <keyword attribute="Preprocessor" String="prep" context="#stay"/>
++ <keyword attribute="Operator" String="operators" context="#stay"/>
++ <keyword attribute="Command Keyword" String="commands" context="#stay"/>
++ <keyword attribute="Flow Control Keyword" String="flow" context="#stay"/>
++ <keyword attribute="Builtin Function" String="builtinfuncs" context="#stay"/>
++
++ <keyword attribute="Special Variable" String="specialvars" context="#stay"/>
++ <keyword attribute="Special Variable" String="exceptions" context="#stay"/>
++ <keyword attribute="Special Variable" String="overloaders" context="#stay"/>
++
++ <keyword attribute="C Type" context="#stay" String="ctypes" />
++ <keyword attribute="Python Type" context="#stay" String="pytypes" />
++
++ <RegExpr attribute="Hex" String="0[Xx][0-9a-fA-F]+" context="#stay"/>
++ <RegExpr attribute="Octal" String="0[1-9][0-9]*" context="#stay"/>
++ <RegExpr attribute="Binary" String="0[Bb][0-9a-fA-F]+" context="#stay"/>
++
++ <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"/>
++ <RegExpr attribute="Float" String="([0-9]+\.[0-9]*|\.[0-9]+)([eE][0-9]+)?" context="#stay"/>
++
++ <RegExpr attribute="Int" String="([1-9][0-9]*([eE][0-9]+)?|0)" context="#stay"/>
++ <RegExpr attribute="Long" String="[1-9][0-9]*([eE][0-9.]+)?[Ll]" context="#stay"/>
++
++ <keyword attribute="NumPyAttr" String="numpyselector" context="numpy"/>
++
++ <RegExpr attribute="Decorator" String="@[a-zA-Z_][a-zA-Z_0-9\.]+" context="#stay"/>
++
++ <RegExpr attribute="Normal" String="[a-zA-Z_][a-zA-Z_0-9]+" context="#stay"/>
++
++ <RegExpr attribute="Raw String" String="[rR]'''" context="Raw Tripple A-string"/>
++ <RegExpr attribute="Raw String" String="[rR]"""" context="Raw Tripple Q-string"/>
++
++ <RegExpr attribute="Raw String" String="[rR]'" context="Raw A-string"/>
++ <RegExpr attribute="Raw String" String="[rR]"" context="Raw Q-string"/>
++
++ <RegExpr attribute="Comment" String="#.*$" context="#stay"/>
++ <RegExpr attribute="Comment" String="^\s*'''" context="Tripple A-comment" beginRegion="Tripple A-region"/>
++ <RegExpr attribute="Comment" String="^\s*"""" context="Tripple Q-comment" beginRegion="Tripple Q-region"/>
++
++ <StringDetect attribute="String" String="'''" context="Tripple A-string" beginRegion="Tripple A-region"/>
++ <StringDetect attribute="String" String=""""" context="Tripple Q-string" beginRegion="Tripple Q-region"/>
++ <DetectChar attribute="String" char="'" context="Single A-string"/>
++ <DetectChar attribute="String" char=""" context="Single Q-string"/>
++
++
++ <DetectChar attribute="Operator" char="(" context="parenthesis" />
++
++ <DetectChar attribute="Operator" char="[" context="bracet" />
++
++ <DetectChar attribute="Operator" char="{" context="dict" />
++
++ <RegExpr attribute="Operator" String="[+*/%\|=;\!<>!^&~-]" context="#stay"/>
++
++ <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
++
++ </context>
++
++ <context name="numpy" attribute="Normal Text" lineEndContext="#pop" noIndentationBasedFolding="True">
++ <!-- highlight types in numpy.pxd after cimport numpy -->
++ <keyword attribute="Import Keyword" context="#pop" String="as" />
++ <DetectChar attribute="Dot" context="#stay" char="." />
++ <keyword attribute="NumPy Type" context="#pop" String="numpytypes" />
++ <keyword attribute="NumPy Function" context="#pop" String="numpyfuncs" />
++ </context>
++
++ <context name="parenthesis" attribute="Normal Text" lineEndContext="#stay" noIndentationBasedFolding="True">
++ <DetectChar attribute="Operator" char=")" context="#pop" />
++ <IncludeRules context="Normal" />
++ </context>
++
++ <context name="bracet" attribute="Normal Text" lineEndContext="#stay" noIndentationBasedFolding="True">
++ <StringDetect attribute="Normal" String="readonly" context="#stay" />
++ <DetectChar attribute="Operator" char="]" context="#pop" />
++ <IncludeRules context="Normal" />
++ </context>
++
++ <context name="dict" attribute="Normal Text" lineEndContext="#stay" noIndentationBasedFolding="True">
++ <DetectChar attribute="Operator" char="}" context="#pop" />
++ <IncludeRules context="Normal" />
++ </context>
++
++ <context name="defname" attribute="Normal Text" lineEndContext="#pop" noIndentationBasedFolding="True">
++ <RegExpr attribute="Definition Name" String="[a-zA-Z_][a-zA-Z_0-9]+" context="#stay"/>
++ <DetectChar attribute="Operator" char="(" context="callargs" />
++ <DetectChar attribute="Operator" char="[" context="callbracket" />
++ <IncludeRules context="Normal" />
++ </context>
++
++ <context name="callargs" attribute="Normal Text" lineEndContext="#stay" noIndentationBasedFolding="True">
++ <DetectChar attribute="Operator" char=")" context="#pop#pop" />
++ <IncludeRules context="Normal" />
++ </context>
++
++ <context name="callbracket" attribute="Normal Text" lineEndContext="#stay" noIndentationBasedFolding="True">
++ <DetectChar attribute="Operator" char="]" context="#pop#pop" />
++ <IncludeRules context="Normal" />
++ </context>
++
++
++ <context name="cdefname" attribute="Normal Text" lineEndContext="#pop" noIndentationBasedFolding="True">
++ <keyword attribute="Definition Keyword" String="defs" context="defname"/>
++ <keyword attribute="Definition Keyword" String="keyw" context="#stay"/>
++ <keyword attribute="Definition Keyword" String="access" context="#stay"/>
++ <keyword attribute="Import Keyword" String="imports" context="#stay"/>
++ <keyword attribute="Special Variable" String="specialvars" context="#stay"/>
++
++ <keyword attribute="C Type" context="#pop" String="ctypes" />
++ <keyword attribute="Python Type" context="#pop" String="pytypes" />
++
++ <RegExpr attribute="Hex" String="0[Xx][0-9a-fA-F]+" context="#stay"/>
++ <RegExpr attribute="Octal" String="0[1-9][0-9]*" context="#stay"/>
++ <RegExpr attribute="Binary" String="0[Bb][0-9a-fA-F]+" context="#stay"/>
++
++ <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"/>
++ <RegExpr attribute="Float" String="([0-9]+\.[0-9]*|\.[0-9]+)([eE][0-9]+)?" context="#stay"/>
++
++ <RegExpr attribute="Int" String="([1-9][0-9]*([eE][0-9]+)?|0)" context="#stay"/>
++ <RegExpr attribute="Long" String="[1-9][0-9]*([eE][0-9.]+)?[Ll]" context="#stay"/>
++
++ <keyword attribute="NumPyAttr" String="numpyselector" context="numpy2"/>
++
++ <RegExpr attribute="C Definition Name" String="[a-zA-Z_][a-zA-Z_0-9]+" context="#stay"/>
++ <DetectChar attribute="Operator" char="(" context="callargs" />
++ <IncludeRules context="Normal" />
++ </context>
++
++ <context name="callargs" attribute="Normal Text" lineEndContext="#stay" noIndentationBasedFolding="True">
++ <DetectChar attribute="Operator" char=")" context="#pop#pop" />
++ <IncludeRules context="Normal" />
++ </context>
++
++
++
++
++
++
++
++
++ <context name="numpy2" attribute="Normal Text" lineEndContext="#pop" noIndentationBasedFolding="True">
++ <!-- highlight types in numpy.pxd after cimport numpy -->
++ <DetectChar attribute="Dot" context="#stay" char="." />
++ <keyword attribute="NumPy Type" context="#pop#pop" String="numpytypes" />
++ </context>
++
++
++
++
++ <context name="Tripple A-comment" attribute="Comment" lineEndContext="#stay" noIndentationBasedFolding="True">
++ <StringDetect attribute="Comment" String="'''" context="#pop" endRegion="Tripple A-region"/>
++ </context>
++ <context name="Tripple Q-comment" attribute="Comment" lineEndContext="#stay" noIndentationBasedFolding="True">
++ <HlCChar attribute="Comment" context="#stay"/>
++ <RegExpr attribute="Comment" String=""""" context="#pop" endRegion="Tripple Q-region"/>
++ </context>
++ <context name="Tripple A-string" attribute="String" lineEndContext="#stay" noIndentationBasedFolding="True">
++ <HlCStringChar attribute="String Char" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
++ <RegExpr attribute="String" String="'''" context="#pop" endRegion="Tripple A-region"/>
++ </context>
++ <context name="Raw Tripple A-string" attribute="Raw String" lineEndContext="#stay" noIndentationBasedFolding="True">
++ <HlCStringChar attribute="Raw String" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
++ <RegExpr attribute="String" String="'''" context="#pop" endRegion="Tripple A-region"/>
++ </context>
++ <context name="Tripple Q-string" attribute="String" lineEndContext="#stay" noIndentationBasedFolding="True">
++ <HlCStringChar attribute="String Char" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
++ <RegExpr attribute="String" String=""""" context="#pop" endRegion="Tripple Q-region"/>
++ </context>
++ <context name="Raw Tripple Q-string" attribute="Raw String" lineEndContext="#stay" noIndentationBasedFolding="True">
++ <HlCStringChar attribute="Raw String" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
++ <RegExpr attribute="String" String=""""" context="#pop" endRegion="Tripple Q-region"/>
++ </context>
++ <context name="Single A-comment" attribute="Comment" lineEndContext="#stay">
++ <HlCStringChar attribute="Comment" context="#stay"/>
++ <DetectChar attribute="Comment" char="'" context="#pop"/>
++ </context>
++ <context name="Single Q-comment" attribute="Comment" lineEndContext="#stay">
++ <HlCStringChar attribute="Comment" context="#stay"/>
++ <DetectChar attribute="Comment" char=""" context="#pop"/>
++ </context>
++ <context name="Single A-string" attribute="String" lineEndContext="#stay">
++ <HlCStringChar attribute="String Char" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
++ <DetectChar attribute="String" char="'" context="#pop"/>
++ </context>
++ <context name="Single Q-string" attribute="String" lineEndContext="#stay">
++ <HlCStringChar attribute="String Char" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
++ <DetectChar attribute="String" char=""" context="#pop"/>
++ </context>
++ <context name="Raw A-string" attribute="Raw String" lineEndContext="#stay">
++ <HlCStringChar attribute="Raw String" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
++ <DetectChar attribute="Raw String" char="'" context="#pop"/>
++ </context>
++ <context name="Raw Q-string" attribute="Raw String" lineEndContext="#stay">
++ <HlCStringChar attribute="Raw String" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%\([a-zA-Z0-9_]+\)[a-zA-Z]" context="#stay"/>
++ <RegExpr attribute="String Substitution" String="%[a-zA-Z]" context="#stay"/>
++ <DetectChar attribute="Raw String" char=""" context="#pop"/>
++ </context>
++ </contexts>
++ <itemDatas>
++ <itemData name="Normal Text" defStyleNum="dsNormal"/>
++ <itemData name="Import Keyword" defStyleNum="dsKeyword"/>
++ <itemData name="Definition Keyword" defStyleNum="dsKeyword"/>
++ <itemData name="Definition Name" defStyleNum="dsOthers"/>
++ <itemData name="Operator" defStyleNum="dsKeyword"/>
++ <itemData name="String Substitution" defStyleNum="dsNormal"/>
++ <itemData name="Command Keyword" defStyleNum="dsFunction"/>
++ <itemData name="Flow Control Keyword" defStyleNum="dsKeyword"/>
++ <itemData name="Builtin Function" defStyleNum="dsFunction"/>
++ <itemData name="C Type" defStyleNum="dsDataType"/>
++ <itemData name="Python Type" defStyleNum="dsDataType"/>
++ <itemData name="NumPy Type" defStyleNum="dsDataType"/>
++ <itemData name="NumPy Function" defStyleNum="dsFunction"/>
++ <itemData name="Special Variable" defStyleNum="dsOthers"/>
++ <itemData name="Preprocessor" defStyleNum="dsOthers"/>
++ <itemData name="Decorator" defStyleNum="dsFunction"/>
++ <itemData name="String Char" defStyleNum="dsChar"/>
++ <itemData name="Long" defStyleNum="dsOthers"/>
++ <itemData name="Float" defStyleNum="dsFloat"/>
++ <itemData name="Int" defStyleNum="dsDecVal"/>
++ <itemData name="Hex" defStyleNum="dsOthers"/>
++ <itemData name="Octal" defStyleNum="dsOthers"/>
++ <itemData name="Binary" defStyleNum="dsOthers"/>
++ <itemData name="Complex" defStyleNum="dsOthers"/>
++ <itemData name="Comment" defStyleNum="dsComment"/>
++ <itemData name="String" defStyleNum="dsString"/>
++ <itemData name="Raw String" defStyleNum="dsString"/>
++ </itemDatas>
++ </highlighting>
++ <general>
++ <folding indentationsensitive="1" />
++ <emptyLines>
++ <emptyLine regexpr="\s+" casesensitive="false"/>
++ <emptyLine regexpr="\s*#.*$" casesensitive="false"/>
++ </emptyLines>
++ <comments>
++ <comment name="singleLine" start="#" position="afterwhitespace"/>
++ </comments>
++ <keywords casesensitive="1"/>
++ </general>
++</language>