Math.NET Numerics
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

1293 lines
43 KiB

<?xml version="1.0" encoding="ISO-8859-1" ?>
<highlight needs-build="yes" save-build="no">
<!-- Map language ID variations to language IDs in this file.
"from" should be lower case. "to" should match an ID on
one of the language elements. -->
<map>
<language from="c#" to="cs"/>
<language from="csharp" to="cs"/>
<language from="c++" to="cpp"/>
<language from="cplusplus" to="cpp"/>
<language from="cpp#" to="cpp"/>
<language from="j#" to="jsharp"/>
<language from="ecmascript" to="javascript"/>
<language from="js" to="javascript"/>
<language from="jscript" to="jscriptnet"/>
<language from="jscript#" to="jscriptnet"/>
<language from="jscript.net" to="jscriptnet"/>
<language from="vb" to="vbnet"/>
<language from="vb#" to="vbnet"/>
<language from="vb.net" to="vbnet"/>
<language from="vbs" to="vbscript"/>
<language from="htm" to="xml"/>
<language from="html" to="xml"/>
<language from="xsl" to="xml"/>
<language from="sql server" to="sql"/>
<language from="sqlserver" to="sql"/>
<language from="powershell" to="pshell"/>
<language from="ps1" to="pshell"/>
<language from="py" to="python" />
</map>
<!-- families of keywords -->
<keywordlists>
<!-- Common C-like language keywords (C, C++, C#) -->
<keywordlist id="kwclang-keywords">
<kw>break</kw>
<kw>case</kw>
<kw>char</kw>
<kw>const</kw>
<kw>continue</kw>
<kw>default</kw>
<kw>do</kw>
<kw>double</kw>
<kw>else</kw>
<kw>enum</kw>
<kw>extern</kw>
<kw>float</kw>
<kw>for</kw>
<kw>goto</kw>
<kw>if</kw>
<kw>int</kw>
<kw>long</kw>
<kw>return</kw>
<kw>short</kw>
<kw>sizeof</kw>
<kw>static</kw>
<kw>struct</kw>
<kw>switch</kw>
<kw>void</kw>
<kw>volatile</kw>
<kw>while</kw>
</keywordlist>
<!-- Common C++-like object oriented language keywords (C++, C#) -->
<keywordlist id="kwclangoo-keywords">
<kw>bool</kw>
<kw>catch</kw>
<kw>class</kw>
<kw>explicit</kw>
<kw>false</kw>
<kw>namespace</kw>
<kw>new</kw>
<kw>operator</kw>
<kw>private</kw>
<kw>protected</kw>
<kw>public</kw>
<kw>this</kw>
<kw>throw</kw>
<kw>true</kw>
<kw>try</kw>
<kw>using</kw>
<kw>virtual</kw>
</keywordlist>
<!-- C keywords -->
<keywordlist id="kwc-keywords">
<kw>auto</kw>
<kw>register</kw>
<kw>signed</kw>
<kw>typedef</kw>
<kw>union</kw>
<kw>unsigned</kw>
</keywordlist>
<!-- C++ keywords -->
<keywordlist id="kwcpp-keywords">
<kw>asm</kw>
<kw>const_cast</kw>
<kw>delete</kw>
<kw>dynamic_cast</kw>
<kw>friend</kw>
<kw>inline</kw>
<kw>mutable</kw>
<kw>reinterpret_cast</kw>
<kw>static_cast</kw>
<kw>template</kw>
<kw>typeid</kw>
<kw>typename</kw>
<kw>wchar_t</kw>
</keywordlist>
<!-- STL keywords -->
<keywordlist id="kwcpp-stl" pre="(std\s*::\s*){0,1}">
<kw>vector</kw>
<kw>set</kw>
<kw>map</kw>
<kw>list</kw>
<kw>stack</kw>
<kw>deque</kw>
<kw>multimap</kw>
<kw>multiset</kw>
</keywordlist>
<!-- Managed C++ keywords -->
<keywordlist id="kwcpp-managed">
<kw>abstract</kw>
<kw>array</kw>
<kw>delegate</kw>
<kw>each</kw>
<kw>event</kw>
<kw>finally</kw>
<kw>gcnew</kw>
<kw>generic</kw>
<kw>interface</kw>
<kw>interior_ptr</kw>
<kw>literal</kw>
<kw>nullptr</kw>
<kw>override</kw>
<kw>pin_ptr</kw>
<kw>property</kw>
<kw>ref</kw>
<kw>safe_cast</kw>
<kw>sealed</kw>
<kw>typeid</kw>
<kw>value</kw>
<kw>where</kw>
</keywordlist>
<!-- C# keywords -->
<keywordlist id="kwcs-keywords">
<kw>abstract</kw>
<kw>as</kw>
<kw>base</kw>
<kw>byte</kw>
<kw>checked</kw>
<kw>decimal</kw>
<kw>delegate</kw>
<kw>event</kw>
<kw>finally</kw>
<kw>fixed</kw>
<kw>foreach</kw>
<kw>implicit</kw>
<kw>in</kw>
<kw>interface</kw>
<kw>internal</kw>
<kw>is</kw>
<kw>lock</kw>
<kw>null</kw>
<kw>object</kw>
<kw>out</kw>
<kw>override</kw>
<kw>params</kw>
<kw>partial</kw>
<kw>readonly</kw>
<kw>ref</kw>
<kw>sbyte</kw>
<kw>sealed</kw>
<kw>stackalloc</kw>
<kw>string</kw>
<kw>typeof</kw>
<kw>uint</kw>
<kw>ulong</kw>
<kw>unchecked</kw>
<kw>unsafe</kw>
<kw>ushort</kw>
</keywordlist>
<!-- Common VB-like language keywords (VB.NET, VBScript) -->
<keywordlist id="kwvblang-keywords">
<kw>And</kw>
<kw>CBool</kw>
<kw>CByte</kw>
<kw>CDate</kw>
<kw>CDbl</kw>
<kw>CInt</kw>
<kw>CLng</kw>
<kw>CSng</kw>
<kw>CStr</kw>
<kw>Call</kw>
<kw>Case</kw>
<kw>Class</kw>
<kw>Const</kw>
<kw>Date</kw>
<kw>Dim</kw>
<kw>Do</kw>
<kw>Each</kw>
<kw>Else</kw>
<kw>End</kw>
<kw>Erase</kw>
<kw>Error</kw>
<kw>Exit</kw>
<kw>False</kw>
<kw>For</kw>
<kw>Function</kw>
<kw>Get</kw>
<kw>If</kw>
<kw>Is</kw>
<kw>Loop</kw>
<kw>Mod</kw>
<kw>Next</kw>
<kw>Not</kw>
<kw>Nothing</kw>
<kw>On</kw>
<kw>Option</kw>
<kw>Or</kw>
<kw>Private</kw>
<kw>Property</kw>
<kw>Public</kw>
<kw>ReDim</kw>
<kw>Resume</kw>
<kw>Select</kw>
<kw>Set</kw>
<kw>Step</kw>
<kw>Stop</kw>
<kw>String</kw>
<kw>Sub</kw>
<kw>Then</kw>
<kw>To</kw>
<kw>True</kw>
<kw>While</kw>
<kw>With</kw>
<kw>Xor</kw>
</keywordlist>
<!-- VB.NET language keywords -->
<keywordlist id="kwvbnet-keywords">
<kw>AddHandler</kw>
<kw>AddressOf</kw>
<kw>Alias</kw>
<kw>AndAlso</kw>
<kw>As</kw>
<kw>Boolean</kw>
<kw>ByRef</kw>
<kw>ByVal</kw>
<kw>Byte</kw>
<kw>CChar</kw>
<kw>CDec</kw>
<kw>CObj</kw>
<kw>CSByte</kw>
<kw>CShort</kw>
<kw>CType</kw>
<kw>CUInt</kw>
<kw>CULng</kw>
<kw>CUShort</kw>
<kw>Catch</kw>
<kw>Char</kw>
<kw>Continue</kw>
<kw>Decimal</kw>
<kw>Declare</kw>
<kw>Default</kw>
<kw>Delegate</kw>
<kw>DirectCast</kw>
<kw>Double</kw>
<kw>ElseIf</kw>
<kw>Enum</kw>
<kw>Event</kw>
<kw>Finally</kw>
<kw>Friend</kw>
<kw>GetType</kw>
<kw>Global</kw>
<kw>GoTo</kw>
<kw>Handles</kw>
<kw>Implements</kw>
<kw>Imports</kw>
<kw>In</kw>
<kw>Inherits</kw>
<kw>Integer</kw>
<kw>Interface</kw>
<kw>IsNot</kw>
<kw>Lib</kw>
<kw>Like</kw>
<kw>Long</kw>
<kw>Me</kw>
<kw>Module</kw>
<kw>MustInherit</kw>
<kw>MustOverride</kw>
<kw>MyBase</kw>
<kw>MyClass</kw>
<kw>Namespace</kw>
<kw>Narrowing</kw>
<kw>New</kw>
<kw>NotInheritable</kw>
<kw>NotOverridable</kw>
<kw>Object</kw>
<kw>Of</kw>
<kw>Operator</kw>
<kw>Optional</kw>
<kw>OrElse</kw>
<kw>Overloads</kw>
<kw>Overridable</kw>
<kw>Overrides</kw>
<kw>ParamArray</kw>
<kw>Partial</kw>
<kw>Protected</kw>
<kw>RaiseEvent</kw>
<kw>ReadOnly</kw>
<kw>RemoveHandler</kw>
<kw>Return</kw>
<kw>SByte</kw>
<kw>Shadows</kw>
<kw>Shared</kw>
<kw>Short</kw>
<kw>Single</kw>
<kw>Static</kw>
<kw>Structure</kw>
<kw>SyncLock</kw>
<kw>Throw</kw>
<kw>Try</kw>
<kw>TryCast</kw>
<kw>TypeOf</kw>
<kw>UInteger</kw>
<kw>ULong</kw>
<kw>UShort</kw>
<kw>Using</kw>
<kw>When</kw>
<kw>Widening</kw>
<kw>WithEvents</kw>
<kw>WriteOnly</kw>
</keywordlist>
<!-- VBScript keywords -->
<keywordlist id="kwvbscript-statements">
<kw>Abs</kw>
<kw>Array</kw>
<kw>Asc</kw>
<kw>Atn</kw>
<kw>CCur</kw>
<kw>Chr</kw>
<kw>Clear</kw>
<kw>Cos</kw>
<kw>CreateObject</kw>
<kw>DateAdd</kw>
<kw>DateDiff</kw>
<kw>DatePart</kw>
<kw>DateSerial</kw>
<kw>DateValue</kw>
<kw>Day</kw>
<kw>Derived</kw>
<kw>Empty</kw>
<kw>Escape</kw>
<kw>Eval</kw>
<kw>Execute</kw>
<kw>ExecuteGlobal</kw>
<kw>Exp</kw>
<kw>Explicit</kw>
<kw>Filter</kw>
<kw>Fix</kw>
<kw>FormatCurrency</kw>
<kw>FormatDateTime</kw>
<kw>FormatNumber</kw>
<kw>FormatPercent</kw>
<kw>GetLocale</kw>
<kw>GetObject</kw>
<kw>GetRef</kw>
<kw>Hex</kw>
<kw>Hour</kw>
<kw>InStr</kw>
<kw>InStrRev</kw>
<kw>InputBox</kw>
<kw>Int</kw>
<kw>IsArray</kw>
<kw>IsDate</kw>
<kw>IsEmpty</kw>
<kw>IsNull</kw>
<kw>IsNumeric</kw>
<kw>IsObject</kw>
<kw>Join</kw>
<kw>LBound</kw>
<kw>LCase</kw>
<kw>LTrim</kw>
<kw>Left</kw>
<kw>Len</kw>
<kw>Let</kw>
<kw>LoadPicture</kw>
<kw>Log</kw>
<kw>Math</kw>
<kw>Maths</kw>
<kw>Mid</kw>
<kw>Minute</kw>
<kw>Month</kw>
<kw>MonthName</kw>
<kw>MsgBox</kw>
<kw>Now</kw>
<kw>Null</kw>
<kw>Oct</kw>
<kw>RGB</kw>
<kw>RTrim</kw>
<kw>Raise</kw>
<kw>Randomize</kw>
<kw>Replace</kw>
<kw>Right</kw>
<kw>Rnd</kw>
<kw>Round</kw>
<kw>ScriptEngine</kw>
<kw>ScriptEngineBuildVersion</kw>
<kw>ScriptEngineMajorVersion</kw>
<kw>ScriptEngineMinorVersion</kw>
<kw>Second</kw>
<kw>SetLocale</kw>
<kw>Sgn</kw>
<kw>Sin</kw>
<kw>Space</kw>
<kw>Split</kw>
<kw>Sqr</kw>
<kw>StrComp</kw>
<kw>StrReverse</kw>
<kw>Tan</kw>
<kw>Test</kw>
<kw>Time</kw>
<kw>TimeSerial</kw>
<kw>TimeValue</kw>
<kw>Timer</kw>
<kw>Trim</kw>
<kw>TypeName</kw>
<kw>UBound</kw>
<kw>UCase</kw>
<kw>Unescape</kw>
<kw>VarType</kw>
<kw>Weekday</kw>
<kw>WeekdayName</kw>
<kw>Wend</kw>
<kw>Write</kw>
<kw>WriteLine</kw>
<kw>Year</kw>
</keywordlist>
<!-- JavaScript keywords -->
<keywordlist id="kwjavascript-statements">
<kw>break</kw>
<kw>case</kw>
<kw>catch</kw>
<kw>const</kw>
<kw>continue</kw>
<kw>debugger</kw>
<kw>default</kw>
<kw>delete</kw>
<kw>do</kw>
<kw>each</kw>
<kw>else</kw>
<kw>export</kw>
<kw>false</kw>
<kw>for</kw>
<kw>function</kw>
<kw>get</kw>
<kw>if</kw>
<kw>in</kw>
<kw>instanceof</kw>
<kw>let</kw>
<kw>new</kw>
<kw>null</kw>
<kw>return</kw>
<kw>set</kw>
<kw>switch</kw>
<kw>this</kw>
<kw>throw</kw>
<kw>true</kw>
<kw>try</kw>
<kw>typeof</kw>
<kw>var</kw>
<kw>void</kw>
<kw>while</kw>
<kw>with</kw>
<kw>yield</kw>
</keywordlist>
<!-- JavaScript function keywords -->
<keywordlist id="kwjavascript-functions">
<kw>arguments</kw>
<kw>decodeURI</kw>
<kw>decodeURIComponent</kw>
<kw>encodeURI</kw>
<kw>encodeURIComponent</kw>
<kw>eval</kw>
<kw>isFinite</kw>
<kw>isNaN</kw>
<kw>parseFloat</kw>
<kw>parseInt</kw>
</keywordlist>
<!-- JavaScript object keywords -->
<keywordlist id="kwjavascript-objects">
<kw>ActiveXObject</kw>
<kw>Array</kw>
<kw>Boolean</kw>
<kw>Date</kw>
<kw>Debug</kw>
<kw>Enumerator</kw>
<kw>Error</kw>
<kw>EvalError</kw>
<kw>Function</kw>
<kw>Global</kw>
<kw>Math</kw>
<kw>Number</kw>
<kw>Object</kw>
<kw>RangeError</kw>
<kw>ReferenceError</kw>
<kw>RegExp</kw>
<kw>String</kw>
<kw>SyntaxError</kw>
<kw>TypeError</kw>
<kw>URIError</kw>
<kw>VBArray</kw>
</keywordlist>
<!-- JScript.NET keywords -->
<keywordlist id="kwjscriptnet-statements">
<kw>abstract</kw>
<kw>boolean</kw>
<kw>byte</kw>
<kw>char</kw>
<kw>class</kw>
<kw>decimal</kw>
<kw>double</kw>
<kw>enum</kw>
<kw>extends</kw>
<kw>final</kw>
<kw>finally</kw>
<kw>float</kw>
<kw>implements</kw>
<kw>import</kw>
<kw>int</kw>
<kw>interface</kw>
<kw>internal</kw>
<kw>long</kw>
<kw>package</kw>
<kw>private</kw>
<kw>protected</kw>
<kw>protected</kw>
<kw>public</kw>
<kw>sbyte</kw>
<kw>short</kw>
<kw>static</kw>
<kw>super</kw>
<kw>uint</kw>
<kw>ulong</kw>
<kw>ushort</kw>
</keywordlist>
<!-- J# keywords -->
<keywordlist id="kwjsharp">
<kw>abstract</kw>
<kw>boolean</kw>
<kw>break</kw>
<kw>byte</kw>
<kw>case</kw>
<kw>catch</kw>
<kw>char</kw>
<kw>class</kw>
<kw>const</kw>
<kw>continue</kw>
<kw>default</kw>
<kw>delegate</kw>
<kw>do</kw>
<kw>double</kw>
<kw>else</kw>
<kw>enum</kw>
<kw>extends</kw>
<kw>false</kw>
<kw>final</kw>
<kw>finally</kw>
<kw>float</kw>
<kw>for</kw>
<kw>if</kw>
<kw>implements</kw>
<kw>import</kw>
<kw>instanceof</kw>
<kw>int</kw>
<kw>interface</kw>
<kw>long</kw>
<kw>multicast</kw>
<kw>native</kw>
<kw>new</kw>
<kw>null</kw>
<kw>package</kw>
<kw>private</kw>
<kw>protected</kw>
<kw>public</kw>
<kw>return</kw>
<kw>short</kw>
<kw>static</kw>
<kw>strictfp</kw>
<kw>super</kw>
<kw>switch</kw>
<kw>synchronized</kw>
<kw>this</kw>
<kw>throw</kw>
<kw>throws</kw>
<kw>transient</kw>
<kw>true</kw>
<kw>try</kw>
<kw>ubyte</kw>
<kw>void</kw>
<kw>volatile</kw>
<kw>while</kw>
</keywordlist>
<!-- SQL keywords -->
<keywordlist id="kwsql-keywords">
<kw>ADD</kw>
<kw>ALL</kw>
<kw>ALTER</kw>
<kw>AND</kw>
<kw>ANY</kw>
<kw>AS</kw>
<kw>ASC</kw>
<kw>AUTHORIZATION</kw>
<kw>BACKUP</kw>
<kw>BEGIN</kw>
<kw>BETWEEN</kw>
<kw>BREAK</kw>
<kw>BROWSE</kw>
<kw>BULK</kw>
<kw>BY</kw>
<kw>CASCADE</kw>
<kw>CASE</kw>
<kw>CHECK</kw>
<kw>CHECKPOINT</kw>
<kw>CLOSE</kw>
<kw>CLUSTERED</kw>
<kw>COALESCE</kw>
<kw>COLLATE</kw>
<kw>COLUMN</kw>
<kw>COMMIT</kw>
<kw>COMPUTE</kw>
<kw>CONSTRAINT</kw>
<kw>CONTAINS</kw>
<kw>CONTAINSTABLE</kw>
<kw>CONTINUE</kw>
<kw>CONVERT</kw>
<kw>CREATE</kw>
<kw>CROSS</kw>
<kw>CURRENT</kw>
<kw>CURRENT_DATE</kw>
<kw>CURRENT_TIME</kw>
<kw>CURRENT_TIMESTAMP</kw>
<kw>CURRENT_USER</kw>
<kw>CURSOR</kw>
<kw>DATABASE</kw>
<kw>DBCC</kw>
<kw>DEALLOCATE</kw>
<kw>DECLARE</kw>
<kw>DEFAULT</kw>
<kw>DELETE</kw>
<kw>DENY</kw>
<kw>DESC</kw>
<kw>DISK</kw>
<kw>DISTINCT</kw>
<kw>DISTRIBUTED</kw>
<kw>DOUBLE</kw>
<kw>DROP</kw>
<kw>DUMMY</kw>
<kw>DUMP</kw>
<kw>ELSE</kw>
<kw>END</kw>
<kw>ERRLVL</kw>
<kw>ESCAPE</kw>
<kw>EXCEPT</kw>
<kw>EXEC</kw>
<kw>EXECUTE</kw>
<kw>EXISTS</kw>
<kw>EXIT</kw>
<kw>FETCH</kw>
<kw>FILE</kw>
<kw>FILLFACTOR</kw>
<kw>FOR</kw>
<kw>FOREIGN</kw>
<kw>FREETEXT</kw>
<kw>FREETEXTTABLE</kw>
<kw>FROM</kw>
<kw>FULL</kw>
<kw>FUNCTION</kw>
<kw>GOTO</kw>
<kw>GRANT</kw>
<kw>GROUP</kw>
<kw>HAVING</kw>
<kw>HOLDLOCK</kw>
<kw>IDENTITY</kw>
<kw>IDENTITY_INSERT</kw>
<kw>IDENTITYCOL</kw>
<kw>IF</kw>
<kw>IN</kw>
<kw>INDEX</kw>
<kw>INNER</kw>
<kw>INSERT</kw>
<kw>INTERSECT</kw>
<kw>INTO</kw>
<kw>IS</kw>
<kw>JOIN</kw>
<kw>KEY</kw>
<kw>KILL</kw>
<kw>LEFT</kw>
<kw>LIKE</kw>
<kw>LINENO</kw>
<kw>LOAD</kw>
<kw>NATIONAL</kw>
<kw>NOCHECK</kw>
<kw>NONCLUSTERED</kw>
<kw>NOT</kw>
<kw>NULL</kw>
<kw>NULLIF</kw>
<kw>OF</kw>
<kw>OFF</kw>
<kw>OFFSETS</kw>
<kw>ON</kw>
<kw>OPEN</kw>
<kw>OPENDATASOURCE</kw>
<kw>OPENQUERY</kw>
<kw>OPENROWSET</kw>
<kw>OPENXML</kw>
<kw>OPTION</kw>
<kw>OR</kw>
<kw>ORDER</kw>
<kw>OUTER</kw>
<kw>OVER</kw>
<kw>PERCENT</kw>
<kw>PLAN</kw>
<kw>PRECISION</kw>
<kw>PRIMARY</kw>
<kw>PRINT</kw>
<kw>PROC</kw>
<kw>PROCEDURE</kw>
<kw>PUBLIC</kw>
<kw>RAISERROR</kw>
<kw>READ</kw>
<kw>READTEXT</kw>
<kw>RECONFIGURE</kw>
<kw>REFERENCES</kw>
<kw>REPLICATION</kw>
<kw>RESTORE</kw>
<kw>RESTRICT</kw>
<kw>RETURN</kw>
<kw>REVOKE</kw>
<kw>RIGHT</kw>
<kw>ROLLBACK</kw>
<kw>ROWCOUNT</kw>
<kw>ROWGUIDCOL</kw>
<kw>RULE</kw>
<kw>SAVE</kw>
<kw>SCHEMA</kw>
<kw>SELECT</kw>
<kw>SESSION_USER</kw>
<kw>SET</kw>
<kw>SETUSER</kw>
<kw>SHUTDOWN</kw>
<kw>SOME</kw>
<kw>STATISTICS</kw>
<kw>SYSTEM_USER</kw>
<kw>TABLE</kw>
<kw>TEXTSIZE</kw>
<kw>THEN</kw>
<kw>TO</kw>
<kw>TOP</kw>
<kw>TRAN</kw>
<kw>TRANSACTION</kw>
<kw>TRIGGER</kw>
<kw>TRUNCATE</kw>
<kw>TSEQUAL</kw>
<kw>UNION</kw>
<kw>UNIQUE</kw>
<kw>UPDATE</kw>
<kw>UPDATETEXT</kw>
<kw>USE</kw>
<kw>USER</kw>
<kw>VALUES</kw>
<kw>VARYING</kw>
<kw>VIEW</kw>
<kw>WAITFOR</kw>
<kw>WHEN</kw>
<kw>WHERE</kw>
<kw>WHILE</kw>
<kw>WITH</kw>
<kw>WRITETEXT</kw>
</keywordlist>
<!-- Common PowerShell language keywords -->
<keywordlist id="kwpshelllangoo-keywords" use-word-boundary="false">
<kw>$true</kw>
<kw>$false</kw>
<kw>$_</kw>
<kw>$foreach</kw>
<kw>$host</kw>
<kw>$input</kw>
<kw>$error</kw>
<kw>$null</kw>
<kw>$OFS</kw>
<kw>$PSHOME</kw>
<kw>$switch</kw>
<kw>$this</kw>
</keywordlist>
<!-- Python keywords -->
<keywordlist id="kwpython-keywords">
<kw>and</kw>
<kw>as</kw>
<kw>assert</kw>
<kw>break</kw>
<kw>class</kw>
<kw>continue</kw>
<kw>def</kw>
<kw>del</kw>
<kw>elif</kw>
<kw>else</kw>
<kw>except</kw>
<kw>exec</kw>
<kw>finally</kw>
<kw>for</kw>
<kw>from</kw>
<kw>global</kw>
<kw>if</kw>
<kw>import</kw>
<kw>in</kw>
<kw>is</kw>
<kw>lambda</kw>
<kw>not</kw>
<kw>or</kw>
<kw>pass</kw>
<kw>print</kw>
<kw>raise</kw>
<kw>return</kw>
<kw>try</kw>
<kw>while</kw>
<kw>with</kw>
<kw>yield</kw>
</keywordlist>
</keywordlists>
<!-- Languages syntax specification -->
<languages>
<!-- C language specification -->
<language id="c" tabSize="4" name="C">
<!-- Code contexts: default (most common) is code. -->
<contexts default="code">
<!-- basic source code context -->
<context id="code" attribute="code">
<!-- /* block of comment */ -->
<detect2chars attribute="hidden" context="blockcomment" char="/" char1="*" />
<!-- " " literals -->
<regexp id="dqliteral" attribute="literal" context="code" expression="(&quot;&quot;)|(&quot;(.|\\&quot;|\\\r\n)*?((\\\\)+&quot;|[^\\]{1}&quot;))" />
<!-- ' ' literals -->
<regexp id="sqliteral" attribute="literal" context="code" expression="(&apos;&apos;)|(&apos;(.|\\&apos;|\\\r\n)*?((\\\\)+&apos;|[^\\]{1}&apos;))" />
<!-- preprocessor (#XXXX) -->
<regexp id="preprocessor" attribute="preprocessor" context="code" expression="#\w+" />
<!-- <include.file> -->
<regexp id="include" attribute="literal" context="code" expression="&lt;\w+(\.\w*)*&gt;" />
<!-- numbers -->
<regexp id="number" attribute="number" context="code" expression="0x[0-9a-fA-F]*|(((?&lt;=[^0-9])(\+|-))?)\b[0-9][0-9]*(\.[0-9]+)?" />
<!-- keyword C-like -->
<keyword attribute="keyword" context="code" family="kwclang-keywords" />
<!-- keyword C -->
<keyword attribute="keyword" context="code" family="kwc-keywords" />
</context>
<!-- block comment /* ... */ -->
<context id="blockcomment" attribute="blockcomment">
<!-- finish line of comment, start block -->
<detect2chars attribute="hidden" context="code" char="*" char1="/" />
</context>
</contexts>
</language>
<!-- C++ language specification -->
<language id="cpp" tabSize="4" name="C++">
<!-- Code contexts: default (most common) is code. -->
<contexts default="code">
<!-- basic source code context -->
<context id="code" attribute="code">
<!-- /* block of comment */ -->
<detect2chars attribute="hidden" context="blockcomment" char="/" char1="*" />
<!-- // line of comment -->
<detect2chars attribute="hidden" context="linecomment" char="/" char1="/" />
<!-- " " literals -->
<regexp id="dqliteral" attribute="literal" context="code" expression="(&quot;&quot;)|(&quot;(.|\\&quot;|\\\r\n)*?((\\\\)+&quot;|[^\\]{1}&quot;))" />
<!-- ' ' literals -->
<regexp id="sqliteral" attribute="literal" context="code" expression="(&apos;&apos;)|(&apos;(.|\\&apos;|\\\r\n)*?((\\\\)+&apos;|[^\\]{1}&apos;))" />
<!-- preprocessor (#XXXX) -->
<regexp id="preprocessor" attribute="preprocessor" context="code" expression="#\w+" />
<!-- <include.file> -->
<regexp id="include" attribute="literal" context="code" expression="&lt;\w+(\.\w*)*&gt;(?![\%\^\*])" />
<!-- numbers -->
<regexp id="number" attribute="number" context="code" expression="0x[0-9a-fA-F]*|(((?&lt;=[^0-9])(\+|-))?)\b[0-9][0-9]*(\.[0-9]+)?" />
<!-- keyword C-like -->
<keyword attribute="keyword" context="code" family="kwclang-keywords" />
<!-- keyword C++-like -->
<keyword attribute="keyword" context="code" family="kwclangoo-keywords" />
<!-- keyword C -->
<keyword attribute="keyword" context="code" family="kwc-keywords" />
<!-- keyword C++ -->
<keyword attribute="keyword" context="code" family="kwcpp-keywords" />
<!-- keyword stl -->
<keyword attribute="keyword" context="code" family="kwcpp-stl" />
<!-- keyword Managed C++ -->
<keyword attribute="keyword" context="code" family="kwcpp-managed" />
</context>
<!-- block comment /* ... */ -->
<context id="blockcomment" attribute="blockcomment">
<!-- finish line of comment, start block -->
<detect2chars attribute="hidden" context="code" char="*" char1="/" />
</context>
<!-- line comment // ... -->
<context id="linecomment" attribute="cpp-linecomment">
<!-- finish line of comment, start block -->
<!-- detect2chars attribute="hidden" context="blockcomment" char="/" char1="*" / -->
<!-- finish line of comment end of line -->
<linecontinue attribute="hidden" context="code" />
</context>
</contexts>
</language>
<!-- C# language specification -->
<language id="cs" tabSize="4" name="C#">
<!-- Code contexts: default (most common) is code. -->
<contexts default="code">
<!-- basic source code context -->
<context id="code" attribute="code">
<!-- /* block of comment */ -->
<detect2chars attribute="hidden" context="blockcomment" char="/" char1="*" />
<!-- // line of comment -->
<detect2chars attribute="hidden" context="linecomment" char="/" char1="/" />
<!-- " " literals -->
<regexp id="dqliteral" attribute="literal" context="code" expression="(&quot;&quot;)|(@&quot;(.|[\r\n])*?&quot;|&quot;(.|\\&quot;|\\\r\n)*?((\\\\)+&quot;|[^\\]{1}&quot;))" />
<!-- ' ' literals -->
<regexp id="sqliteral" attribute="literal" context="code" expression="(&apos;&apos;)|(&apos;(.|\\&apos;|\\\r\n)*?((\\\\)+&apos;|[^\\]{1}&apos;))" />
<!-- preprocessor (#XXXX) -->
<regexp id="preprocessor" attribute="preprocessor" context="code" expression="#\w+" />
<!-- numbers -->
<regexp id="number" attribute="number" context="code" expression="0x[0-9a-fA-F]*|(((?&lt;=[^0-9])(\+|-))?)\b[0-9][0-9]*(\.[0-9]+)?" />
<!-- keyword C-like -->
<keyword attribute="keyword" context="code" family="kwclang-keywords" />
<!-- keyword C++-like -->
<keyword attribute="keyword" context="code" family="kwclangoo-keywords" />
<!-- keyword C# -->
<keyword attribute="keyword" context="code" family="kwcs-keywords" />
</context>
<!-- block comment /* ... */ -->
<context id="blockcomment" attribute="blockcomment">
<!-- finish line of comment, start block -->
<detect2chars attribute="hidden" context="code" char="*" char1="/" />
</context>
<!-- line comment // ... -->
<context id="linecomment" attribute="cpp-linecomment">
<!-- finish line of comment, start block -->
<!-- detect2chars attribute="hidden" context="blockcomment" char="/" char1="*" / -->
<!-- finish line of comment end of line -->
<linecontinue attribute="hidden" context="code" />
</context>
</contexts>
</language>
<!-- VB.NET -->
<language id="vbnet" not-case-sensitive="yes" tabSize="4" name="VB.NET">
<contexts default="code">
<!-- Code context -->
<context id="code" attribute="code">
<!-- Single line of comment -->
<regexp id="vb-comment" attribute="comment" context="code" expression="(?&lt;=\W|^)('.*|Rem(\t| ).*|Rem)([\r\n]{1,2}|$)" />
<!-- literal -->
<regexp id="literal" attribute="literal" context="code" expression="&quot;(.|&quot;&quot;)*?&quot;" />
<!-- preprocessor (#XXXX) -->
<regexp id="preprocessor" attribute="preprocessor" context="code" expression="#\w+(\s*(if|region))?" />
<!-- numbers -->
<regexp id="number" attribute="number" context="code" expression="&amp;[h][0-9a-f]*&amp;?|(((?&lt;=[^0-9])(\+|-))?)\b[0-9][0-9]*(\.[0-9]+)?" />
<!-- Keywords -->
<keyword attribute="keyword" context="code" family="kwvblang-keywords" />
<!-- Keywords -->
<keyword attribute="keyword" context="code" family="kwvbnet-keywords" />
</context>
</contexts>
</language>
<!-- VB Script -->
<language id="vbscript" not-case-sensitive="yes" tabSize="4" name="VBScript">
<contexts default="code">
<!-- Code context -->
<context id="code" attribute="code">
<!-- Single line of comment -->
<regexp id="vb-comment" attribute="comment" context="code" expression="(?&lt;=\W|^)('.*|Rem(\t| ).*|Rem)([\r\n]{1,2}|$)" />
<!-- literal -->
<regexp id="literal" attribute="literal" context="code" expression="&quot;(.|&quot;&quot;)*?&quot;" />
<!-- numbers -->
<regexp id="number" attribute="number" context="code" expression="&amp;[h][0-9a-f]*&amp;?|(((?&lt;=[^0-9])(\+|-))?)\b[0-9][0-9]*(\.[0-9]+)?" />
<!-- Keywords -->
<keyword attribute="keyword" context="code" family="kwvblang-keywords" />
<!-- Keywords -->
<keyword attribute="keyword" context="code" family="kwvbscript-statements" />
</context>
</contexts>
</language>
<!-- JavaScript-->
<language id="javascript" tabSize="4" name="JavaScript">
<!-- Code contexts: default (most common) is code. -->
<contexts default="code">
<!-- basic source code context -->
<context id="code" attribute="code">
<!-- /* block of comment */ -->
<detect2chars attribute="hidden" context="blockcomment" char="/" char1="*" />
<!-- // line of comment -->
<detect2chars attribute="hidden" context="linecomment" char="/" char1="/" />
<!-- " " literals -->
<regexp id="dqliteral" attribute="literal" context="code" expression="(&quot;&quot;)|(&quot;(.|\\&quot;|\\\r\n)*?((\\\\)+&quot;|[^\\]{1}&quot;))" />
<!-- ' ' literals -->
<regexp id="sqliteral" attribute="literal" context="code" expression="(&apos;&apos;)|(&apos;(.|\\&apos;|\\\r\n)*?((\\\\)+&apos;|[^\\]{1}&apos;))" />
<!-- regex literal -->
<regexp id="reliteral" attribute="literal" context="code" expression="/(\\/|[^/\r\n])+/[gim]*" />
<!-- numbers -->
<regexp id="number" attribute="number" context="code" expression="0x[0-9a-fA-F]*|(((?&lt;=[^0-9])(\+|-))?)\b[0-9][0-9]*(\.[0-9]+)?" />
<!-- statements -->
<keyword attribute="keyword" context="code" family="kwjavascript-statements" />
<!-- functions -->
<keyword attribute="keyword" context="code" family="kwjavascript-functions" />
<!-- objects -->
<keyword attribute="keyword" context="code" family="kwjavascript-objects" />
</context>
<!-- block comment /* ... */ -->
<context id="blockcomment" attribute="blockcomment">
<!-- finish line of comment, start block -->
<detect2chars attribute="hidden" context="code" char="*" char1="/" />
</context>
<!-- line comment // ... -->
<context id="linecomment" attribute="cpp-linecomment">
<!-- finish line of comment, start block -->
<!-- detect2chars attribute="hidden" context="blockcomment" char="/" char1="*" / -->
<!-- finish line of comment end of line -->
<linecontinue attribute="hidden" context="code" />
</context>
</contexts>
</language>
<language id="jscriptnet" tabSize="4" name="JScript.NET">
<!-- Code contexts: default (most common) is code. -->
<contexts default="code">
<!-- basic source code context -->
<context id="code" attribute="code">
<!-- /* block of comment */ -->
<detect2chars attribute="hidden" context="blockcomment" char="/" char1="*" />
<!-- // line of comment -->
<detect2chars attribute="hidden" context="linecomment" char="/" char1="/" />
<!-- " " literals -->
<regexp id="dqliteral" attribute="literal" context="code" expression="(&quot;&quot;)|(&quot;(.|\\&quot;|\\\r\n)*?((\\\\)+&quot;|[^\\]{1}&quot;))" />
<!-- ' ' literals -->
<regexp id="sqliteral" attribute="literal" context="code" expression="(&apos;&apos;)|(&apos;(.|\\&apos;|\\\r\n)*?((\\\\)+&apos;|[^\\]{1}&apos;))" />
<!-- regex literal -->
<regexp id="reliteral" attribute="literal" context="code" expression="/(\\/|[^/\r\n])+/[gim]*" />
<!-- numbers -->
<regexp id="number" attribute="number" context="code" expression="0x[0-9a-fA-F]*|(((?&lt;=[^0-9])(\+|-))?)\b[0-9][0-9]*(\.[0-9]+)?" />
<!-- statements -->
<keyword attribute="keyword" context="code" family="kwjavascript-statements" />
<!-- functions -->
<keyword attribute="keyword" context="code" family="kwjavascript-functions" />
<!-- objects -->
<keyword attribute="keyword" context="code" family="kwjavascript-objects" />
<!-- JScript.NET statements -->
<keyword attribute="keyword" context="code" family="kwjscriptnet-statements" />
</context>
<!-- block comment /* ... */ -->
<context id="blockcomment" attribute="blockcomment">
<!-- finish line of comment, start block -->
<detect2chars attribute="hidden" context="code" char="*" char1="/" />
</context>
<!-- line comment // ... -->
<context id="linecomment" attribute="cpp-linecomment">
<!-- finish line of comment, start block -->
<!-- detect2chars attribute="hidden" context="blockcomment" char="/" char1="*" / -->
<!-- finish line of comment end of line -->
<linecontinue attribute="hidden" context="code" />
</context>
</contexts>
</language>
<!-- J# language specification -->
<language id="jsharp" tabSize="4" name="J#">
<!-- Code contexts: default (most common) is code. -->
<contexts default="code">
<!-- basic source code context -->
<context id="code" attribute="code">
<!-- /* block of comment */ -->
<detect2chars attribute="hidden" context="blockcomment" char="/" char1="*" />
<!-- // line of comment -->
<detect2chars attribute="hidden" context="linecomment" char="/" char1="/" />
<!-- " " literals -->
<regexp id="dqliteral" attribute="literal" context="code" expression="(&quot;&quot;)|(&quot;(.|\\&quot;|\\\r\n)*?((\\\\)+&quot;|[^\\]{1}&quot;))" />
<!-- ' ' literals -->
<regexp id="sqliteral" attribute="literal" context="code" expression="(&apos;&apos;)|(&apos;(.|\\&apos;|\\\r\n)*?((\\\\)+&apos;|[^\\]{1}&apos;))" />
<!-- preprocessor (#XXXX) -->
<regexp id="preprocessor" attribute="preprocessor" context="code" expression="#\w+" />
<!-- numbers -->
<regexp id="number" attribute="number" context="code" expression="0x[0-9a-fA-F]*|(((?&lt;=[^0-9])(\+|-))?)\b[0-9][0-9]*(\.[0-9]+)?" />
<!-- keyword J# -->
<keyword attribute="keyword" context="code" family="kwjsharp" />
</context>
<!-- block comment /* ... */ -->
<context id="blockcomment" attribute="blockcomment">
<!-- finish line of comment, start block -->
<detect2chars attribute="hidden" context="code" char="*" char1="/" />
</context>
<!-- line comment // ... -->
<context id="linecomment" attribute="cpp-linecomment">
<!-- finish line of comment, start block -->
<!-- detect2chars attribute="hidden" context="blockcomment" char="/" char1="*" / -->
<!-- finish line of comment end of line -->
<linecontinue attribute="hidden" context="code" />
</context>
</contexts>
</language>
<!-- XML -->
<language id="xml" tabSize="4" name="XML">
<contexts default="value">
<!-- Value context -->
<context id="value" attribute="xml-value">
<!-- Comment -->
<regexp id="rx-xml-comment" attribute="xml-comment" context="value" expression="&lt;!--(.|\n)*?--&gt;" />
<!-- cdata -->
<regexp id="rx-hidden" attribute="hidden" context="cdata" expression="&lt;!\[CDATA\[" />
<!-- A doctype of some sort-->
<regexp id="rx-doctype" attribute="xml-bracket" context="doctype" expression="&lt;!" />
<!-- closing element -->
<regexp id="rx-close-elem" attribute="xml-bracket" context="closing-element" expression="&lt;/" />
<!-- opening element -->
<regexp id="rx-open-elem" attribute="xml-bracket" context="opening-element" expression="&lt;\?{0,1}" />
<!-- Leftover end bracket from doctype -->
<regexp id="rx-end-bracket" attribute="xml-bracket" context="value" expression="&gt;" />
</context>
<!-- cdata tag -->
<context id="cdata" attribute="xml-cdata">
<regexp id="rx-hidden" attribute="hidden" context="value" expression="\]\]&gt;" />
</context>
<!-- A doctype of some sort -->
<context id="doctype" attribute="xml-code">
<regexp id="rx-doc-bracket" attribute="xml-bracket" context="value" expression="&gt;" />
<!-- Comment -->
<regexp id="rx-doc-comment" attribute="xml-comment" context="doctype" expression="&lt;!--(.|\n)*?--&gt;" />
<!-- A quoted string or attribute name -->
<regexp id="rx-doc-quote" attribute="xml-attribute-value" context="doctype" expression="(&quot;(.|[\r\n])*?&quot;|&apos;(.|[\r\n])*?&apos;|\b(\w|-|\.)+\b)" />
<!-- A doctype of some sort-->
<regexp id="rx-doc-nested" attribute="xml-bracket" context="doctype" expression="&lt;!" />
</context>
<!-- opening element context -->
<context id="opening-element" attribute="xml-code">
<!-- find tag... -->
<regexp id="rx-attr" attribute="xml-tag" context="element-attributes" expression="\b((\w|-|\.)+\:){0,1}(\w|-|\.)+\b" />
</context>
<!-- closing element -->
<context id="closing-element" attribute="xml-code">
<regexp id="rx-closing-elem" attribute="xml-tag" context="closing-element" expression="\b((\w|-|\.)+\:){0,1}(\w|-|\.)+\b" />
<regexp id="rx-value" attribute="xml-bracket" context="value" expression="(\?|/){0,1}&gt;" />
</context>
<!-- attributes group -->
<context id="element-attributes" attribute="xml-code">
<!-- find end of element -->
<regexp id="rx-value" attribute="xml-bracket" context="value" expression="(\?|/){0,1}&gt;" />
<!-- find attributes... -->
<regexp id="rx-attr-name" attribute="xml-attribute-name" context="attribute-name" expression="\b((\w|-|\.)+\:){0,1}(\w|-|\.)+\b" />
</context>
<!-- attribute name -->
<context id="attribute-name" attribute="hidden">
<regexp id="rx-elem-attrs" attribute="xml-attribute-value" context="element-attributes" expression="(&quot;(.|[\r\n])*?&quot;|&apos;(.|[\r\n])*?&apos;|\b(\w|-|\.)+\b)" />
<!-- This must come last as equals can appear in quoted strings -->
<regexp id="rx-elem-equal" attribute="xml-attribute-equal" context="attribute-name" expression="=" />
</context>
</contexts>
</language>
<!-- XAML -->
<language id="xaml" tabSize="4" name="XAML">
<contexts default="value">
<!-- Value context -->
<context id="value" attribute="xml-value">
<!-- Comment -->
<regexp id="rx-xml-comment" attribute="xml-comment" context="value" expression="&lt;!--(.|\n)*?--&gt;" />
<!-- cdata -->
<regexp id="rx-hidden" attribute="hidden" context="cdata" expression="&lt;!\[CDATA\[" />
<!-- A doctype of some sort-->
<regexp id="rx-doctype" attribute="xml-bracket" context="doctype" expression="&lt;!" />
<!-- closing element -->
<regexp id="rx-close-elem" attribute="xml-bracket" context="closing-element" expression="&lt;/" />
<!-- opening element -->
<regexp id="rx-open-elem" attribute="xml-bracket" context="opening-element" expression="&lt;\?{0,1}" />
<!-- Leftover end bracket from doctype -->
<regexp id="rx-end-bracket" attribute="xml-bracket" context="value" expression="&gt;" />
</context>
<!-- cdata tag -->
<context id="cdata" attribute="xml-cdata">
<regexp id="rx-hidden" attribute="hidden" context="value" expression="\]\]&gt;" />
</context>
<!-- A doctype of some sort -->
<context id="doctype" attribute="xml-code">
<regexp id="rx-doc-bracket" attribute="xml-bracket" context="value" expression="&gt;" />
<!-- Comment -->
<regexp id="rx-doc-comment" attribute="xml-comment" context="doctype" expression="&lt;!--(.|\n)*?--&gt;" />
<!-- A quoted string or attribute name -->
<regexp id="rx-doc-quote" attribute="xml-attribute-value" context="doctype" expression="(&quot;(.|[\r\n])*?&quot;|&apos;(.|[\r\n])*?&apos;|\b(\w|-|\.)+\b)" />
<!-- A doctype of some sort-->
<regexp id="rx-doc-nested" attribute="xml-bracket" context="doctype" expression="&lt;!" />
</context>
<!-- opening element context -->
<context id="opening-element" attribute="xml-code">
<!-- find tag... -->
<regexp id="rx-attr" attribute="xml-tag" context="element-attributes" expression="\b((\w|-|\.)+\:){0,1}(\w|-|\.)+\b" />
</context>
<!-- closing element -->
<context id="closing-element" attribute="xml-code">
<regexp id="rx-closing-elem" attribute="xml-tag" context="closing-element" expression="\b((\w|-|\.)+\:){0,1}(\w|-|\.)+\b" />
<regexp id="rx-value" attribute="xml-bracket" context="value" expression="(\?|/){0,1}&gt;" />
</context>
<!-- attributes group -->
<context id="element-attributes" attribute="xml-code">
<!-- find end of element -->
<regexp id="rx-value" attribute="xml-bracket" context="value" expression="(\?|/){0,1}&gt;" />
<!-- find attributes... -->
<regexp id="rx-attr-name" attribute="xml-attribute-name" context="attribute-name" expression="\b((\w|-|\.)+\:){0,1}(\w|-|\.)+\b" />
</context>
<!-- attribute name -->
<context id="attribute-name" attribute="hidden">
<regexp id="rx-elem-attrs" attribute="xml-attribute-value" context="element-attributes" expression="(&quot;(.|[\r\n])*?&quot;|&apos;(.|[\r\n])*?&apos;|\b(\w|-|\.)+\b)" />
<!-- This must come last as equals can appear in quoted strings -->
<regexp id="rx-elem-equal" attribute="xml-attribute-equal" context="attribute-name" expression="=" />
</context>
</contexts>
</language>
<!-- SQL language specification -->
<language id="sql" not-case-sensitive="yes" tabSize="4" name="SQL">
<!-- Code contexts: default (most common) is code. -->
<contexts default="code">
<!-- basic source code context -->
<context id="code" attribute="code">
<!-- /* block of comment */ -->
<detect2chars attribute="hidden" context="blockcomment" char="/" char1="*" />
<!-- (two dashes) line of comment -->
<detect2chars attribute="hidden" context="linecomment" char="-" char1="-" />
<!-- ' ' literals -->
<regexp id="literal" attribute="literal" context="code" expression="'(.|\\'|\\\r\n)*?((\\\\)+'|[^\\]{1}')" />
<!-- numbers -->
<regexp id="number" attribute="number" context="code" expression="0x[0-9a-fA-F]*|(((?&lt;=[^0-9])(\+|-))?)\b[0-9][0-9]*(\.[0-9]+)?" />
<!-- keyword SQL -->
<keyword attribute="keyword" context="code" family="kwsql-keywords"/>
</context>
<!-- block comment /* ... */ -->
<context id="blockcomment" attribute="blockcomment">
<!-- finish line of comment, start block -->
<detect2chars attribute="hidden" context="code" char="*" char1="/" />
</context>
<!-- line comment (two dashes) ... -->
<context id="linecomment" attribute="sql-linecomment">
<!-- finish line of comment, start block -->
<!-- detect2chars attribute="hidden" context="blockcomment" char="/" char1="*" / -->
<!-- finish line of comment end of line -->
<linecontinue attribute="hidden" context="code" />
</context>
</contexts>
</language>
<!-- Powershell language specification -->
<language id="pshell" tabSize="4" name="PowerShell">
<!-- Code contexts: default (most common) is code. -->
<contexts default="code">
<!-- basic source code context -->
<context id="code" attribute="code">
<!-- " " literals -->
<regexp id="dqliteral" attribute="literal" context="code" expression="(&quot;&quot;)|(@&quot;(.|[\r\n])*?&quot;|&quot;(.|\\&quot;|\\\r\n)*?((\\\\)+&quot;|[^\\]{1}&quot;))" />
<!-- ' ' literals -->
<regexp id="sqliteral" attribute="literal" context="code" expression="(&apos;&apos;)|(&apos;(.|\\&apos;|\\\r\n)*?((\\\\)+&apos;|[^\\]{1}&apos;))" />
<!-- line comment -->
<regexp id="pshellComment" attribute="comment" context="code" expression="#[^\r\n]*" />
<!-- namespace -->
<regexp id="namespace" attribute="namespace" context="code" expression="\[[^\r\n]+\]" />
<!-- numbers -->
<regexp id="number" attribute="number" context="code" expression="0x[0-9a-fA-F]*|(((?&lt;=[^0-9])(\+|-))?)\b[0-9][0-9]*(\.[0-9]+)?" />
<!-- pshell cmdlets -->
<regexp id="pshellCmdlet" attribute="pshell-cmdlet" context="code" expression="(\b\w+-\b\w+)" />
<!-- keyword powershell -->
<keyword attribute="keyword" context="code" family="kwpshelllangoo-keywords" />
<!-- keyword C-like -->
<keyword attribute="keyword" context="code" family="kwclang-keywords" />
</context>
</contexts>
</language>
<!-- Python language specification -->
<language id="python" tabSize="4" name="Python">
<!-- Code contexts: default (most common) is code. -->
<contexts default="code">
<!-- basic source code context -->
<context id="code" attribute="code">
<!-- Single line of comment -->
<regexp id="python-comment" attribute="comment" context="code" expression="(?&lt;=\W|^)(#.*)([\r\n]{1,2}|$)" />
<!-- " " literals -->
<regexp id="dqliteral" attribute="literal" context="code" expression="(&quot;&quot;)|(@&quot;(.|[\r\n])*?&quot;|&quot;(.|\\&quot;|\\\r\n)*?((\\\\)+&quot;|[^\\]{1}&quot;))" />
<!-- ' ' literals -->
<regexp id="sqliteral" attribute="literal" context="code" expression="(&apos;&apos;)|(&apos;(.|\\&apos;|\\\r\n)*?((\\\\)+&apos;|[^\\]{1}&apos;))" />
<!-- numbers -->
<regexp id="number" attribute="number" context="code" expression="0x[0-9a-fA-F]*|(((?&lt;=[^0-9])(\+|-))?)\b[0-9][0-9]*(\.[0-9]+)?" />
<!-- keyword Python-like -->
<keyword attribute="keyword" context="code" family="kwpython-keywords" />
</context>
<!-- line comment // ... -->
<context id="linecomment" attribute="cpp-linecomment">
<!-- finish line of comment end of line -->
<linecontinue attribute="hidden" context="code" />
</context>
</contexts>
</language>
</languages>
</highlight>