feat: add missing KF6 framework recipes

This commit is contained in:
2026-05-07 07:53:26 +01:00
parent d8d498f831
commit a69f479b52
2374 changed files with 2610246 additions and 0 deletions
@@ -0,0 +1,438 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language
[
<!-- https://www.w3.org/TR/CSS22/syndata.html#tokenization -->
<!ENTITY nmstart "[_a-zA-Z]|(\\[0-9a-fA-F]{1,6})|(\\[^\n\r\f0-9a-fA-F])">
<!ENTITY nmchar "[_a-zA-Z0-9-]|(\\[0-9a-fA-F]{1,6})|(\\[^\n\r\f0-9a-fA-F])">
]>
<language name="SASS" version="8" kateversion="5.79" section="Markup" extensions="*.sass" indenter="cstyle" mimetype="text/css" author="Jonathan Poelen (jonathan.poelen@gmail.com)" license="MIT" priority="5">
<highlighting>
<list name="properties"><include>properties##SCSS</include></list>
<list name="vendor properties"><include>vendor properties##SCSS</include></list>
<list name="sub-properties"><include>sub-properties##SCSS</include></list>
<list name="special values"><include>special values##SCSS</include></list>
<list name="value keywords"><include>value keywords##SCSS</include></list>
<list name="values"><include>values##SCSS</include></list>
<list name="colors"><include>colors##SCSS</include></list>
<list name="functions"><include>functions##SCSS</include></list>
<list name="media types"><include>media types##SCSS</include></list>
<list name="media features"><include>media features##SCSS</include></list>
<list name="pseudo-elements"><include>pseudo-elements##SCSS</include></list>
<list name="pseudo-classes"><include>pseudo-classes##SCSS</include></list>
<list name="@page pseudo-classes"><include>@page pseudo-classes##SCSS</include></list>
<list name="at-rules"><include>at-rules##SCSS</include></list>
<list name="media operators"><include>media operators##SCSS</include></list>
<list name="operators"><include>operators##SCSS</include></list>
<list name="annotations"><include>annotations##SCSS</include></list>
<contexts>
<context name="Base" attribute="Normal Text" lineEndContext="#stay">
<IncludeRules context="FindCommentsColumn0" />
<IncludeRules context="FindComments" />
<RegExpr attribute="Property" context="Rule" String="^\s*[-_A-Za-z]+(/\*.*\*/)?\s*(?=:(\s|$))" lookAhead="true" column="0" minimal="true" />
<DetectSpaces />
<DetectChar attribute="At Rule" context="@mixin" char="=" firstNonSpace="true" />
<DetectChar attribute="At Rule" context="AtRule" char="+" firstNonSpace="true" />
<DetectChar attribute="At Rule" context="SelectAtRule" char="@" lookAhead="true" />
<!-- find selectors // .class #id :hover :nth-child(2n+1) [type="search"] -->
<DetectChar attribute="Selector Attribute" context="SelectorAttr" char="[" />
<DetectChar attribute="Separator Symbol" context="#stay" char="," />
<AnyChar attribute="Operator" context="#stay" String="&amp;*>+~|" />
<RegExpr attribute="Selector Pseudo" context="SelectorPseudo" String=":(?=[a-z:])" />
<RegExpr attribute="Selector Id" context="#stay" String="#[-]?(&nmstart;)(&nmchar;)*" />
<RegExpr attribute="Selector Class" context="#stay" String="\.([a-zA-Z0-9\-_]|[\x80-\xFF]|\\[0-9A-Fa-f]{1,6})*" />
<RegExpr attribute="Placeholder Selector" context="#stay" String="%[_a-zA-Z][_a-zA-Z\-]*" />
<RegExpr attribute="Selector Tag" context="#stay" String="[-]?(&nmstart;)(&nmchar;)*(?=\s|:?[#.&amp;[*>+~|,]|:[a-z:])" />
<RegExpr attribute="Variable" context="VariableDefine" String="\$[a-zA-Z0-9\-_]+(?=\s*:)" />
<Detect2Chars attribute="Interpolation" context="Interpolation" char="#" char1="{" />
<DetectChar attribute="Normal Text" context="Rule" char=":" lookAhead="true" />
</context>
<!-- same as SCSS -->
<context name="FindSelector" attribute="Normal Text" lineEndContext="#stay">
<AnyChar attribute="Error" context="#stay" String=",&amp;" />
<AnyChar attribute="Operator" context="#stay" String="*>+~|" />
<!-- find selectors // .class #id :hover :nth-child(2n+1) [type="search"] -->
<DetectChar attribute="Selector Pseudo" context="SelectorPseudo" char=":" />
<DetectChar attribute="Selector Attribute" context="SelectorAttr" char="[" />
<IncludeRules context="FindComments" />
<RegExpr attribute="Selector Id" context="#stay" String="#[-]?(&nmstart;)(&nmchar;)*" />
<RegExpr attribute="Selector Class" context="#stay" String="\.([a-zA-Z0-9\-_]|[\x80-\xFF]|\\[0-9A-Fa-f]{1,6})*" />
<RegExpr attribute="Placeholder Selector" context="#stay" String="%[_a-zA-Z][_a-zA-Z\-]*" />
<RegExpr attribute="Selector Tag" context="#stay" String="[-]?(&nmstart;)(&nmchar;)*" />
<Detect2Chars attribute="Interpolation" context="Interpolation" char="#" char1="{" />
</context>
<!-- same as SCSS -->
<context name="VariableDefine" attribute="Normal Text" lineEndContext="#pop">
<DetectChar attribute="Normal Text" context="RuleParameters" char=":" />
</context>
<context name="Interpolation" attribute="Normal Text" lineEndContext="#pop">
<DetectSpaces />
<DetectChar attribute="Interpolation" context="#pop" char="}" />
<IncludeRules context="FindStrings" />
<IncludeRules context="FindFunctions" />
<IncludeRules context="FindValues" />
</context>
<!-- find functions // rgba(255,255,255,0.75) -->
<!-- same as SCSS -->
<context name="FindFunctions" attribute="Normal Text" lineEndContext="#stay">
<RegExpr attribute="Function" context="Function" String="[a-z\-]{2,}\(" lookAhead="true" />
</context>
<!-- find values // 10px 12pt 2.5em 1rem 75% #ffcc99 red solid -->
<!-- same as SCSS -->
<context name="FindValues" attribute="Normal Text" lineEndContext="#stay">
<DetectChar attribute="Annotation" context="Annotation" char="!" />
<keyword attribute="Operator" context="#stay" String="operators" />
<keyword attribute="Value Keyword" context="#stay" String="value keywords" />
<keyword attribute="Value Keyword" context="#stay" String="special values" />
<keyword attribute="Value" context="#stay" String="values" />
<keyword attribute="Color" context="#stay" String="colors" />
<RegExpr attribute="Number" context="FindUnits" String="([0-9]+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?" />
<RegExpr attribute="Color" context="#stay" String="#([0-9A-Fa-f]{3,4}){1,2}\b" />
<RegExpr attribute="Variable" context="#stay" String="\$[a-zA-Z0-9\-_]+" />
<RegExpr attribute="Normal Text" context="#stay" String="[-]?(&nmstart;)(&nmchar;)*" />
<AnyChar attribute="Operator" context="#stay" String="*/+%-" />
<Detect2Chars attribute="Interpolation" context="Interpolation" char="#" char1="{" />
</context>
<!-- same as SCSS -->
<context name="Annotation" attribute="Normal Text" lineEndContext="#pop" fallthroughContext="#pop">
<keyword attribute="Annotation" context="#pop" String="annotations" />
</context>
<!-- same as SCSS -->
<context name="FindUnits" attribute="Normal Text" lineEndContext="#pop" fallthroughContext="#pop">
<RegExpr attribute="Unit" context="#pop" String="(%|(em|ex|cap|ch|ic|rem|lh|rlh|vw|vh|vi|vb|vmin|vmax|cqw|cqh|cqi|cqb|cqmin|cqmax|cm|mm|Q|in|pc|pt|px|deg|rad|grad|turn|s|ms|Hz|kHz|fr|dpi|dpcm|dppx|x)\b)" />
</context>
<!-- find strings // "some words" 'some words' -->
<!-- same as SCSS -->
<context name="FindStrings" attribute="Normal Text" lineEndContext="#stay">
<DetectChar attribute="String" context="StringDQ" char="&quot;" />
<DetectChar attribute="String" context="StringSQ" char="'" />
</context>
<!-- find comments // and /* at the beginning of line -->
<context name="FindCommentsColumn0" attribute="Comment" lineEndContext="#stay">
<!-- (\s*)(?=/[*/]) is not selected when the match is empty -->
<RegExpr attribute="Normal Text" context="Comment" String="^(\s+)(?=/[*/])" column="0" />
<RegExpr attribute="Comment" context="Comment" String="^()/[*/]" column="0" />
</context>
<!-- find comments // and /* -->
<context name="FindComments" attribute="Comment" lineEndContext="#stay">
<Detect2Chars attribute="Comment" context="IsInlineComment" char="/" char1="/" />
<Detect2Chars attribute="Comment" context="IsInlineComment2" char="/" char1="*" />
</context>
<context name="Comment" attribute="Comment" lineEndContext="#stay" dynamic="true" fallthroughContext="IsInlineComment">
<RegExpr attribute="Comment" context="IsInlineComment" String="^%1\s|^\s*$" dynamic="true" column="0" />
<DetectSpaces attribute="Normal Text" context="#pop" lookAhead="true" column="0" />
<RegExpr attribute="Comment" context="#pop" String="." lookAhead="true" column="0"/>
</context>
<context name="IsInlineComment" attribute="Comment" lineEndContext="#pop">
<DetectSpaces />
<IncludeRules context="##Comments" />
<DetectIdentifier />
</context>
<context name="IsInlineComment2" attribute="Comment" lineEndContext="#pop">
<DetectSpaces />
<Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" />
<IncludeRules context="##Comments" />
<DetectIdentifier />
</context>
<context name="SelectAtRule" attribute="At Rule" lineEndContext="#pop">
<keyword attribute="At Rule" context="#pop!AtRule" String="at-rules" />
<!-- CSS: inline -->
<!-- SCSS: inline or block -->
<WordDetect attribute="At Rule" context="#pop!AtRule" String="@inline" />
<WordDetect attribute="At Rule" context="#pop!@extend" String="@extend" />
<WordDetect attribute="At Rule" context="#pop!@mixin" String="@mixin" />
<WordDetect attribute="At Rule" context="#pop!@mixin" String="@function" />
<WordDetect attribute="At Rule" context="#pop!@keyframes-@font-face" String="@keyframes" />
<WordDetect attribute="At Rule" context="#pop!@keyframes-@font-face" String="@font-face" />
<WordDetect attribute="At Rule" context="#pop!@viewport" String="@viewport" />
<WordDetect attribute="At Rule" context="#pop!@if" String="@if" />
<WordDetect attribute="At Rule" context="#pop!@else" String="@else" />
<WordDetect attribute="At Rule" context="#pop!@page" String="@page" />
<RegExpr attribute="At Rule" context="#pop!AtRule" String="@[a-zA-Z0-9\-_]+\b" />
</context>
<context name="@if" attribute="Normal Text" lineEndContext="#pop">
<DetectSpaces />
<IncludeRules context="FindComments" />
<IncludeRules context="FindStrings" />
<IncludeRules context="FindFunctions" />
<IncludeRules context="FindValues" />
<AnyChar attribute="Operator" context="#stay" String="=!&lt;&gt;" />
</context>
<context name="@else" attribute="Error" lineEndContext="#pop">
<DetectSpaces attribute="Normal Text" />
<IncludeRules context="FindComments" />
<WordDetect attribute="At Rule" context="#pop!@if" String="if" />
<DetectIdentifier attribute="Error" />
</context>
<context name="@extend" attribute="Normal Text" lineEndContext="#pop">
<DetectSpaces />
<IncludeRules context="FindSelector" />
</context>
<context name="@mixin" attribute="Normal Text" lineEndContext="#pop">
<DetectSpaces />
<IncludeRules context="FindComments" />
<RegExpr attribute="Function" context="MixinParameter" String="[a-zA-Z0-9\-_]+" />
</context>
<context name="MixinParameter" attribute="Error" lineEndContext="#pop#pop">
<DetectSpaces attribute="Normal Text" />
<AnyChar attribute="Normal Text" context="#stay" String="()" />
<DetectChar attribute="Separator Symbol" context="#stay" char="," />
<IncludeRules context="FindComments" />
<RegExpr attribute="Variable" context="#stay" String="\$[a-zA-Z0-9\-_]+" />
<StringDetect attribute="Operator" context="#stay" String="..." />
</context>
<context name="@keyframes-@font-face" attribute="Normal Text" lineEndContext="#pop">
<DetectSpaces />
<IncludeRules context="FindComments" />
</context>
<context name="@viewport" attribute="Normal Text" lineEndContext="#pop">
<DetectSpaces />
<IncludeRules context="FindComments" />
<DetectChar attribute="Selector Pseudo" context="SelectorPseudo" char=":" />
</context>
<context name="@page" attribute="Normal Text" lineEndContext="#pop">
<DetectSpaces />
<IncludeRules context="FindComments" />
<DetectChar attribute="Selector Pseudo" context="SelectorPseudo-@page" char=":" />
</context>
<context name="SelectorPseudo-@page" attribute="Selector Pseudo" lineEndContext="#pop" fallthroughContext="#pop">
<keyword attribute="Selector Pseudo" context="#pop" String="@page pseudo-classes" />
<RegExpr attribute="Selector Pseudo" context="#pop" String="[-a-zA-Z][-a-zA-Z0-9]*" />
</context>
<context name="AtRule" attribute="Normal Text" lineEndContext="#pop">
<DetectSpaces />
<DetectChar attribute="Operator" context="#stay" char="&amp;" />
<IncludeRules context="FindComments" />
<IncludeRules context="FindStrings" />
<IncludeRules context="FindFunctions" />
<keyword attribute="Keyword" context="#stay" String="media operators" />
<RegExpr attribute="Property" context="#stay" String="[A-Za-z_-]+(?=\s*:)" />
<keyword attribute="Value" context="#stay" String="media types" />
<keyword attribute="Value" context="#stay" String="media features" />
<IncludeRules context="FindValues" />
</context>
<!-- same as SCSS -->
<context name="SelectorAttr" attribute="Selector Attribute" lineEndContext="#pop">
<DetectChar attribute="Selector Attribute" context="#pop" char="]" />
<IncludeRules context="FindStrings" />
<DetectChar attribute="Operator" context="SelectorAttrValue" char="=" />
<Detect2Chars attribute="Operator" context="SelectorAttrValue" char="~" char1="=" />
<Detect2Chars attribute="Operator" context="SelectorAttrValue" char="^" char1="=" />
<Detect2Chars attribute="Operator" context="SelectorAttrValue" char="$" char1="=" />
<Detect2Chars attribute="Operator" context="SelectorAttrValue" char="*" char1="=" />
<Detect2Chars attribute="Operator" context="SelectorAttrValue" char="|" char1="=" />
<DetectIdentifier />
</context>
<!-- same as SCSS -->
<context name="SelectorAttrValue" attribute="String" lineEndContext="#pop#pop">
<DetectChar attribute="Selector Attribute" context="#pop#pop" char="]" />
<DetectIdentifier />
</context>
<!-- same as SCSS -->
<context name="SelectorPseudo" attribute="Selector Pseudo" lineEndContext="#pop">
<DetectChar attribute="Selector Pseudo" context="SelectorPseudoElements" char=":" />
<keyword attribute="Selector Pseudo" context="SelectorPseudoValue" String="pseudo-classes" />
<RegExpr attribute="Selector Pseudo" context="SelectorPseudoValue" String="[-a-zA-Z][-a-zA-Z0-9]*" />
</context>
<!-- same as SCSS -->
<context name="SelectorPseudoElements" attribute="Selector Pseudo" lineEndContext="#pop#pop">
<keyword attribute="Selector Pseudo" context="#pop!SelectorPseudoValue" String="pseudo-elements" />
<RegExpr attribute="Selector Pseudo" context="#pop!SelectorPseudoValue" String="[-a-zA-Z][-a-zA-Z0-9]*" />
</context>
<!-- same as SCSS -->
<context name="SelectorPseudoValue" attribute="Selector Pseudo" lineEndContext="#pop#pop" fallthroughContext="#pop#pop">
<DetectChar attribute="Selector Pseudo" context="SelectorPseudoValueClose" char="(" />
</context>
<!-- same as SCSS -->
<context name="SelectorPseudoValueClose" attribute="Selector Pseudo" lineEndContext="#pop#pop#pop">
<DetectChar attribute="Selector Pseudo" context="#pop#pop#pop" char=")" />
<DetectIdentifier />
</context>
<context name="Rule" attribute="Normal Text" lineEndContext="#pop">
<DetectSpaces />
<IncludeRules context="FindComments" />
<DetectChar attribute="Normal Text" context="RuleParameters" char=":" />
<Detect2Chars attribute="Variable" context="IsVariable" char="-" char1="-" />
<keyword attribute="Property" context="#stay" String="properties" />
<keyword attribute="Property" context="#stay" String="sub-properties" />
<RegExpr attribute="Unknown Property" context="#stay" String="[^:]+" />
</context>
<context name="IsVariable" attribute="Normal Text" lineEndContext="#pop">
<DetectChar attribute="Normal Text" context="#pop!RuleParameters" char=":" />
<RegExpr attribute="Variable" context="#stay" String="[^:/]+" />
<IncludeRules context="FindComments" />
</context>
<context name="RuleParameters" attribute="Normal Text" lineEndContext="#pop#pop">
<DetectSpaces />
<!-- Jump out conditions -->
<DetectChar attribute="Separator Symbol" context="#stay" char="," />
<IncludeRules context="FindComments" />
<IncludeRules context="FindStrings" />
<IncludeRules context="FindFunctions" />
<IncludeRules context="FindValues" />
</context>
<!-- same as SCSS -->
<context name="Function" attribute="Normal Text" lineEndContext="#pop">
<DetectChar attribute="Function" context="FunctionParameters" char="(" />
<StringDetect attribute="Function" context="FunctionVar" String="var(" />
<StringDetect attribute="Function" context="FunctionUrl" String="url(" />
<StringDetect attribute="Function" context="FunctionCalc" String="calc(" />
<keyword attribute="Function" context="#stay" String="functions" />
<RegExpr attribute="Function" context="#stay" String="[-a-zA-Z][-a-zA-Z0-9]*" />
</context>
<!-- same as SCSS -->
<context name="FunctionVar" attribute="Variable" lineEndContext="#pop#pop" fallthroughContext="#pop!FunctionParameters">
<DetectSpaces />
<IncludeRules context="FindComments" />
<RegExpr attribute="Variable" context="#pop!FunctionParameters" String="--[^ \t\),]+" />
</context>
<!-- same as SCSS -->
<context name="FunctionCalc" attribute="Normal Text" lineEndContext="#pop#pop">
<DetectSpaces />
<DetectChar attribute="Function" context="#pop#pop" char=")" />
<IncludeRules context="Calc" />
</context>
<!-- same as SCSS -->
<context name="NestedCalc" attribute="Normal Text" lineEndContext="#pop#pop">
<DetectSpaces />
<DetectChar attribute="Normal Text" context="#pop" char=")" />
<IncludeRules context="Calc" />
</context>
<!-- same as SCSS -->
<context name="Calc" attribute="Normal Text" lineEndContext="#pop">
<DetectChar attribute="Separator Symbol" context="#stay" char="," />
<DetectChar attribute="Normal Text" context="NestedCalc" char="(" />
<IncludeRules context="FindComments" />
<IncludeRules context="FindStrings" />
<IncludeRules context="FindFunctions" />
<IncludeRules context="FindValues" />
<RegExpr attribute="Operator" context="#stay" String="[-](?=$|[ \t(,;])|[+](?=$|[^0-9)])|[/*]" />
</context>
<!-- same as SCSS -->
<context name="FunctionUrl" attribute="Normal Text" lineEndContext="#pop" fallthroughContext="UrlValue">
<DetectSpaces />
<IncludeRules context="FindStrings" />
<DetectChar attribute="Function" context="#pop#pop" char=")" />
</context>
<!-- same as SCSS -->
<context name="UrlValue" attribute="String" lineEndContext="#pop#pop#pop">
<DetectChar attribute="Function" context="#pop#pop#pop" char=")" />
</context>
<!-- same as SCSS -->
<context name="FunctionParameters" attribute="Normal Text" lineEndContext="#pop#pop">
<DetectSpaces />
<DetectChar attribute="Function" context="#pop#pop" char=")" />
<IncludeRules context="FindComments" />
<IncludeRules context="FindStrings" />
<IncludeRules context="FindFunctions" />
<IncludeRules context="FindValues" />
<DetectChar attribute="Separator Symbol" context="#stay" char="," />
<StringDetect attribute="Operator" String="..." />
</context>
<!-- string contexts -->
<!-- same as SCSS -->
<context name="StringDQ" attribute="String" lineEndContext="#pop">
<DetectChar attribute="String" context="#pop" char="&quot;" />
<IncludeRules context="InsideString" />
</context>
<!-- same as SCSS -->
<context name="StringSQ" attribute="String" lineEndContext="#pop">
<DetectChar attribute="String" context="#pop" char="'" />
<IncludeRules context="InsideString" />
</context>
<!-- same as SCSS -->
<context name="InsideString" attribute="String" lineEndContext="#stay">
<Detect2Chars attribute="Interpolation" context="Interpolation" char="#" char1="{" />
<RegExpr attribute="SpecialChar" context="#stay" String="\\([0-9A-Fa-f]{1,6}|.?)" />
<RegExpr attribute="String" context="#stay" String="\\?[^#&quot;'\\]+" />
</context>
</contexts>
<itemDatas>
<itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/>
<itemData name="At Rule" defStyleNum="dsImport" spellChecking="false"/>
<itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="false"/>
<itemData name="Property" defStyleNum="dsKeyword" spellChecking="false"/>
<itemData name="Unknown Property" defStyleNum="dsNormal" spellChecking="false"/>
<itemData name="String" defStyleNum="dsString"/>
<itemData name="SpecialChar" defStyleNum="dsSpecialChar" spellChecking="false"/>
<itemData name="Interpolation" defStyleNum="dsOperator" spellChecking="false"/>
<itemData name="Operator" defStyleNum="dsOperator" spellChecking="false"/>
<itemData name="Separator Symbol" defStyleNum="dsOperator" spellChecking="false"/>
<itemData name="Value" defStyleNum="dsDecVal" spellChecking="false"/>
<itemData name="Number" defStyleNum="dsDecVal" spellChecking="false"/>
<itemData name="Value Keyword" defStyleNum="dsBuiltIn" spellChecking="false"/>
<itemData name="Color" defStyleNum="dsConstant" spellChecking="false"/>
<itemData name="Unit" defStyleNum="dsDataType" spellChecking="false"/>
<itemData name="Variable" defStyleNum="dsVariable" spellChecking="false"/>
<itemData name="Function" defStyleNum="dsFunction" spellChecking="false"/>
<itemData name="Annotation" defStyleNum="dsAttribute" spellChecking="false"/>
<itemData name="Selector Id" defStyleNum="dsPreprocessor" bold="1" spellChecking="false"/>
<itemData name="Selector Class" defStyleNum="dsFunction" spellChecking="false"/>
<itemData name="Selector Attribute" defStyleNum="dsExtension" spellChecking="false"/>
<itemData name="Selector Pseudo" defStyleNum="dsInformation" italic="1" spellChecking="false"/>
<itemData name="Selector Tag" defStyleNum="dsNormal" spellChecking="false"/>
<itemData name="Placeholder Selector" defStyleNum="dsBuiltIn" spellChecking="false"/>
<itemData name="Comment" defStyleNum="dsComment" />
<itemData name="Error" defStyleNum="dsError" spellChecking="false"/>
</itemDatas>
</highlighting>
<general>
<keywords casesensitive="0" weakDeliminator="-%@" />
<folding indentationsensitive="1" />
<comments>
<comment name="singleLine" start="//" position="afterwhitespace"/>
</comments>
</general>
</language>
<!-- kate: replace-tabs on; tab-width 4; indent-width 4; -->