Kate

Leon Pennington <[email protected]> Mon, 12 Jan 2004 00:43:57 +0000
Newsgroups gmane.comp.kde.devel.kpovmodeler
Message-ID <[email protected]>
Attached is a Kate highlighting xml for povray scene files. After going round 
in circles for a while, I finally managed to get it working properly. So if 
you have 3.2 installed put this in your $KDEDIRS/share/apps/katepart/syntax 
directory, for easier viewing :)

-- 
Leon Pennington

Programming is a pastime similar to banging one's head against a wall, but 
with fewer opportunities for reward.


List archive and information: https://mail.kde.org/mailman/listinfo/kpovmodeler-devel
povray.xml (text/xml, 19.8 KB)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<language name="Povray" version="0.1" kateversion="2.1" section="Other" extensions="*.inc;*.pov" mimetype="text/plain" priority="9">
  <highlighting>
    <list name="keywords">
      <item> aa-level </item>
      <item> aa-threshold </item>
      <item> absorbtion </item>
      <item> accuracy </item>
      <item> adaptive </item>
      <item> adc_bailout </item>
      <item> all </item>
      <item> all_intersections </item>
      <item> alpha </item>
      <item> altitude </item>
      <item> always_sample </item>
      <item> ambient </item>
      <item> ambient_light </item>
      <item> angle </item>
      <item> aperture </item>
      <item> append </item>
      <item> arc_angle </item>
      <item> area_light </item>
      <item> ascii </item>
      <item> assumed_gamma </item>
      <item> autostop </item>

      <item> back_hole </item>
      <item> blue </item>
      <item> blur_samples </item>
      <item> bounded_by </item>
      <item> break </item>
      <item> brick_size </item>
      <item> brightness </item>
      <item> brilliance </item>
      <item> bump_size </item>

      <item> case </item>
      <item> caustics </item>
      <item> charset </item>
      <item> circular </item>
      <item> clipped_by </item>
      <item> collect </item>
      <item> color </item>
      <item> colour </item>
      <item> component </item>
      <item> composite </item>
      <item> confidence </item>
      <item> conic_sweep </item>
      <item> conserve_energy </item>
      <item> contained_by </item>
      <item> control0 </item>
      <item> control1 </item>
      <item> coords </item>
      <item> count </item>
      <item> crand </item>
      <item> cubic_spline </item>
      <item> cubic_wave </item>
      <item> cutaway_textures </item>

      <item> diffuse </item>
      <item> direction </item>
      <item> dispersion </item>
      <item> dispersion_samples </item>
      <item> dist_exp </item>
      <item> distance </item>
      <item> double_illuminate </item>

      <item> eccentricity </item>
      <item> emission </item>
      <item> error_bound </item>
      <item> evaluate </item>
      <item> expand_thresholds </item>
      <item> exponent </item>
      <item> exterior </item>
      <item> extinction </item>

      <item> face_indices </item>
      <item> fade_color </item>
      <item> fade_colour </item>
      <item> fade_distance </item>
      <item> fade_power </item>
      <item> falloff </item>
      <item> falloff_angle </item>
      <item> filter </item>
      <item> fisheye </item>
      <item> flatness </item>
      <item> flip </item>
      <item> focal_point </item>
      <item> fog_alt </item>
      <item> fog_offset </item>
      <item> fog_type </item>
      <item> form </item>
      <item> frequency </item>
      <item> fresnel </item>
      <item> function </item>

      <item> gather </item>
      <item> global_lights </item>
      <item> gray </item>
      <item> gray_threshold </item>
      <item> green </item>

      <item> hierarchy </item>
      <item> hypercomplex </item>
      <item> hollow </item>

      <item> inside_vector </item>
      <item> interpolate </item>
      <item> intervals </item>
      <item> inverse </item>
      <item> ior </item>
      <item> irid </item>
      <item> irid_wavelength </item>

      <item> jitter </item>

      <item> lambda </item>
      <item> linear_spline </item>
      <item> linear_sweep </item>
      <item> load_file </item>
      <item> location </item>
      <item> look_at </item>
      <item> low_error_factor </item>

      <item> magnet </item>
      <item> major_radius </item>
      <item> map_type </item>
      <item> max_extent </item>
      <item> max_gradient </item>
      <item> max_intersections </item>
      <item> max_iterations </item>
      <item> max_sample </item>
      <item> max_trace </item>
      <item> max_trace_level </item>
      <item> media_attenuation </item>
      <item> media_interaction </item>
      <item> metallic </item>
      <item> method </item>
      <item> metric </item>
      <item> min_extent </item>
      <item> min_reuse </item>
      <item> mortar </item>

      <item> natural_spline </item>
      <item> nearest_count </item>
      <item> no_bump_scale </item>
      <item> no_image </item>
      <item> no_reflection </item>
      <item> no_shadow </item>
      <item> noise_generator </item>
      <item> normal_indices </item>
      <item> normal_vector </item>
      <item> number_of_waves </item>

      <item> octaves </item>
      <item> offset </item>
      <item> omega </item>
      <item> omnimax </item>
      <item> once </item>
      <item> open </item>
      <item> orient </item>
      <item> orientation </item>
      <item> orthographic </item>

      <item> panoramic </item>
      <item> parallel </item>
      <item> pass_through </item>
      <item> pattern </item>
      <item> perspective </item>
      <item> phase </item>
      <item> phong </item>
      <item> phong_size </item>
      <item> point_at </item>
      <item> poly_wave </item>
      <item> precision </item>
      <item> precompute </item>
      <item> pretrace_end </item>
      <item> pretrace_start </item>

      <item> quadratic_spline </item>
      <item> quaternion </item>

      <item> radius </item>
      <item> ramp_wave </item>
      <item> ratio </item>
      <item> reciprocal </item>
      <item> recursion_limit </item>
      <item> red </item>
      <item> reflection </item>
      <item> reflection_exponent </item>
      <item> refraction </item>
      <item> repeat </item>
      <item> rgb </item>
      <item> rgbf </item>
      <item> rgbft </item>
      <item> rgbt </item>
      <item> right </item>
      <item> roughness </item>

      <item> samples </item>
      <item> save_file </item>
      <item> scallop_wave </item>
      <item> scattering </item>
      <item> shadowless </item>
      <item> sine_wave </item>
      <item> size </item>
      <item> sky </item>
      <item> slice </item>
      <item> smooth </item>
      <item> solid </item>
      <item> spacing </item>
      <item> specular </item>
      <item> split_union </item>
      <item> spotlight </item>
      <item> sqr </item>
      <item> strength </item>
      <item> sturm </item>
      <item> sys </item>

      <item> target </item>
      <item> thickness </item>
      <item> threshold </item>
      <item> tightness </item>
      <item> tiles </item>
      <item> tile2 </item>
      <item> tolerance </item>
      <item> toroidal </item>
      <item> transform </item>
      <item> transmit </item>
      <item> triangle_wave </item>
      <item> turb_depth </item>
      <item> turbulence </item>
      <item> type </item>

      <item> u_steps </item>
      <item> ultra_wide_angle </item>
      <item> up </item>
      <item> use_alpha </item>
      <item> use_color </item>
      <item> use_colour </item>
      <item> use_index </item>
      <item> utf8 </item>
      <item> uv_indices </item>
      <item> uv_mapping </item>
      <item> uv_vectors </item>

      <item> v_steps </item>
      <item> variance </item>
      <item> vertex_vectors </item>

      <item> water_level </item>
    </list>

    <list name="objects">
      <item> b_spline </item>
      <item> background </item>
      <item> beizer_spline </item>
      <item> bicubic_patch </item>
      <item> blob </item>
      <item> box </item>
      <item> brick </item>
      <item> camera </item>
      <item> cone </item>
      <item> cubic </item>
      <item> cylinder </item>
      <item> difference </item>
      <item> disc </item>
      <item> fog </item>
      <item> global_settings </item>
      <item> height_field</item>
      <item> intersection </item>
      <item> isosurface </item>
      <item> julia_fractal </item>
      <item> lathe </item>
      <item> light_source </item>
      <item> looks_like </item>
      <item> merge </item>
      <item> mesh </item>
      <item> mesh2 </item>
      <item> object </item>
      <item> parametric </item>
      <item> plane </item>
      <item> poly </item>
      <item> polygon </item>
      <item> prism </item>
      <item> projected_through </item>
      <item> quadric </item>
      <item> quartic </item>
      <item> radiosity </item>
      <item> rainbow </item>
      <item> sky_sphere </item>
      <item> smooth_triangle </item>
      <item> sor </item>
      <item> sphere </item>
      <item> sphere_sweep </item>
      <item> spline </item>
      <item> superellipsoid </item>
      <item> text </item>
      <item> torus </item>
      <item> triangle </item>
      <item> union </item>
    </list>

    <list name="texturing">
      <item> agate </item>
      <item> agate_turb </item>
      <item> average </item>
      <item> boxed </item>
      <item> bozo </item>
      <item> bump_map </item>
      <item> bumps </item>
      <item> cells </item>
      <item> checker </item>
      <item> color_map </item>
      <item> color_list </item>
      <item> colour_map </item>
      <item> colour_list </item>
      <item> crackle </item>
      <item> cylindrical </item>
      <item> density </item>
      <item> density_file </item>
      <item> density_map </item>
      <item> density_list </item>
      <item> dents </item>
      <item> facets </item>
      <item> finish </item>
      <item> gradient </item>
      <item> granite </item>
      <item> hexagon </item>
      <item> image_map </item>
      <item> image_pattern </item>
      <item> interior </item>
      <item> interior_texture </item>
      <item> julia </item>
      <item> leopard </item>
      <item> mandel </item>
      <item> marble </item>
      <item> material </item>
      <item> material_map </item>
      <item> media </item>
      <item> normal </item>
      <item> normal_map </item>
      <item> normal_list </item>
      <item> onion </item>
      <item> photons </item>
      <item> pigment </item>
      <item> pigment_map </item>
      <item> pigment_list </item>
      <item> pigment_pattern </item>
      <item> planar </item>
      <item> quick_color </item>
      <item> quick_colour </item>
      <item> quilted </item>
      <item> radial </item>
      <item> ripples </item>
      <item> slope </item>
      <item> slope_map </item>
      <item> spherical </item>
      <item> spiral1 </item>
      <item> spiral2 </item>
      <item> spotted </item>
      <item> texture </item>
      <item> texture_list </item>
      <item> texture_map </item>
      <item> warp </item>
      <item> waves </item>
      <item> wood </item>
      <item> wrinkles </item>
    </list>

    <list name="transforms">
      <item> matrix </item>
      <item> rotate </item>
      <item> scale </item>
      <item> translate </item>
    </list>

    <list name="filetypes">
      <item> df3 </item>
      <item> gif </item>
      <item> hf_gray_16 </item>
      <item> iff </item>
      <item> jpeg </item>
      <item> pgm </item>
      <item> png </item>
      <item> pot </item>
      <item> ppm </item>
      <item> tga </item>
      <item> tiff </item>
      <item> ttf </item>
    </list>

    <list name="identifiers">
      <item> array </item>
      <item> clock </item>
      <item> clock_delta </item>
      <item> clock_on </item>
      <item> final_clock </item>
      <item> final_frame </item>
      <item> frame_number </item>
      <item> image_height </item>
      <item> image_width </item>
      <item> initial_clock </item>
      <item> initial_frame </item>
      <item> t </item>
      <item> u </item>
      <item> v </item>
      <item> x </item>
      <item> y </item>
      <item> z </item>
    </list>

    <list name="constants">
      <item> false </item>
      <item> no </item>
      <item> off </item>
      <item> on </item>
      <item> pi </item>
      <item> true </item>
      <item> yes </item>
    </list>

    <list name="functions">
      <item> abs </item>
      <item> acos </item>
      <item> acosh </item>
      <item> asc </item>
      <item> asin </item>
      <item> asinh </item>
      <item> atan </item>
      <item> atan2 </item>
      <item> atanh </item>
      <item> ceil </item>
      <item> chr </item>
      <item> concat </item>
      <item> cos </item>
      <item> cosh </item>
      <item> cube </item>
      <item> defined </item>
      <item> degress </item>
      <item> dimension_size </item>
      <item> dimensions </item>
      <item> div </item>
      <item> exp </item>
      <item> file_exists </item>
      <item> floor </item>
      <item> inside </item>
      <item> int </item>
      <item> ln </item>
      <item> log </item>
      <item> max </item>
      <item> min </item>
      <item> mod </item>
      <item> pow </item>
      <item> prod </item>
      <item> pwr </item>
      <item> radians </item>
      <item> rand </item>
      <item> seed </item>
      <item> select </item>
      <item> sin </item>
      <item> sinh </item>
      <item> sqrt </item>
      <item> str </item>
      <item> strcmp </item>
      <item> strlen </item>
      <item> strlwr </item>
      <item> strupr </item>
      <item> substr </item>
      <item> sum </item>
      <item> tan </item>
      <item> tanh </item>
      <item> trace </item>
      <item> val </item>
      <item> vaxis_rotate </item>
      <item> vcross </item>
      <item> vdot </item>
      <item> vlength </item>
      <item> vnormalize </item>
      <item> vrotate </item>
      <item> vstr </item>
      <item> vturbulence </item>
    </list>

    <list name="directives">
      <item> #debug </item>
      <item> #declare </item>
      <item> #default </item>
      <item> #else </item>
      <item> #end </item>
      <item> #error </item>
      <item> #fclose </item>
      <item> #fopen </item>
      <item> #if </item>
      <item> #ifdef </item>
      <item> #ifndef </item>
      <item> #include </item>
      <item> #local </item>
      <item> #macro </item>
      <item> #range </item>
      <item> #read </item>
      <item> #render </item>
      <item> #statistics </item>
      <item> #switch </item>
      <item> #indef </item>
      <item> #version </item>
      <item> #warning </item>
      <item> #while </item>
      <item> #write </item>
    </list>

    <list name="attention">
      <item> FIXME </item>
      <item> TODO </item>
      <item> ### </item>
    </list>

    <contexts>
      <context attribute="Normal Text" lineEndContext="#stay" name="Normal">
        <RegExpr attribute="Decimal" context="#stay" String="//\s*BEGIN.*$" beginRegion="Region1"/>
        <RegExpr attribute="Decimal" context="#stay" String="//\s*END.*$" endRegion="Region1"/>
        <keyword attribute="Keyword" context="#stay" String="keywords" />
        <keyword attribute="Objects" context="#stay" String="objects" />
        <keyword attribute="Texturing" context="#stay" String="texturing" />
        <keyword attribute="Transforms" context="#stay" String="transforms" />
        <keyword attribute="Data Type" context="#stay" String="filetypes" />
        <keyword attribute="Keyword" context="#stay" String="identifiers" />
        <keyword attribute="Keyword" context="#stay" String="constants" />
        <keyword attribute="Functions" context="#stay" String="functions" />
        <keyword attribute="Directives" context="#stay" String="directives" />
        <Float attribute="Float" context="#stay">
          <AnyChar String="fF" attribute="Float" context="#stay"/>
        </Float>
        <HlCOct attribute="Octal" context="#stay"/>
        <HlCHex attribute="Hex" context="#stay"/>
        <Int attribute="Decimal" context="#stay">
          <StringDetect attribute="Decimal" context="#stay" String="ULL" insensitive="TRUE"/>
          <StringDetect attribute="Decimal" context="#stay" String="LUL" insensitive="TRUE"/>
          <StringDetect attribute="Decimal" context="#stay" String="LLU" insensitive="TRUE"/>
          <StringDetect attribute="Decimal" context="#stay" String="UL" insensitive="TRUE"/>
          <StringDetect attribute="Decimal" context="#stay" String="LU" insensitive="TRUE"/>
          <StringDetect attribute="Decimal" context="#stay" String="LL" insensitive="TRUE"/>
          <StringDetect attribute="Decimal" context="#stay" String="U" insensitive="TRUE"/>
          <StringDetect attribute="Decimal" context="#stay" String="L" insensitive="TRUE"/>
        </Int>
        <HlCChar attribute="Char" context="#stay"/>
        <DetectChar attribute="String" context="String" char="&quot;"/>
        <Detect2Chars attribute="Comment" context="Commentar 1" char="/" char1="/"/>
        <Detect2Chars attribute="Comment" context="Commentar 2" char="/" char1="*" beginRegion="Comment"/>
        <DetectChar attribute="Symbol" context="#stay" char="{" beginRegion="Brace1" />
        <DetectChar attribute="Symbol" context="#stay" char="}" endRegion="Brace1" />
        <RegExpr attribute="Function" context="#stay" String="\b[_\w][_\d\w]*(?=[\s]*[(])" />
        <RegExpr attribute="Symbol" context="Member" String="([.]{1,1}|[:]{2,2})" />
        <RegExpr attribute="Vector" context="#stay" String="&lt;.*&gt;"/>
        <AnyChar attribute="Symbol" context="#stay" String=":!%&amp;()+,-/.*&lt;=&gt;?[]{|}~^&#59;"/>
      </context>

      <context attribute="String" lineEndContext="#pop" name="String">
        <LineContinue attribute="String" context="#stay"/>
        <HlCStringChar attribute="String Char" context="#stay"/>
        <DetectChar attribute="String" context="#pop" char="&quot;"/>
      </context>

      <context attribute="Normal Text" lineEndContext="#pop" name="Member">
        <RegExpr attribute="Function" context="#pop" String="\b[_\w][_\w\d]*(?=[\s]*)" />
      </context>

      <context attribute="Comment" lineEndContext="#pop" name="Commentar 1">
        <keyword attribute="Decimal" context="#stay" String="attention" />
      </context>

      <context attribute="Comment" lineEndContext="#stay" name="Commentar 2">
        <keyword attribute="Decimal" context="#stay" String="attention" />
        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/>
      </context>

      <context attribute="Comment" lineEndContext="#stay" name="Commentar">
        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" />
      </context>
    </contexts>

    <itemDatas>
      <itemData name="Normal Text"  defStyleNum="dsNormal"/>
      <itemData name="Keyword"      defStyleNum="dsKeyword"/>
      <itemData name="Objects"      defStyleNum="dsKeyword" color="#800000" selColor="#ffffff" bold="1" italic="0"/>
      <itemData name="Texturing"    defStyleNum="dsKeyword" color="#008000" selColor="#ffffff" bold="1" italic="0"/>
      <itemData name="Transforms"   defStyleNum="dsKeyword" color="#0000ff" selColor="#ffffff" bold="1" italic="0"/>
      <itemData name="Identifiers"  defStyleNum="dsKeyword" color="#000000" selColor="#ffffff" bold="1" italic="0"/>
      <itemData name="Function"     defStyleNum="dsKeyword" color="#000080" selColor="#ffffff" bold="0" italic="0"/>
      <itemData name="Functions"    defStyleNum="dsKeyword" color="#000080" selColor="#ffffff" bold="1" italic="0"/>
      <itemData name="Directives"   defStyleNum="dsOthers"/>
      <itemData name="Data Type"    defStyleNum="dsDataType"/>
      <itemData name="Decimal"      defStyleNum="dsDecVal"/>
      <itemData name="Octal"        defStyleNum="dsBaseN"/>
      <itemData name="Hex"          defStyleNum="dsBaseN"/>
      <itemData name="Float"        defStyleNum="dsFloat"/>
      <itemData name="Char"         defStyleNum="dsChar"/>
      <itemData name="String"       defStyleNum="dsString"/>
      <itemData name="String Char"  defStyleNum="dsChar"/>
      <itemData name="Comment"      defStyleNum="dsComment"/>
      <itemData name="Vector"       defStyleNum="dsBaseN"/>
      <itemData name="Symbol"       defStyleNum="dsNormal"/>
    </itemDatas>
  </highlighting>

  <general>
    <comments>
      <comment name="singleLine" start="//" />
      <comment name="multiLine" start="/*" end="*/" />
    </comments>
    <keywords casesensitive="1" />
  </general>
</language>