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

0001 <?xml version="1.0" encoding="UTF-8"?>
0002 <!DOCTYPE language
0003 [
0004   <!-- https://www.w3.org/TR/CSS22/syndata.html#tokenization -->
0005   <!ENTITY nmstart "[_a-zA-Z]|(\\[0-9a-fA-F]{1,6})|(\\[^\n\r\f0-9a-fA-F])">
0006   <!ENTITY nmchar  "[_a-zA-Z0-9-]|(\\[0-9a-fA-F]{1,6})|(\\[^\n\r\f0-9a-fA-F])">
0007 ]>
0008 
0009 <language name="SASS" version="7" kateversion="5.53" section="Markup" extensions="*.sass" indenter="cstyle" mimetype="text/css" author="Jonathan Poelen (jonathan.poelen@gmail.com)" license="MIT" priority="5">
0010 
0011     <highlighting>
0012         <list name="properties">
0013             <include>properties##SCSS</include>
0014             <include>sub-properties##SCSS</include>
0015         </list>
0016         <list name="special values"><include>special values##SCSS</include></list>
0017         <list name="value keywords"><include>value keywords##SCSS</include></list>
0018         <list name="values"><include>values##SCSS</include></list>
0019         <list name="colors"><include>colors##SCSS</include></list>
0020         <list name="functions"><include>functions##SCSS</include></list>
0021         <list name="medias"><include>medias##SCSS</include></list>
0022         <list name="pseudoelements"><include>pseudoelements##SCSS</include></list>
0023         <list name="pseudoclasses"><include>pseudoclasses##SCSS</include></list>
0024         <list name="pseudoclass-selector"><include>pseudoclass-selector##SCSS</include></list>
0025         <list name="pseudoclasses-@page"><include>pseudoclasses-@page##SCSS</include></list>
0026         <list name="at-rules"><include>at-rules##SCSS</include></list>
0027         <list name="nested at-rules"><include>nested at-rules##SCSS</include></list>
0028         <list name="other at-rules"><include>other at-rules##SCSS</include></list>
0029         <list name="media operators"><include>media operators##SCSS</include></list>
0030         <list name="operators"><include>operators##SCSS</include></list>
0031         <list name="annotations"><include>annotations##SCSS</include></list>
0032 
0033         <contexts>
0034             <context name="Base" attribute="Normal Text" lineEndContext="#stay">
0035                 <IncludeRules context="FindCommentsColumn0" />
0036                 <IncludeRules context="FindComments" />
0037                 <RegExpr attribute="Property" context="Rule" String="^\s*[-_A-Za-z]+(/\*.*\*/)?\s*(?=:(\s|$))" lookAhead="true" column="0" minimal="true" />
0038                 <DetectSpaces />
0039                 <DetectChar attribute="At Rule" context="@mixin" char="=" firstNonSpace="true" />
0040                 <DetectChar attribute="At Rule" context="AtRule" char="+" firstNonSpace="true" />
0041                 <DetectChar attribute="At Rule" context="SelectAtRule" char="@" lookAhead="true" />
0042                 <!-- find selectors // .class #id :hover :nth-child(2n+1) [type="search"] -->
0043                 <DetectChar attribute="Selector Attribute" context="SelectorAttr" char="[" />
0044                 <DetectChar attribute="Separator Symbol" context="#stay" char="," />
0045                 <AnyChar attribute="Operator" context="#stay" String="&amp;*>+~|" />
0046                 <RegExpr attribute="Selector Pseudo" context="SelectorPseudo" String=":(?=[a-z:])" />
0047                 <RegExpr attribute="Selector Id" context="#stay" String="#[-]?(&nmstart;)(&nmchar;)*" />
0048                 <RegExpr attribute="Selector Class" context="#stay" String="\.([a-zA-Z0-9\-_]|[\x80-\xFF]|\\[0-9A-Fa-f]{1,6})*" />
0049                 <RegExpr attribute="Placeholder Selector" context="#stay" String="%[_a-zA-Z][_a-zA-Z\-]*" />
0050                 <RegExpr attribute="Selector Tag" context="#stay" String="[-]?(&nmstart;)(&nmchar;)*(?=\s|:?[#.&amp;[*>+~|,]|:[a-z:])" />
0051                 <RegExpr attribute="Variable" context="VariableDefine" String="\$[a-zA-Z0-9\-_]+(?=\s*:)" />
0052                 <Detect2Chars attribute="Interpolation" context="Interpolation" char="#" char1="{" />
0053                 <DetectChar attribute="Normal Text" context="Rule" char=":" lookAhead="true" />
0054             </context>
0055 
0056             <!-- same as SCSS -->
0057             <context name="FindSelector" attribute="Normal Text" lineEndContext="#stay">
0058                 <AnyChar attribute="Error" context="#stay" String=",&amp;" />
0059                 <AnyChar attribute="Operator" context="#stay" String="*>+~|" />
0060                 <!-- find selectors // .class #id :hover :nth-child(2n+1) [type="search"] -->
0061                 <DetectChar attribute="Selector Pseudo" context="SelectorPseudo" char=":" />
0062                 <DetectChar attribute="Selector Attribute" context="SelectorAttr" char="[" />
0063                 <IncludeRules context="FindComments" />
0064                 <RegExpr attribute="Selector Id" context="#stay" String="#[-]?(&nmstart;)(&nmchar;)*" />
0065                 <RegExpr attribute="Selector Class" context="#stay" String="\.([a-zA-Z0-9\-_]|[\x80-\xFF]|\\[0-9A-Fa-f]{1,6})*" />
0066                 <RegExpr attribute="Placeholder Selector" context="#stay" String="%[_a-zA-Z][_a-zA-Z\-]*" />
0067                 <RegExpr attribute="Selector Tag" context="#stay" String="[-]?(&nmstart;)(&nmchar;)*" />
0068                 <Detect2Chars attribute="Interpolation" context="Interpolation" char="#" char1="{" />
0069             </context>
0070 
0071             <!-- same as SCSS -->
0072             <context name="VariableDefine" attribute="Normal Text" lineEndContext="#pop">
0073                 <DetectChar attribute="Normal Text" context="RuleParameters" char=":" />
0074             </context>
0075 
0076             <context name="Interpolation" attribute="Normal Text" lineEndContext="#pop">
0077                 <DetectSpaces />
0078                 <DetectChar attribute="Interpolation" context="#pop" char="}" />
0079                 <IncludeRules context="FindStrings" />
0080                 <IncludeRules context="FindFunctions" />
0081                 <IncludeRules context="FindValues" />
0082             </context>
0083 
0084 
0085             <!-- find functions // rgba(255,255,255,0.75) -->
0086             <!-- same as SCSS -->
0087             <context name="FindFunctions" attribute="Normal Text" lineEndContext="#stay">
0088                 <RegExpr attribute="Function" context="Function" String="[a-z\-]{2,}\(" lookAhead="true" />
0089             </context>
0090 
0091             <!-- find values //  10px 12pt 2.5em 1rem 75% #ffcc99 red solid -->
0092             <!-- same as SCSS -->
0093             <context name="FindValues" attribute="Normal Text" lineEndContext="#stay">
0094                 <DetectChar attribute="Annotation" context="Annotation" char="!" />
0095                 <keyword attribute="Operator" context="#stay" String="operators" />
0096                 <keyword attribute="Value Keyword" context="#stay" String="value keywords" />
0097                 <keyword attribute="Value" context="#stay" String="values" />
0098                 <keyword attribute="Color" context="#stay" String="colors" />
0099                 <RegExpr attribute="Number" context="FindUnits" String="([0-9]+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?" />
0100                 <RegExpr attribute="Color" context="#stay" String="#([0-9A-Fa-f]{3,4}){1,2}\b" />
0101                 <RegExpr attribute="Variable" context="#stay" String="\$[a-zA-Z0-9\-_]+" />
0102                 <keyword attribute="Value Keyword" context="#stay" String="special values" />
0103                 <RegExpr attribute="Normal Text" context="#stay" String="[-]?(&nmstart;)(&nmchar;)*" />
0104                 <AnyChar attribute="Operator" context="#stay" String="*/+%-" />
0105                 <Detect2Chars attribute="Interpolation" context="Interpolation" char="#" char1="{" />
0106             </context>
0107 
0108             <!-- same as SCSS -->
0109             <context name="Annotation" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">
0110                 <keyword attribute="Annotation" context="#pop" String="annotations" />
0111             </context>
0112 
0113             <!-- same as SCSS -->
0114             <context name="FindUnits" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">
0115                 <RegExpr attribute="Unit" context="#pop" String="(%|(em|ex|cap|ch|ic|rem|lh|rlh|vw|vh|vi|vb|vmin|vmax|cm|mm|Q|in|pc|pt|px|deg|rad|grad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx|x|fr)\b)" />
0116             </context>
0117 
0118             <!-- find strings // "some words" 'some words' -->
0119             <!-- same as SCSS -->
0120             <context name="FindStrings" attribute="Normal Text" lineEndContext="#stay">
0121                 <DetectChar attribute="String" context="StringDQ" char="&quot;" />
0122                 <DetectChar attribute="String" context="StringSQ" char="'" />
0123             </context>
0124 
0125             <!-- find comments // and /* at the beginning of line -->
0126             <context name="FindCommentsColumn0" attribute="Comment" lineEndContext="#stay">
0127                 <!-- (\s*)(?=/[*/]) is not selected when the match is empty -->
0128                 <RegExpr attribute="Normal Text" context="Comment" String="^(\s+)(?=/[*/])" column="0" />
0129                 <RegExpr attribute="Comment" context="Comment" String="^()/[*/]" column="0" />
0130             </context>
0131 
0132             <!-- find comments // and /* -->
0133             <context name="FindComments" attribute="Comment" lineEndContext="#stay">
0134                 <Detect2Chars attribute="Comment" context="IsInlineComment" char="/" char1="/" />
0135                 <Detect2Chars attribute="Comment" context="IsInlineComment2" char="/" char1="*" />
0136             </context>
0137 
0138             <context name="Comment" attribute="Comment" lineEndContext="#stay" dynamic="true" fallthrough="true" fallthroughContext="IsInlineComment">
0139                 <RegExpr attribute="Comment" context="IsInlineComment" String="^%1\s|^\s*$" dynamic="true" column="0" />
0140                 <DetectSpaces attribute="Normal Text" context="#pop" lookAhead="true" column="0" />
0141                 <RegExpr attribute="Comment" context="#pop" String="." lookAhead="true" column="0"/>
0142             </context>
0143 
0144             <context name="IsInlineComment" attribute="Comment" lineEndContext="#pop">
0145                 <DetectSpaces />
0146                 <IncludeRules context="##Comments" />
0147                 <DetectIdentifier />
0148             </context>
0149 
0150             <context name="IsInlineComment2" attribute="Comment" lineEndContext="#pop">
0151                 <DetectSpaces />
0152                 <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" />
0153                 <IncludeRules context="##Comments" />
0154                 <DetectIdentifier />
0155             </context>
0156 
0157             <context name="SelectAtRule" attribute="At Rule" lineEndContext="#pop">
0158                 <keyword attribute="At Rule" context="#pop!AtRule" String="nested at-rules" />
0159                 <keyword attribute="At Rule" context="#pop!AtRule" String="at-rules" />
0160                 <!-- CSS: inline -->
0161                 <!-- SCSS: inline or block -->
0162                 <WordDetect attribute="At Rule" context="#pop!AtRule" String="@inline" />
0163                 <WordDetect attribute="At Rule" context="#pop!@extend" String="@extend" />
0164                 <WordDetect attribute="At Rule" context="#pop!@mixin" String="@mixin" />
0165                 <WordDetect attribute="At Rule" context="#pop!@mixin" String="@function" />
0166                 <WordDetect attribute="At Rule" context="#pop!@keyframes-@font-face" String="@keyframes" />
0167                 <WordDetect attribute="At Rule" context="#pop!@keyframes-@font-face" String="@font-face" />
0168                 <WordDetect attribute="At Rule" context="#pop!@viewport" String="@viewport" />
0169                 <WordDetect attribute="At Rule" context="#pop!@if" String="@if" />
0170                 <WordDetect attribute="At Rule" context="#pop!@else" String="@else" />
0171                 <WordDetect attribute="At Rule" context="#pop!@page" String="@page" />
0172                 <RegExpr attribute="At Rule" context="#pop!AtRule" String="@[a-zA-Z0-9\-_]+\b" />
0173             </context>
0174 
0175             <context name="@if" attribute="Normal Text" lineEndContext="#pop">
0176                 <DetectSpaces />
0177                 <IncludeRules context="FindComments" />
0178                 <IncludeRules context="FindStrings" />
0179                 <IncludeRules context="FindFunctions" />
0180                 <IncludeRules context="FindValues" />
0181                 <AnyChar attribute="Operator" context="#stay" String="=!&lt;&gt;" />
0182             </context>
0183 
0184             <context name="@else" attribute="Error" lineEndContext="#pop">
0185                 <DetectSpaces attribute="Normal Text" />
0186                 <IncludeRules context="FindComments" />
0187                 <WordDetect attribute="At Rule" context="#pop!@if" String="if" />
0188                 <DetectIdentifier attribute="Error" />
0189             </context>
0190 
0191             <context name="@extend" attribute="Normal Text" lineEndContext="#pop">
0192                 <DetectSpaces />
0193                 <IncludeRules context="FindSelector" />
0194             </context>
0195 
0196             <context name="@mixin" attribute="Normal Text" lineEndContext="#pop">
0197                 <DetectSpaces />
0198                 <IncludeRules context="FindComments" />
0199                 <RegExpr attribute="Function" context="MixinParameter" String="[a-zA-Z0-9\-_]+" />
0200             </context>
0201 
0202             <context name="MixinParameter" attribute="Error" lineEndContext="#pop#pop">
0203                 <DetectSpaces attribute="Normal Text" />
0204                 <AnyChar attribute="Normal Text" context="#stay" String="()" />
0205                 <DetectChar attribute="Separator Symbol" context="#stay" char="," />
0206                 <IncludeRules context="FindComments" />
0207                 <RegExpr attribute="Variable" context="#stay" String="\$[a-zA-Z0-9\-_]+" />
0208                 <StringDetect attribute="Operator" context="#stay" String="..." />
0209             </context>
0210 
0211             <context name="@keyframes-@font-face" attribute="Normal Text" lineEndContext="#pop">
0212                 <DetectSpaces />
0213                 <IncludeRules context="FindComments" />
0214             </context>
0215 
0216             <context name="@viewport" attribute="Normal Text" lineEndContext="#pop">
0217                 <DetectSpaces />
0218                 <IncludeRules context="FindComments" />
0219                 <DetectChar attribute="Selector Pseudo" context="SelectorPseudo" char=":" />
0220             </context>
0221 
0222             <context name="@page" attribute="Normal Text" lineEndContext="#pop">
0223                 <DetectSpaces />
0224                 <IncludeRules context="FindComments" />
0225                 <DetectChar attribute="Selector Pseudo" context="SelectorPseudo-@page" char=":" />
0226             </context>
0227 
0228             <context name="SelectorPseudo-@page" attribute="Selector Pseudo" lineEndContext="#pop" fallthrough="true" fallthroughContext="#pop">
0229                 <keyword attribute="Selector Pseudo" context="#pop" String="pseudoclasses-@page" />
0230                 <RegExpr attribute="Selector Pseudo" context="#pop" String="[-a-zA-Z][-a-zA-Z0-9]*" />
0231             </context>
0232 
0233             <context name="AtRule" attribute="Normal Text" lineEndContext="#pop">
0234                 <DetectSpaces />
0235                 <DetectChar attribute="Operator" context="#stay" char="&amp;" />
0236                 <IncludeRules context="FindComments" />
0237                 <IncludeRules context="FindStrings" />
0238                 <IncludeRules context="FindFunctions" />
0239                 <keyword attribute="Keyword" context="#stay" String="media operators" />
0240                 <RegExpr attribute="Property" context="#stay" String="[A-Za-z_-]+(?=\s*:)" />
0241                 <keyword attribute="Value" context="#stay" String="medias" />
0242                 <IncludeRules context="FindValues" />
0243             </context>
0244 
0245             <!-- same as SCSS -->
0246             <context name="SelectorAttr" attribute="Selector Attribute" lineEndContext="#pop">
0247                 <DetectChar attribute="Selector Attribute" context="#pop" char="]" />
0248                 <IncludeRules context="FindStrings" />
0249                 <DetectChar   attribute="Operator" context="SelectorAttrValue" char="=" />
0250                 <Detect2Chars attribute="Operator" context="SelectorAttrValue" char="~" char1="=" />
0251                 <Detect2Chars attribute="Operator" context="SelectorAttrValue" char="^" char1="=" />
0252                 <Detect2Chars attribute="Operator" context="SelectorAttrValue" char="$" char1="=" />
0253                 <Detect2Chars attribute="Operator" context="SelectorAttrValue" char="*" char1="=" />
0254                 <Detect2Chars attribute="Operator" context="SelectorAttrValue" char="|" char1="=" />
0255                 <DetectIdentifier />
0256             </context>
0257 
0258             <!-- same as SCSS -->
0259             <context name="SelectorAttrValue" attribute="String" lineEndContext="#pop#pop">
0260                 <DetectChar attribute="Selector Attribute" context="#pop#pop" char="]" />
0261                 <DetectIdentifier />
0262             </context>
0263 
0264             <!-- same as SCSS -->
0265             <context name="SelectorPseudo" attribute="Selector Pseudo" lineEndContext="#pop">
0266                 <DetectChar attribute="Selector Pseudo" context="SelectorPseudoElements" char=":" />
0267                 <keyword attribute="Selector Pseudo" context="SelectorPseudoValueSelector" String="pseudoclass-selector" />
0268                 <keyword attribute="Selector Pseudo" context="SelectorPseudoValue" String="pseudoclasses" />
0269                 <RegExpr attribute="Selector Pseudo" context="SelectorPseudoValue" String="[-a-zA-Z][-a-zA-Z0-9]*" />
0270             </context>
0271 
0272             <!-- same as SCSS -->
0273             <context name="SelectorPseudoElements" attribute="Selector Pseudo" lineEndContext="#pop#pop">
0274                 <keyword attribute="Selector Pseudo" context="#pop!SelectorPseudoValue" String="pseudoelements" />
0275                 <RegExpr attribute="Selector Pseudo" context="#pop!SelectorPseudoValue" String="[-a-zA-Z][-a-zA-Z0-9]*" />
0276             </context>
0277 
0278             <!-- same as SCSS -->
0279             <context name="SelectorPseudoValueSelector" attribute="Selector Pseudo" lineEndContext="#pop#pop" fallthrough="true" fallthroughContext="#pop#pop">
0280                 <DetectChar attribute="Selector Pseudo" context="SelectorPseudoValueCloseSelector" char="(" />
0281             </context>
0282 
0283             <context name="SelectorPseudoValueCloseSelector" attribute="Normal Text" lineEndContext="#pop#pop#pop">
0284                 <DetectSpaces />
0285                 <DetectChar attribute="Selector Pseudo" context="#pop#pop#pop" char=")" />
0286                 <IncludeRules context="FindSelector" />
0287             </context>
0288 
0289             <!-- same as SCSS -->
0290             <context name="SelectorPseudoValue" attribute="Selector Pseudo" lineEndContext="#pop#pop" fallthrough="true" fallthroughContext="#pop#pop">
0291                 <DetectChar attribute="Selector Pseudo" context="SelectorPseudoValueClose" char="(" />
0292             </context>
0293 
0294             <!-- same as SCSS -->
0295             <context name="SelectorPseudoValueClose" attribute="Selector Pseudo" lineEndContext="#pop#pop#pop">
0296                 <DetectChar attribute="Selector Pseudo" context="#pop#pop#pop" char=")" />
0297                 <DetectIdentifier />
0298             </context>
0299 
0300             <context name="Rule" attribute="Normal Text" lineEndContext="#pop">
0301                 <DetectSpaces />
0302                 <IncludeRules context="FindComments" />
0303                 <DetectChar attribute="Normal Text" context="RuleParameters" char=":" />
0304                 <Detect2Chars attribute="Variable" context="IsVariable" char="-" char1="-" />
0305                 <keyword attribute="Property" context="#stay" String="properties" />
0306                 <RegExpr attribute="Unknown Property" context="#stay" String="[^:]+" />
0307             </context>
0308 
0309             <context name="IsVariable" attribute="Normal Text" lineEndContext="#pop">
0310                 <DetectChar attribute="Normal Text" context="#pop!RuleParameters" char=":" />
0311                 <RegExpr attribute="Variable" context="#stay" String="[^:/]+" />
0312                 <IncludeRules context="FindComments" />
0313             </context>
0314 
0315             <context name="RuleParameters" attribute="Normal Text" lineEndContext="#pop#pop">
0316                 <DetectSpaces />
0317                 <!-- Jump out conditions -->
0318                 <DetectChar attribute="Separator Symbol" context="#stay" char="," />
0319                 <IncludeRules context="FindComments" />
0320                 <IncludeRules context="FindStrings" />
0321                 <IncludeRules context="FindFunctions" />
0322                 <IncludeRules context="FindValues" />
0323             </context>
0324 
0325             <!-- same as SCSS -->
0326             <context name="Function" attribute="Normal Text" lineEndContext="#pop">
0327                 <DetectChar attribute="Function" context="FunctionParameters" char="(" />
0328                 <StringDetect attribute="Function" context="FunctionVar" String="var(" />
0329                 <StringDetect attribute="Function" context="FunctionUrl" String="url(" />
0330                 <StringDetect attribute="Function" context="FunctionCalc" String="calc(" />
0331                 <keyword attribute="Function" context="#stay" String="functions" />
0332                 <RegExpr attribute="Function" context="#stay" String="[-a-zA-Z][-a-zA-Z0-9]*" />
0333             </context>
0334 
0335             <!-- same as SCSS -->
0336             <context name="FunctionVar" attribute="Variable" lineEndContext="#pop#pop" fallthrough="true" fallthroughContext="#pop!FunctionParameters">
0337                 <DetectSpaces />
0338                 <IncludeRules context="FindComments" />
0339                 <RegExpr attribute="Variable" context="#pop!FunctionParameters" String="--[^ \t\),]+" />
0340             </context>
0341 
0342             <!-- same as SCSS -->
0343             <context name="FunctionCalc" attribute="Normal Text" lineEndContext="#pop#pop">
0344                 <DetectSpaces />
0345                 <DetectChar attribute="Function" context="#pop#pop" char=")" />
0346                 <IncludeRules context="Calc" />
0347             </context>
0348 
0349             <!-- same as SCSS -->
0350             <context name="NestedCalc" attribute="Normal Text" lineEndContext="#pop#pop">
0351                 <DetectSpaces />
0352                 <DetectChar attribute="Normal Text" context="#pop" char=")" />
0353                 <IncludeRules context="Calc" />
0354             </context>
0355 
0356             <!-- same as SCSS -->
0357             <context name="Calc" attribute="Normal Text" lineEndContext="#pop">
0358                 <DetectChar attribute="Separator Symbol" context="#stay" char="," />
0359                 <DetectChar attribute="Normal Text" context="NestedCalc" char="(" />
0360                 <IncludeRules context="FindComments" />
0361                 <IncludeRules context="FindStrings" />
0362                 <IncludeRules context="FindFunctions" />
0363                 <IncludeRules context="FindValues" />
0364                 <RegExpr attribute="Operator" context="#stay" String="[-](?=$|[ \t(,;])|[+](?=$|[^0-9)])|[/*]" />
0365             </context>
0366 
0367             <!-- same as SCSS -->
0368             <context name="FunctionUrl" attribute="Normal Text" lineEndContext="#pop" fallthrough="true" fallthroughContext="UrlValue">
0369                 <DetectSpaces />
0370                 <IncludeRules context="FindStrings" />
0371                 <DetectChar attribute="Function" context="#pop#pop" char=")" />
0372             </context>
0373 
0374             <!-- same as SCSS -->
0375             <context name="UrlValue" attribute="String" lineEndContext="#pop#pop#pop">
0376                 <DetectChar attribute="Function" context="#pop#pop#pop" char=")" />
0377             </context>
0378 
0379             <!-- same as SCSS -->
0380             <context name="FunctionParameters" attribute="Normal Text" lineEndContext="#pop#pop">
0381                 <DetectSpaces />
0382                 <DetectChar attribute="Function" context="#pop#pop" char=")" />
0383                 <IncludeRules context="FindComments" />
0384                 <IncludeRules context="FindStrings" />
0385                 <IncludeRules context="FindFunctions" />
0386                 <IncludeRules context="FindValues" />
0387                 <DetectChar attribute="Separator Symbol" context="#stay" char="," />
0388                 <StringDetect attribute="Operator" String="..." />
0389             </context>
0390 
0391             <!-- string contexts -->
0392             <!-- same as SCSS -->
0393             <context name="StringDQ" attribute="String" lineEndContext="#pop">
0394                 <DetectChar attribute="String" context="#pop" char="&quot;" />
0395                 <IncludeRules context="InsideString" />
0396             </context>
0397 
0398             <!-- same as SCSS -->
0399             <context name="StringSQ" attribute="String" lineEndContext="#pop">
0400                 <DetectChar attribute="String" context="#pop" char="'" />
0401                 <IncludeRules context="InsideString" />
0402             </context>
0403 
0404             <!-- same as SCSS -->
0405             <context name="InsideString" attribute="String" lineEndContext="#stay">
0406                 <Detect2Chars attribute="Interpolation" context="Interpolation" char="#" char1="{" />
0407                 <RegExpr attribute="SpecialChar" context="#stay" String="\\([0-9A-Fa-f]{1,6}|.?)" />
0408                 <RegExpr attribute="String" context="#stay" String="\\?[^#&quot;'\\]+" />
0409             </context>
0410 
0411         </contexts>
0412 
0413         <itemDatas>
0414             <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/>
0415             <itemData name="At Rule" defStyleNum="dsImport" spellChecking="false"/>
0416             <itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
0417             <itemData name="Property" defStyleNum="dsKeyword" spellChecking="false"/>
0418             <itemData name="Unknown Property" defStyleNum="dsNormal" spellChecking="false"/>
0419             <itemData name="String" defStyleNum="dsString"/>
0420             <itemData name="SpecialChar" defStyleNum="dsSpecialChar" spellChecking="false"/>
0421             <itemData name="Interpolation" defStyleNum="dsOperator" spellChecking="false"/>
0422             <itemData name="Operator" defStyleNum="dsOperator" spellChecking="false"/>
0423             <itemData name="Separator Symbol" defStyleNum="dsOperator" spellChecking="false"/>
0424             <itemData name="Value" defStyleNum="dsDecVal" spellChecking="false"/>
0425             <itemData name="Number" defStyleNum="dsDecVal" spellChecking="false"/>
0426             <itemData name="Value Keyword" defStyleNum="dsBuiltIn" spellChecking="false"/>
0427             <itemData name="Color" defStyleNum="dsConstant" spellChecking="false"/>
0428             <itemData name="Unit" defStyleNum="dsDataType" spellChecking="false"/>
0429             <itemData name="Variable" defStyleNum="dsVariable" spellChecking="false"/>
0430             <itemData name="Function" defStyleNum="dsFunction" spellChecking="false"/>
0431             <itemData name="Annotation" defStyleNum="dsAttribute" spellChecking="false"/>
0432             <itemData name="Selector Id" defStyleNum="dsPreprocessor" bold="1" spellChecking="false"/>
0433             <itemData name="Selector Class" defStyleNum="dsFunction" spellChecking="false"/>
0434             <itemData name="Selector Attribute" defStyleNum="dsExtension" spellChecking="false"/>
0435             <itemData name="Selector Pseudo" defStyleNum="dsInformation" italic="1" spellChecking="false"/>
0436             <itemData name="Selector Tag" defStyleNum="dsNormal" spellChecking="false"/>
0437             <itemData name="Placeholder Selector" defStyleNum="dsBuiltIn" spellChecking="false"/>
0438             <itemData name="Comment" defStyleNum="dsComment" />
0439             <itemData name="Error" defStyleNum="dsError" spellChecking="false"/>
0440         </itemDatas>
0441     </highlighting>
0442 
0443     <general>
0444         <keywords casesensitive="0" weakDeliminator="-%@" />
0445         <folding indentationsensitive="1" />
0446         <comments>
0447             <comment name="singleLine" start="//" position="afterwhitespace"/>
0448         </comments>
0449     </general>
0450 
0451 </language>
0452 <!-- kate: replace-tabs on; tab-width 4; indent-width 4; -->