Warning, /frameworks/syntax-highlighting/data/syntax/cg.xml is written in an unsupported language. File is not indexed.
0001 <?xml version="1.0" encoding="UTF-8"?> 0002 <!DOCTYPE language> 0003 0004 <!-- 0005 ** Cg Syntax Rules ** 0006 0007 NOTES: 0008 - some stuff stolen from c.xml 0009 0010 TODO: 0011 - some exotic keywords are missing, find out which; the spec is a bloody mess 0012 0013 2004-05-25 0014 * Initial release 0015 2004-05-27 0016 * Added swizzle highlighting 0017 * Added stdlib function highlighting 0018 2004-12-07 (julien.antille at kdemail.net) 0019 * Added COLOR1 through COLOR3 output sementics, for Multiple Render Targets (MRTs). 0020 * Added FACE sementic for the new fp40 profile 0021 --> 0022 0023 <language name="Cg" section="Sources" extensions="*.cg;*.cgfx" mimetype="text/x-cgsrc" version="10" kateversion="5.0" author="Florian Schanda (florian.schanda@schanda.de)" license="LGPL"> 0024 <highlighting> 0025 <list name="binding"> 0026 <item>POSITION</item> 0027 <item>COLOR</item> 0028 <item>COLOR0</item> 0029 <item>COLOR1</item> 0030 <item>COLOR2</item> 0031 <item>COLOR3</item> 0032 <item>TEXCOORD0</item> 0033 <item>TEXCOORD1</item> 0034 <item>TEXCOORD2</item> 0035 <item>TEXCOORD3</item> 0036 <item>TEXCOORD4</item> 0037 <item>TEXCOORD5</item> 0038 <item>TEXCOORD6</item> 0039 <item>TEXCOORD7</item> 0040 <item>TEXCOORD8</item> 0041 <item>TEXCOORD9</item> 0042 <item>TEXCOORD10</item> 0043 <item>TEXCOORD11</item> 0044 <item>TEXCOORD12</item> 0045 <item>TEXCOORD13</item> 0046 <item>TEXCOORD14</item> 0047 <item>TEXCOORD15</item> 0048 <item>TEXUNIT0</item> 0049 <item>TEXUNIT1</item> 0050 <item>TEXUNIT2</item> 0051 <item>TEXUNIT3</item> 0052 <item>TEXUNIT4</item> 0053 <item>TEXUNIT5</item> 0054 <item>TEXUNIT6</item> 0055 <item>TEXUNIT7</item> 0056 <item>TEXUNIT8</item> 0057 <item>TEXUNIT9</item> 0058 <item>TEXUNIT10</item> 0059 <item>TEXUNIT11</item> 0060 <item>TEXUNIT12</item> 0061 <item>TEXUNIT13</item> 0062 <item>TEXUNIT14</item> 0063 <item>TEXUNIT15</item> 0064 <item>WPOS</item> 0065 <item>DEPTH</item> 0066 <item>BLENDWEIGHT</item> 0067 <item>NORMAL</item> 0068 <item>TESSFACTOR</item> 0069 <item>FOGCOORD</item> 0070 <item>PSIZE</item> 0071 <item>BLENDINDICES</item> 0072 <item>TANGENT</item> 0073 <item>BINORMAL</item> 0074 <item>FOG</item> 0075 <item>BCOL0</item> 0076 <item>BCOL1</item> 0077 <item>FACE</item> 0078 </list> 0079 <list name="keywords"> 0080 <item>do</item> 0081 <item>while</item> 0082 <item>if</item> 0083 <item>else</item> 0084 <item>for</item> 0085 <item>struct</item> 0086 <item>return</item> 0087 <item>static</item> 0088 <item>typedef</item> 0089 <item>discard</item> 0090 <item>true</item> 0091 <item>false</item> 0092 </list> 0093 <list name="types"> 0094 <item>bool</item> 0095 <item>int</item> 0096 <item>fixed</item> 0097 <item>half</item> 0098 <item>float</item> 0099 0100 <item>void</item> 0101 <item>sampler</item> 0102 <item>sampler1D</item> 0103 <item>sampler2D</item> 0104 <item>sampler3D</item> 0105 <item>samplerCUBE</item> 0106 <item>samplerRECT</item> 0107 0108 <item>packed</item> 0109 <item>const</item> 0110 <item>uniform</item> 0111 <item>in</item> 0112 <item>out</item> 0113 <item>inout</item> 0114 </list> 0115 <list name="attention"> 0116 <item>FIXME</item> 0117 <item>TODO</item> 0118 <item>BUG</item> 0119 </list> 0120 <list name="stdlib"> 0121 <item>abs</item> 0122 <item>acos</item> 0123 <item>all</item> 0124 <item>any</item> 0125 <item>asin</item> 0126 <item>atan</item> 0127 <item>atan2</item> 0128 <item>ceil</item> 0129 <item>clamp</item> 0130 <item>cos</item> 0131 <item>cosh</item> 0132 <item>cross</item> 0133 <item>degrees</item> <!-- the spec got this wrong... --> 0134 <item>determinant</item> 0135 <item>dot</item> 0136 <item>exp</item> 0137 <item>exp2</item> 0138 <item>floor</item> 0139 <item>fmod</item> 0140 <item>frac</item> 0141 <item>frexp</item> 0142 <item>isfinite</item> 0143 <item>isinf</item> 0144 <item>isnan</item> 0145 <item>ldexp</item> 0146 <item>lerp</item> 0147 <item>lit</item> 0148 <item>log</item> 0149 <item>log2</item> 0150 <item>log10</item> 0151 <item>max</item> 0152 <item>min</item> 0153 <item>modf</item> 0154 <item>mul</item> 0155 <item>noise</item> 0156 <item>pow</item> 0157 <item>radians</item> 0158 <item>round</item> 0159 <item>rsqrt</item> 0160 <item>saturate</item> 0161 <item>sign</item> 0162 <item>sin</item> 0163 <item>sincos</item> 0164 <item>sinh</item> 0165 <item>smoothstep</item> 0166 <item>step</item> 0167 <item>sqrt</item> 0168 <item>tan</item> 0169 <item>tanh</item> 0170 <item>transpose</item> 0171 <item>distance</item> 0172 <item>faceforward</item> 0173 <item>length</item> 0174 <item>normalize</item> 0175 <item>reflect</item> 0176 <item>refract</item> 0177 <item>tex1D</item> 0178 <item>tex1Dproj</item> 0179 <item>tex2D</item> 0180 <item>tex2Dproj</item> 0181 <item>texRECT</item> 0182 <item>texRECTproj</item> 0183 <item>tex3D</item> 0184 <item>tex3Dproj</item> 0185 <item>texCUBE</item> 0186 <item>texCUBEproj</item> 0187 <item>ddx</item> 0188 <item>ddy</item> 0189 <item>debug</item> 0190 <item>pack_2half</item> 0191 <item>unpack_2half</item> 0192 <item>pack_2ushort</item> 0193 <item>unpack_2ushort</item> 0194 <item>pack_4byte</item> 0195 <item>unpack_4byte</item> 0196 <item>pack_4ubyte</item> 0197 <item>unpack_4ubyte</item> 0198 </list> 0199 <list name="stdstruct"> 0200 <item>fragout</item> 0201 <item>fragout_float</item> 0202 </list> 0203 <contexts> 0204 <context attribute="Normal Text" lineEndContext="#stay" name="Normal"> 0205 <keyword String="keywords" attribute="Keyword" context="#stay" /> 0206 <keyword String="binding" attribute="Binding" context="#stay" /> 0207 <keyword String="attention" attribute="Alert" context="#stay" /> 0208 0209 <DetectChar attribute="Symbol" context="#stay" char="{" beginRegion="Brace1" /> 0210 <DetectChar attribute="Symbol" context="#stay" char="}" endRegion="Brace1" /> 0211 0212 <RegExpr String="(float|half|fixed|bool|int)[1234](x[1234])?" attribute="Data Type" context="#stay" /> 0213 <keyword String="types" attribute="Data Type" context="#stay" /> 0214 <keyword String="stdstruct" attribute="Data Type" context="#stay" /> 0215 0216 <RegExpr String="[0123456789]*+[.][0123456789]++h" attribute="Half" context="#stay" /> 0217 <RegExpr String="[0123456789]*+[.][0123456789]++x" attribute="Fixed" context="#stay" /> 0218 <RegExpr String="[0123456789]*+[.][0123456789]++f?" attribute="Float" context="#stay" /> 0219 <Int attribute="Decimal" context="#stay" /> 0220 0221 <Detect2Chars attribute="Comment" context="Commentar 1" char="/" char1="/"/> 0222 <Detect2Chars attribute="Comment" context="Commentar 2" char="/" char1="*" beginRegion="Comment"/> 0223 0224 <keyword String="stdlib" attribute="StdFunction" context="#stay" /> 0225 0226 <RegExpr attribute="Function" context="#stay" String="\b[_\w][_\w\d]*(?=[\s]*[(])" /> 0227 0228 <RegExpr attribute="Swizzle" context="#stay" String="[.][rgbaxyzw]+(?=[\s/*-+<>])" /> 0229 0230 <DetectChar attribute="Symbol" context="Member" char="." /> 0231 <AnyChar attribute="Symbol" context="#stay" String=":!%&()+,-/*<=>?[]|~^;"/> 0232 </context> 0233 <context name="Member" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop"> 0234 <RegExpr attribute="Function" context="#pop" String="\b[_\w][_\w\d]*(?=[\s]*)" /> 0235 </context> 0236 <context name="Commentar 1" attribute="Comment" lineEndContext="#pop"> 0237 <IncludeRules context="##Comments" /> 0238 </context> 0239 <context name="Commentar 2" attribute="Comment" lineEndContext="#stay"> 0240 <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/> 0241 <IncludeRules context="##Comments" /> 0242 </context> 0243 </contexts> 0244 <itemDatas> 0245 <itemData name="Normal Text" defStyleNum="dsNormal"/> 0246 <itemData name="Binding" defStyleNum="dsKeyword"/> 0247 <itemData name="Keyword" defStyleNum="dsKeyword"/> 0248 <itemData name="Function" defStyleNum="dsFunction" bold="0"/> 0249 <itemData name="StdFunction" defStyleNum="dsBuiltIn" bold="1"/> 0250 <itemData name="Data Type" defStyleNum="dsDataType"/> 0251 <itemData name="Decimal" defStyleNum="dsDecVal"/> 0252 <itemData name="Float" defStyleNum="dsFloat"/> 0253 <itemData name="Half" defStyleNum="dsFloat"/> 0254 <itemData name="Fixed" defStyleNum="dsFloat"/> 0255 <itemData name="Symbol" defStyleNum="dsOperator"/> 0256 <itemData name="Swizzle" defStyleNum="dsNormal" bold="1"/> 0257 <itemData name="Comment" defStyleNum="dsComment"/> 0258 <itemData name="Alert" defStyleNum="dsAlert" /> 0259 </itemDatas> 0260 </highlighting> 0261 <general> 0262 <comments> 0263 <comment name="singleLine" start="//" /> 0264 <comment name="multiLine" start="/*" end="*/" region="Comment" /> 0265 </comments> 0266 <keywords casesensitive="1" /> 0267 </general> 0268 </language> 0269 <!-- kate: replace-tabs off; -->