Warning, /frameworks/syntax-highlighting/data/syntax/pug.xml is written in an unsupported language. File is not indexed.

0001 <?xml version="1.0" encoding="UTF-8"?>
0002 <!DOCTYPE language [
0003 <!ENTITY name "[A-Za-z][A-Za-z0-9_-]*">
0004 <!ENTITY voidtag "(area|base|br|col|embed|hr|img|input|keygen|link|meta|param|source|track|wbr)">
0005 <!ENTITY entity "&amp;(#[0-9]+|#[xX][0-9A-Fa-f]+|[A-Za-z][A-Za-z0-9_-]*);">
0006 ]>
0007 <!--
0008 
0009 Pug, known as Jade before, is a HTML template engine.
0010 
0011 https://pugjs.org/
0012 
0013 Changelog
0014 
0015 Version 1 - Guo Yunhe guoyunhebrave@gmail.com - 2017-04-14
0016 - Basic Pug/Jade syntax support
0017 - Do NOT support multi-line comment or text block
0018 
0019 -->
0020 <language name="Pug" version="8" kateversion="5.53" section="Markup" extensions="*.pug;*.jade" mimetype="" priority="10" author="Guo Yunhe (guoyunhebrave@gmail.com)" license="LGPL">
0021   <highlighting>
0022     <list name="controlflow">
0023       <item>case</item>
0024       <item>when</item>
0025       <item>default</item>
0026       <item>if</item>
0027       <item>unless</item>
0028       <item>else</item>
0029       <item>each</item>
0030       <item>while</item>
0031     </list>
0032     <contexts>
0033       <context name="Start" attribute="Normal Text" lineEndContext="#stay">
0034         <RegExpr attribute="Comment" context="BlockComment" String="^(\s*)//" column="0"/>
0035         <Detect2Chars attribute="Comment" context="Comment" char="/" char1="/"/>
0036         <StringDetect attribute="Doctype" context="#stay" String="doctype" insensitive="true"/>
0037         <RegExpr attribute="ControlFlow" context="JavaScript" String="\belse\s+if\b" firstNonSpace="true"/>
0038         <keyword attribute="ControlFlow" context="JavaScript" String="controlflow" firstNonSpace="true"/>
0039         <DetectIdentifier attribute="Normal Text" context="Element" firstNonSpace="true" lookAhead="true"/>
0040         <AnyChar attribute="Normal Text" context="Element" String="#." firstNonSpace="true" lookAhead="true"/>
0041         <DetectChar attribute="Normal Text" context="JavaScript" char="-" firstNonSpace="true"/>
0042         <DetectChar attribute="Normal Text" context="#stay" char="|" firstNonSpace="true"/>
0043       </context>
0044       <context name="FindInterpolation" attribute="Normal Text" lineEndContext="#stay">
0045         <Detect2Chars attribute="Interpolation" context="JavaScript" char="#" char1="{"/>
0046         <DetectChar attribute="Interpolation" context="#stay" char="}"/>
0047       </context>
0048       <context name="FindEntities" attribute="Normal Text" lineEndContext="#stay">
0049         <RegExpr attribute="Entity" context="#stay" String="&entity;"/>
0050         <AnyChar attribute="Error" context="#stay" String="&amp;&lt;"/>
0051       </context>
0052       <context name="Element" attribute="Normal Text" lineEndContext="#pop">
0053         <RegExpr attribute="Element" context="#stay" String="&name;"/>
0054         <RegExpr attribute="ID" context="#stay" String="#&name;"/>
0055         <RegExpr attribute="Class" context="#stay" String="\.&name;"/>
0056         <DetectChar attribute="Normal Text" context="Attributes" char="("/>
0057         <StringDetect attribute="Normal Text" context="AttributeObject" String="&amp;attributes("/>
0058         <RegExpr attribute="Normal Text" context="Element" String=":\s+"/>
0059         <RegExpr attribute="Normal Text" context="JavaScript" String="=\s+"/>
0060         <DetectChar attribute="Normal Text" context="Text" char=" "/>
0061       </context>
0062       <context name="Attributes" attribute="Normal Text" lineEndContext="#stay">
0063         <RegExpr attribute="Attribute" context="Attribute" String="(&name;|\(&name;\))"/>
0064         <DetectChar attribute="Normal Text" context="#pop" char=")"/>
0065       </context>
0066       <context name="AttributeObject" attribute="Normal Text" lineEndContext="#stay">
0067         <DetectChar attribute="Normal Text" context="#pop" char=")"/>
0068         <IncludeRules context="Normal##JavaScript" includeAttrib="true"/>
0069       </context>
0070       <context name="Attribute" attribute="Attribute" lineEndContext="#pop">
0071         <AnyChar attribute="Normal Text" context="#pop" String=",)" lookAhead="true"/>
0072         <RegExpr attribute="Attribute" context="#pop" String="\s+(&name;|\(&name;\))(=|\s|\))" lookAhead="true"/>
0073         <DetectChar attribute="Attribute" context="Value" char="="/>
0074       </context>
0075       <context name="Value" attribute="Normal Text" lineEndContext="#pop">
0076         <AnyChar attribute="Normal Text" context="#pop" String=",)" lookAhead="true"/>
0077         <RegExpr attribute="Attribute" context="#pop" String="\s+(&name;|\(&name;\))(=|\s|\))" lookAhead="true"/>
0078         <IncludeRules context="Normal##JavaScript" includeAttrib="true"/>
0079       </context>
0080       <context name="Text" attribute="Normal Text" lineEndContext="#pop">
0081         <DetectSpaces/>
0082         <IncludeRules context="FindEntities" includeAttrib="true"/>
0083         <IncludeRules context="FindInterpolation" includeAttrib="true"/>
0084       </context>
0085       <context name="JavaScript" attribute="Normal Text" lineEndContext="#pop">
0086         <IncludeRules context="Normal##JavaScript" includeAttrib="true"/>
0087         <AnyChar attribute="Normal Text" context="#pop" String=",)}:" lookAhead="true"/>
0088       </context>
0089       <context name="Comment" attribute="Comment" lineEndContext="#pop">
0090         <DetectSpaces />
0091         <IncludeRules context="##Comments"/>
0092       </context>
0093       <context name="BlockComment" attribute="Comment" lineEndContext="#stay">
0094         <RegExpr attribute="Comment" context="#stay" String="^%1\s" column="0" dynamic="true"/>
0095         <RegExpr attribute="Comment" context="#stay" String="^\s*$" column="0"/>
0096         <RegExpr attribute="Comment" context="#pop" String="." lookAhead="true" column="0"/>
0097         <IncludeRules context="Comment"/>
0098       </context>
0099     </contexts>
0100     <itemDatas>
0101       <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/>
0102       <itemData name="ControlFlow" defStyleNum="dsControlFlow" spellChecking="false"/>
0103       <itemData name="Comment" defStyleNum="dsComment"/>
0104       <itemData name="Doctype" defStyleNum="dsDataType" bold="1" spellChecking="false"/>
0105       <itemData name="Element" defStyleNum="dsKeyword" spellChecking="false"/>
0106       <itemData name="ID" defStyleNum="dsPreprocessor" spellChecking="false"/>
0107       <itemData name="Class" defStyleNum="dsFunction" spellChecking="false"/>
0108       <itemData name="Attribute" defStyleNum="dsAttribute" spellChecking="false"/>
0109       <itemData name="Entity" defStyleNum="dsDecVal" spellChecking="false"/>
0110       <itemData name="Interpolation" defStyleNum="dsPreprocessor" spellChecking="false"/>
0111       <itemData name="Error" defStyleNum="dsError" spellChecking="false"/>
0112     </itemDatas>
0113   </highlighting>
0114   <general>
0115     <keywords casesensitive="1" weakDeliminator="-"/>
0116     <comments>
0117       <comment name="singleLine" start="//" position="afterwhitespace"/>
0118     </comments>
0119     <folding indentationsensitive="1"/>
0120     <emptyLines>
0121       <emptyLine regexpr="\s+"/>
0122       <emptyLine regexpr="\s*//.*"/>
0123     </emptyLines>
0124   </general>
0125 </language>
0126 <!-- kate: replace-tabs on; tab-width 2; indent-width 2; -->