[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kwrite-devel
Subject:    Highlighting
From:       Matthew Tatterton <matthew.tatterton () millerbros ! co ! uk>
Date:       2007-07-19 12:16:58
Message-ID: 469F563A.7070202 () millerbros ! co ! uk
[Download RAW message or body]

Hi,
I'm using a b@stardised version of Basic on a legacy system that will 
allow strings to be contained within quotes and apostrophes. I've have a 
version of a highlighting syntax xml file to suit my needs but can't 
figure out how I might tell it to recognise strings done with both 
quotes AND apostrophes.
It's not a major issue for me, it's just more of a niggle that i'd like 
to remedy if at all possible.
Is it something I can do by tweaking the file or is it just something I 
am going to live with?

Is there a gui to be able to edit the highlighting configutration files 
( I know you can change colours from within kate's 'Settings' menu, but 
wondered if there was any other way that you can add to the list of 
commands/keywords/etc.

I've attached the syntax file if it helps at all.

I apologise if I am asking stupid questions.

Thanks for your help.

Regards
Matt


Matthew Tatterton
Developer
I.T. Department
Tel: 08702 646 330
Fax: 08701 223 649
Miller Brothers Retail Ltd.
Doncaster


#####################################################################################
This e-mail message has been scanned for Viruses and Content and cleared 
by MailMarshal
#####################################################################################

--------------------------------------------------------------------------------

Note:
This message is for the named person's use only.  
It may contain confidential, proprietary or legally privileged
information.  No confidentiality or privilege is waived or lost 
by any mistransmission.  If you receive this message in error, 
please immediately delete it and all copies of it from your system, 
destroy any hard copies of it and notify the sender.  You must 
not, directly or indirectly, use, disclose, distribute, print, 
or copy any part of this message if you are not the intended 
recipient. Miller Brothers Retail and any of its subsidiaries each 
reserve the right to monitor all e-mail communications through its 
networks.  

Any views expressed in this message are those of the individual sender, 
except where the message states otherwise and the sender is authorized 
to state them to be the views of any such entity.

Thank You. 

--------------------------------------------------------------------------------
Miller Brothers, Registered No. 5807626. 
Registered Office: Miller House, Shaw Lane, Doncaster DN2 4SQ. 

--------------------------------------------------------------------------------

["millerbasic.xml" (text/xml)]

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<language name="MillerBasic" version="3.91" kateversion="2.3" section="Sources" \
extensions="*.pb" mimetype="text/x-purebasic" author="Matthew Tatterton \
(matthew.tatterton@millerbros.co.uk)" license="LGPL">  <highlighting>
    <list name="keywords">
      <item> ABS </item>
      <item> ACS </item>
      <item> AS </item>
      <item> ASC </item>
      <item> ASN </item>
      <item> ATN </item>
      <item> AUTO </item>
      <item> BGET </item>
      <item> BPUT </item>
      <item> CALL </item>
      <item> CHAIN </item>
      <item> CLEAR </item>
      <item> CLOSE </item>
      <item> COS </item>
      <item> COUNT </item>
      <item> DATA </item>
      <item> DEF </item>
      <item> DEG </item>
      <item> DELETE </item>
      <item> DIM </item>
      <item> DIV </item>
      <item> ELSE </item>
      <item> END </item>
      <item> ENDPROC </item>
      <item> ENVELOPE </item>
      <item> EOF </item>
      <item> EOR </item>
      <item> ERL </item>
      <item> ERR </item>
      <item> ERROR </item>
      <item> EVAL </item>
      <item> EXP </item>
      <item> EXT </item>
      <item> FIELD </item>
      <item> FNEND </item>
      <item> FOR </item>
      <item> GCOL </item>
      <item> GET </item>
      <item> GET </item>
      <item> GOSUB </item>
      <item> GOTO </item>
      <item> HIMEM </item>
      <item> IF </item>
      <item> INPUTLINE </item>
      <item> INPUT </item>
      <item> INT </item>
      <item> LET </item>
      <item> LIST </item>
      <item> LISTO </item>
      <item> LN </item>
      <item> LOAD </item>
      <item> LOCAL </item>
      <item> LOG </item>
      <item> LOMEM </item>
      <item> LSET </item>
      <item> MODE </item>
      <item> MOVE </item>
      <item> NEW </item>
      <item> NEXT </item>
      <item> OFF </item>
      <item> OLD </item>
      <item> ON </item>
      <item> ERROR </item>
      <item> OPENIN </item>
      <item> OPENOUT </item>
      <item> OPT </item>
      <item> PAGE </item>
      <item> PI </item>
      <item> PLOT </item>
      <item> POINT </item>
      <item> POS </item>
      <item> Print </item>
      <item> PRINT </item>
      <item> PROC </item>
      <item> PTR </item>
      <item> PUT </item>
      <item> RAD </item>
      <item> READ </item>
      <item> RENUMBER </item>
      <item> REPEAT </item>
      <item> REPORT </item>
      <item> RESTORE </item>
      <item> RETURN </item>
      <item> RND </item>
      <item> RUN </item>
      <item> SAVE </item>
      <item> SGN </item>
      <item> SIN </item>
      <item> SOUND </item>
      <item> SPC </item>
      <item> SQR </item>
      <item> STEP </item>
      <item> STOP </item>
      <item> STR </item>
      <item> STR </item>
      <item> STRING </item>
      <item> TAB </item>
      <item> TAN </item>
      <item> THEN </item>
      <item> TIME </item>
      <item> TO </item>
      <item> TOP </item>
      <item> TRACE </item>
      <item> TRUE </item>
      <item> UNLESS </item>
      <item> UNLOCK </item>
      <item> UNTIL </item>
      <item> USR </item>
      <item> RESUME </item>
      <item> OPEN </item>
      <item> RECORD </item>
      <item> FILE </item>
      <item> VDU </item>
      <item> VPOS </item>
      <item> WHILE </item>
      <item> WIDTH </item>
  </list>
    <list name="functions">
      <item> Abs </item>
      <item> ACos </item>
      <item> Asc </item>
      <item> ASin </item>
      <item> ATan </item>
      <item> Cos </item>
      <item> Date </item>
      <item> Int </item>
      <item> Left </item>
      <item> Len </item>
      <item> Loc </item>
      <item> Lof </item>
      <item> Log10 </item>
      <item> Log </item>
      <item> Right </item>
      <item> Round </item>
      <item> Sqr </item>
      <item> Tan </item>
      <item> Val </item>
      <item> fnC </item>
      <item> fnReadKb </item>
      <item> fnReadKb.D </item>
      <item> LEFT </item>
      <item> LEN </item>
      <item> fnE </item>
      <item> fnCvdac </item>
      <item> RIGHT </item>
      <item> fnToday </item>
      <item> fncvdas </item>
      <item> fnCVDLR </item>
      <item> MID </item>
      <item> INSTR </item>
      <item> VAL </item>
      <item> fnCVDLA </item>
      <item> fnGetLogin </item>
      <item> fnGetPID </item>
      <item> fnCVDAL </item>
      <item> fnXml2Read </item>
      <item> fnXmlGetValue </item>
      <item> fnIsNumber </item>
      <item> fnZLFill </item>
      <item> fnSLFill </item>
      <item> fnZRFill </item>
      <item> fnSRFill </item>
      <item> fnNiceDate </item>
      <item> fnDB </item>
      <item> fnA </item>
      <item> fnGetNoLock </item>
      <item> fnTODAY </item>
      <item> fnXMLGetAll </item>
      <item> fnXmlMakeTag </item>
      <item> fnXmlMakeNode </item>
      <item> fnXmlAddChild </item>
      <item> fnXmlMakeNodeValue </item>
      <item> fnXmlNodeValue </item>
      <item> fnXmlClearAll </item>
      <item> fnXmlSetAttrib </item>
      <item> fnXmlGetNodeCount </item>
      <item> fnXmlGetNode </item>
      <item> fnXmlGetNodeIdx </item>
      <item> fnXmlDumpPipe </item>
      <item> fnXmlDumpFile </item>
      <item> fnXmlWritePipe </item>
      <item> fnXmlGetNodeValue </item>
      <item> fnXmlSetValue </item>
      <item> fnXmlRemoveChild </item>
      <item> fnXmlClearNode </item>
      <item> fnQuery </item>
      <item> fnSQL.Cell </item>
      <item> fnSQL.Commit </item>
      <item> fnSQL.Rollback </item>
      <item> fnSQL.Execute </item>
      <item> fnOraStr </item>
      <item> fnOraDate </item>
      <item> chr </item>
      <item> num </item>
      <item> num1 </item>
      <item> sys </item>
      <item> CVT </item>
      <item> CVTf </item>
      <item> fnAddOpt </item>
      <item> fnGetOpt </item>
      <item> fnGetOptScrl </item>
      <item> fnSetScroll </item>
      <item> fnGetOptScrlNoBox </item>
      <item> fnDrawBox </item>
      <item> SPACE </item>
      <item> fnPAK </item>
      <item> fnOpen.Client.nv </item>
      <item> fnOpen.Client </item>
      <item> fnClose.Client </item>
      <item> fnSendMail </item>
      <item> fnPAF.Screen </item>
      <item> fnPAF.Getfields </item>
      <item> fnPAF.Skipnames </item>
      <item> fnPAF.Line </item>
      <item> fnPAF </item>
    </list>

    <contexts>
      <context attribute="Normal Text" lineEndContext="#stay" name="Normal">

        <RegExpr attribute="Keyword" context="#stay" String="\b(if)([\s]|$)" \
                insensitive="true" beginRegion="IfRegion"/>
        <RegExpr attribute="Keyword" context="#stay" String="\b(endif)([\s]|$)" \
insensitive="true" endRegion="IfRegion"/>

        <RegExpr attribute="Keyword" context="#stay" String="\b(while)([\s]|$)" \
                insensitive="true" beginRegion="WhileRegion"/>
        <RegExpr attribute="Keyword" context="#stay" String="\b(wend)([\s]|$)" \
insensitive="true" endRegion="WhileRegion"/>

        <RegExpr attribute="Keyword" context="#stay" String="\b(repeat)([\s]|$)" \
                insensitive="true" beginRegion="RepeatRegion"/>
        <RegExpr attribute="Keyword" context="#stay" String="\b(until)([\s]|$)" \
insensitive="true" endRegion="RepeatRegion"/>

        <RegExpr attribute="Keyword" context="#stay" String="\b(select)([\s]|$)" \
                insensitive="true" beginRegion="SelectRegion"/>
        <RegExpr attribute="Keyword" context="#stay" String="\b(endselect)([\s]|$)" \
insensitive="true" endRegion="SelectRegion"/>

        <RegExpr attribute="Keyword" context="#stay" String="\b(for|foreach)([\s]|$)" \
                insensitive="true" beginRegion="ForRegion"/>
        <RegExpr attribute="Keyword" context="#stay" String="\b(next)([\s]|$)" \
insensitive="true" endRegion="ForRegion"/>

        <RegExpr attribute="Keyword" context="#stay" \
String="\b(procedure|proceduredll)([.\s]|$)" insensitive="true" \
                beginRegion="ProcedureRegion"/>
        <RegExpr attribute="Keyword" context="#stay" \
String="\b(endprocedure)([\s]|$)" insensitive="true" endRegion="ProcedureRegion"/>

        <RegExpr attribute="Keyword" context="#stay" String="\b(structure)([\s]|$)" \
                insensitive="true" beginRegion="StructureRegion"/>
        <RegExpr attribute="Keyword" context="#stay" \
String="\b(endstructure)([\s]|$)" insensitive="true" endRegion="StructureRegion"/>

        <RegExpr attribute="Keyword" context="#stay" String="\b(interface)([\s]|$)" \
                insensitive="true" beginRegion="InterfaceRegion"/>
        <RegExpr attribute="Keyword" context="#stay" \
String="\b(endinterface)([\s]|$)" insensitive="true" endRegion="InterfaceRegion"/>

        <RegExpr attribute="Keyword" context="#stay" String="\b(enumeration)([\s]|$)" \
                insensitive="true" beginRegion="EnumerationRegion"/>
        <RegExpr attribute="Keyword" context="#stay" \
String="\b(endenumeration)([\s]|$)" insensitive="true" \
endRegion="EnumerationRegion"/>

        <RegExpr attribute="Keyword" context="#stay" String="\b(datasection)([\s]|$)" \
                insensitive="true" beginRegion="DataSectionRegion"/>
        <RegExpr attribute="Keyword" context="#stay" \
String="\b(enddatasection)([\s]|$)" insensitive="true" \
endRegion="DataSectionRegion"/>

        <RegExpr attribute="Keyword" context="#stay" String="\b(compilerif)([\s]|$)" \
                insensitive="true" beginRegion="CompilerIfRegion"/>
        <RegExpr attribute="Keyword" context="#stay" \
String="\b(compilerendif)([\s]|$)" insensitive="true" endRegion="CompilerIfRegion"/>

        <RegExpr attribute="Keyword" context="#stay" \
String="\b(compilerselect)([\s]|$)" insensitive="true" \
                beginRegion="CompilerSelectRegion"/>
        <RegExpr attribute="Keyword" context="#stay" \
String="\b(compilerendselect)([\s]|$)" insensitive="true" \
endRegion="CompilerEndSelectRegion"/>

        <keyword attribute="Keyword" context="#stay" String="keywords"/>
        <keyword attribute="Functions" context="#stay" String="functions"/>
        <RegExpr attribute="Constant" context="#stay" \
String="\#+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*"/>  <Float attribute="Number" \
context="#stay"/>  <Int attribute="Number" context="#stay"/>
        <DetectChar attribute="String" context="String" char="&quot;" />
        <RegExpr attribute="Region Marker" context="#stay" String="^\s*;+\s*BEGIN.*$" \
                beginRegion="marker"/>
        <RegExpr attribute="Region Marker" context="#stay" String="^\s*;+\s*END.*$" \
endRegion="marker"/>  <DetectChar attribute="Comment" context="Comment1" char="!"/>
      </context>
      <context attribute="String" lineEndContext="#pop" name="String">
        <DetectChar attribute="String" context="#pop" char="&quot;"/>
      </context>
      <context attribute="Comment" lineEndContext="#pop" name="Comment1">
        <keyword attribute="Number" context="#stay" String="attention" />
      </context>
    </contexts>
    <itemDatas>
      <itemData name="Normal Text" defStyleNum="dsNormal"/>
      <itemData name="Keyword" defStyleNum="dsKeyword"/>
      <itemData name="Functions" defStyleNum="dsFunction"/>
      <itemData name="Constant" defStyleNum="dsDataType"/>
      <itemData name="Number" defStyleNum="dsDecVal"/>
      <itemData name="String" defStyleNum="dsString"/>
      <itemData name="Comment" defStyleNum="dsComment"/>
      <itemData name="Region Marker " defStyleNum="dsRegionMarker"/>
    </itemDatas>
  </highlighting>
  <general>
    <keywords casesensitive="0" />
    <comments>
      <comment name="singleLine" start=";" />
    </comments>
  </general>
</language>
<!-- // kate: space-indent on; indent-width 2; replace-tabs on; -->



_______________________________________________
KWrite-Devel mailing list
KWrite-Devel@kde.org
https://mail.kde.org/mailman/listinfo/kwrite-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic