cortav  Diff

Differences From Artifact [8189edad17]:

To Artifact [b82e1b14f3]:


     8      8   -->
     9      9   <language name='Cortav' version='1' kateversion='2.4' section='Markup' extensions='*.ct'>
    10     10   	<highlighting>
    11     11   		<list name='extension-directives'>
    12     12   			<item>uses</item>
    13     13   			<item>needs</item>
    14     14   			<item>inhibits</item>
           15  +		</list>
           16  +		<list name='meta-directives'>
           17  +			<item>author</item>
           18  +			<item>lang</item>
           19  +			<item>pragma</item>
           20  +		</list>
           21  +		<list name='ctl-directives'>
           22  +			<item>when</item>
           23  +			<item>unless</item>
           24  +			<item>cols</item>
           25  +			<item>quote</item>
           26  +			<item>include</item>
           27  +			<item>embed</item>
    15     28   		</list>
    16     29   		<list name='renderer-directives'>
    17     30   			<item>html</item>
    18     31   			<item>groff</item>
    19     32   			<item>ps</item>
    20     33   			<item>tex</item>
    21     34   			<item>plaintext</item>
................................................................................
    24     37   		</list>
    25     38   		<contexts>
    26     39   			<context name='init' attribute='Normal Text' lineEndContext='#pop' fallthroughContext='text'>
    27     40   				<RegExpr String='\\.' attribute='Escaped Char'/>
    28     41   				<RegExpr attribute='Section Cue' context='sec-ident' String='(#|ยง)+' firstNonSpace='true' />
    29     42   				<StringDetect String='~~~' attribute='Literal Block Cue' firstNonSpace='true' context='literal-block-cue'/>
    30     43   				<RegExpr attribute='List' String='[\*:]+' firstNonSpace='true' context='text' />
           44  +				<Detect2Chars char='%' char1='%' attribute='Comment' context='comment'/>
    31     45   				<Detect2Chars char='%' char1='!' attribute='Critical Directive Cue' context='directive'/>
    32     46   				<DetectChar char='%' attribute='Directive Cue' context='directive'/>
           47  +				<DetectChar char='@' attribute='Resource Cue' context='resource'/>
    33     48   				<DetectChar char='&#9;' attribute='Normal Text' context='refdef-id'/>
    34     49   			</context>
           50  +
           51  +			<context name='comment' attribute='Comment' lineEndContext='#pop'>
           52  +			</context>
           53  +			<context name='error' attribute='Error' lineEndContext='#pop'>
           54  +			</context>
           55  +
           56  +			<context name='resource' attribute='Resource Identifier' lineEndContext='#pop'>
           57  +				<DetectSpaces context='#pop!error' attribute='Error'/>
           58  +			</context>
    35     59   
    36     60   			<context name='sec-ident' attribute='Identifier' lineEndContext='#pop'>
    37     61   				<DetectSpaces context='#pop!sec' attribute='Normal Text'/>
    38     62   			</context>
    39     63   
    40     64   			<context name='sec' attribute='Header' lineEndContext='#pop'>
    41     65   				<IncludeRules context='text'/>
................................................................................
    83    107   				<IncludeRules context='span'/>
    84    108   			</context>
    85    109   
    86    110   			<context name='span-del' attribute='Deleted Text' lineEndContext='#pop'>
    87    111   				<IncludeRules context='span'/>
    88    112   			</context>
    89    113   
    90         -			<context name='span-cue' attribute='Span Cue' lineEndContext='#pop'>
    91         -				<StringDetect attribute='Span Cue' String='$\' context='#pop!flat-span' />
          114  +			<context name='span-cue' attribute='Span Cue' lineEndContext='#pop' fallthroughContext="error">
          115  +				<StringDetect attribute='Span Cue' String='`\' context='#pop!flat-span' />
    92    116   
    93    117   				<DetectChar   attribute='Span Cue' char='!' context='#pop!span-emph' />
    94    118   				<DetectChar   attribute='Span Cue' char='*' context='#pop!span-strong' />
    95    119   				<DetectChar   attribute='Span Cue' char='~' context='#pop!span-del' />
    96    120   
    97         -				<AnyChar      attribute='Span Cue' String='$+๐Ÿ”’' context='#pop!span' />
          121  +				<AnyChar      attribute='Span Cue' String='`$+๐Ÿ”’' context='#pop!span' />
    98    122   				<StringDetect attribute='Span Cue' String='โ†’' context='#pop!ref' />
    99    123   				<StringDetect attribute='Span Cue' String='๐Ÿ”—' context='#pop!ref' />
   100    124   				<DetectChar   attribute='Span Cue' char='>' context='#pop!ref' />
          125  +				<DetectChar   attribute='Span Cue' char='^' context='#pop!ref' />
   101    126   				<DetectChar   attribute='Span Cue' char='&amp;' context='#pop!ref' />
   102    127   				<DetectChar   attribute='Span Cue' char='#' context='#pop!var-ref' />
   103    128   				<DetectChar   attribute='Span Cue' char='\' context='#pop!flat-span' />
          129  +				<Detect2Chars attribute='Comment' char='%' char1='%' context='#pop!inline-comment' />
          130  +				<Detect2Chars attribute='Critical Directive Cue' char='%' char1='!' context='#pop!inline-directive' />
          131  +				<DetectChar   attribute='Directive Cue' char='%' context='#pop!inline-directive' />
   104    132   			</context>
   105    133   
   106    134   			<context name='flat-span' attribute='Unstyled Text' lineEndContext='#pop'>
   107    135   				<Detect2Chars attribute='Escaped Char' context='#stay' char='\' char1=']'/>
   108    136   				<DetectChar attribute='Span Delimiter' context='#pop' char=']'/>
   109    137   			</context>
          138  +
          139  +			<context name='inline-comment' attribute='Comment' lineEndContext='#pop'>
          140  +				<IncludeRules context='flat-span'/>
          141  +			</context>
          142  +
          143  +			<context name='inline-directive' attribute='Directive' lineEndContext='#pop'>
          144  +				<IncludeRules context='flat-span'/>
          145  +				<AnyChar String=".:!#$%@~'&quot;" attribute='Directive Cue'/>
          146  +				<DetectSpaces context='#pop!span'/>
          147  +			</context>
   110    148   
   111    149   			<context name='ref' attribute='Reference' lineEndContext='#pop'>
          150  +				<IncludeRules context='flat-span'/>
   112    151   				<DetectSpaces context='#pop!span'/>
   113    152   			</context>
   114    153   
   115    154   			<context name='var-ref' attribute='Reference' lineEndContext='#pop'>
   116    155   				<WordDetect String="cortav" attribute='Standard Namespace'/>
   117    156   				<WordDetect String="env" attribute='Standard Namespace'/>
   118    157   				<DetectChar attribute='Span Delimiter' context='#pop' char=']'/>
................................................................................
   129    168   			</context>
   130    169   		</contexts>
   131    170   		<itemDatas>
   132    171   			<itemData name='Normal Text' defStyleNum='dsNormal'/>
   133    172   			<itemData name='Styled Text' defStyleNum='dsNormal'/>
   134    173   			<itemData name='Emphatic Text' defStyleNum='dsNormal' italic='true'/>
   135    174   			<itemData name='Strong Text' defStyleNum='dsNormal' bold='true'/>
   136         -			<itemData name='Deleted Text' defStyleNum='dsNormal' strikeout='true'/>
          175  +			<itemData name='Deleted Text' defStyleNum='dsNormal' strikeOut='true'/>
   137    176   				
   138    177   			<itemData name='Section Cue' defStyleNum='dsKeyword' bold='true'/>
   139    178   			<itemData name='Header' defStyleNum='dsControlFlow' underline='true'/>
   140    179   			<itemData name='Identifier' defStyleNum='dsVariable'/>
   141    180   
   142    181   			<itemData name='Unstyled Text' defStyleNum='dsVerbatimString'/>
   143    182   			<itemData name='Escaped Char' defStyleNum='dsSpecialChar'/>
   144    183   			<itemData name='Reference' defStyleNum='dsControlFlow' underline='true'/>
   145    184   			<itemData name='Span Cue' defStyleNum='dsKeyword' bold='true'/>
          185  +			<itemData name='Resource Cue' defStyleNum='dsKeyword' bold='true'/>
          186  +			<itemData name='Resource Identifier' defStyleNum='dsVariable' bold='true'/>
   146    187   			<itemData name='Span Delimiter' defStyleNum='dsKeyword'/>
   147    188   			<itemData name='Directive' defStyleNum='dsAttribute' bold='true'/>
   148    189   			<itemData name='Directive Cue' defStyleNum='dsAttribute'/>
   149    190   			<itemData name='Critical Directive Cue' defStyleNum='dsImport' bold='true'/>
   150    191   			<itemData name='Extension Directive' defStyleNum='dsImport' bold='true'/>
   151    192   			<itemData name='Renderer Directive' defStyleNum='dsExtension' bold='true'/>
   152    193   			<itemData name='Standard Namespace' defStyleNum='dsBuiltIn' bold='true'/>
   153    194   			<itemData name='Comment' defStyleNum='dsComment'/>
          195  +			<itemData name='Error' defStyleNum='dsError'/>
   154    196   			<itemData name='Macro' defStyleNum='dsPreprocessor' bold='true'/>
   155    197   			<itemData name='Macro Delimiter' defStyleNum='dsPreprocessor'/>
   156    198   			<itemData name='Field Delimiter' defStyleNum='dsPreprocessor' bold='true'/>
   157    199   			<itemData name='List' defStyleNum='dsOperator'/>
   158    200   
   159    201   			<itemData name='Literal Block' defStyleNum='dsSpecialString'/>
   160    202   			<itemData name='Literal Block Cue' defStyleNum='dsPreprocessor' bold='true'/>