| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Sumo 30.08.2006 16:07 / 30.08.2006 16:09
... использую следующий файлик:<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd"
[
<!ENTITY name "[A-Za-z_:][\w.:_-]*">
<!ENTITY entref "&(#[0-9]+|#[xX][0-9A-Fa-f]+|&name;);">
<!ENTITY parsername "[\w\-\_\.]+">
]>
<language name="Parser 3" version="1.0"
kateversion="2.4" section="Scripts"
extensions="*.p;*.html" mimetype=""
author="Oleg Volchkov (oleg@proc.ru)" license="LGPL" priority="1"
casesensitive="1"
>
<highlighting>
<list name="reservedWords">
<item>^if </item>
<item>^switch</item>
<item>^case</item>
<item>^for</item>
<item>^while</item>
<item>^taint</item>
<item>^untaint</item>
<item>^try</item>
<item>^throw</item>
<item>^eval</item>
<item>^process</item>
<item>^cache</item>
<item>^use</item>
<item>^connect</item>
<item>^break</item>
<item>^continue</item>
</list>
<contexts>
<context name="Start" attribute="Normal Text" lineEndContext="#stay">
<IncludeRules context="FindParser3" />
<IncludeRules context="##SQL" />
<IncludeRules context="##HTML" />
</context>
<context name="FindParser3" attribute="Normal Text" lineEndContext="#stay" >
<RegExpr attribute="Comments" String="^#.*$" context="#stay"/>
<StringDetect attribute="Comments" String="^rem{" context="rem"/>
<keyword attribute="Reserved" String="reservedWords" context="#stay" />
<RegExpr attribute="Functions" String="^@&parsername;(\[[\w\-\_\;]*\])?" context="local"/>
<DetectChar attribute="Call" char="^" context="calls"/>
<RegExpr attribute="Var" String="\$" context="vars" />
<AnyChar attribute="Brackets" String="(){}[]" context="#stay"/>
<Float attribute="Float" context="#stay"/>
<HlCHex attribute="Hex" context="#stay"/>
<Int attribute="Decimal" context="#stay"/>
</context>
<context name="local" attribute="Local Vars" lineEndContext="#pop">
<RegExpr attribute="Local Vars" String="\[[\w\-\_\;]+\]" context="#pop"/>
</context>
<context name="calls" attribute="Call" lineEndContext="#pop">
<RegExpr attribute="Constructor Call" String="&parsername;::&parsername;" context="#pop"/>
<RegExpr attribute="Static Call" String="&parsername;:&parsername;" context="#pop"/>
<RegExpr attribute="Call" String="&parsername;" context="#pop"/>
<AnyChar attribute="Call" String=";" context="#pop" />
<RegExpr attribute="Call" String="#[0-9a-fA-F]{2}" context="#pop" />
</context>
<context name="vars" attribute="Var" lineEndContext="#pop">
<RegExpr attribute="Static Var" String="&parsername;:&parsername;" context="#pop"/>
<RegExpr attribute="Var" String="&parsername;" context="#pop"/>
</context>
<context name="rem" attribute="Comments" lineEndContext="#stay">
<DetectChar attribute="Comments" char="}" context="#pop"/>
</context>
</contexts>
<itemDatas>
<itemData name="Normal Text" defStyleNum="dsNormal" />
<itemData name="Reserved" defStyleNum="dsKeyword" />
<itemData name="Functions" defStyleNum="dsFunction" />
<itemData name="Local Vars" defStyleNum="dsString" />
<itemData name="Call" defStyleNum="dsFunction" />
<itemData name="Static Call" defStyleNum="dsFunction" />
<itemData name="Constructor Call" defStyleNum="dsFunction" />
<itemData name="Var" defStyleNum="dsChar" />
<itemData name="Static Var" defStyleNum="dsChar" />
<itemData name="Brackets" defStyleNum="dsRegionMarker" />
<itemData name="Comments" defStyleNum="dsComment" />
<itemData name="Decimal" defStyleNum="dsDecVal"/>
<itemData name="Hex" defStyleNum="dsBaseN"/>
<itemData name="Float" defStyleNum="dsFloat"/>
</itemDatas>
</highlighting>
<general>
<keywords weakDeliminator="^" casesensitive="true" />
<comments>
<comment name="singleLine" start="#" />
</comments>
</general>
</language>Положить в /home/username/.kde/share/apps/katepart/syntax/parser.xml