Resaltado de sintaxis propio

cgsanz
2011-08-30
2012-11-13
  • cgsanz
    cgsanz
    2011-08-30

    Hola,

    Estaba intentando crear un resaltado de sintaxis para los archivos .grm del GOLD PARSER, ya que el editor de este es un poco malo.

    El problema que me he encontrado es que no puedo poner más de 2 Delimiters desde el editor del notepad++ y si lo hago a mano directamente sobre el .xml el notepad++ da un fallo de memoria y se cierra, no dejándome abrir nada más hasta reinstalar el notepad++.

    <NotepadPlus>
        <UserLang name="Gold" ext="grm">
            <Settings>
                <Global caseIgnored="no" />
                <TreatAsSymbol comment="no" commentLine="yes" />
                <Prefix words1="no" words2="no" words3="no" words4="no" />
            </Settings>
            <KeywordLists>
                <Keywords name="Delimiters">&apos;&lt;0&apos;&gt;0</Keywords>
                <Keywords name="Folder+"></Keywords>
                <Keywords name="Folder-"></Keywords>
                <Keywords name="Operators"></Keywords>
                <Keywords name="Comment">1!* 2*! 0!</Keywords>
                <Keywords name="Words1"></Keywords>
                <Keywords name="Words2"></Keywords>
                <Keywords name="Words3"></Keywords>
                <Keywords name="Words4"></Keywords>
            </KeywordLists>
            <Styles>
                <WordsStyle name="DEFAULT" styleID="11" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="1" />
                <WordsStyle name="FOLDEROPEN" styleID="12" fgColor="0000FF" bgColor="FFFFFF" fontName="" fontStyle="0" />
                <WordsStyle name="FOLDERCLOSE" styleID="13" fgColor="0000FF" bgColor="FFFFFF" fontName="" fontStyle="0" />
                <WordsStyle name="KEYWORD1" styleID="5" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" />
                <WordsStyle name="KEYWORD2" styleID="6" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" />
                <WordsStyle name="KEYWORD3" styleID="7" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" />
                <WordsStyle name="KEYWORD4" styleID="8" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" />
                <WordsStyle name="COMMENT" styleID="1" fgColor="008000" bgColor="FFFFFF" fontName="" fontStyle="1" />
                <WordsStyle name="COMMENT LINE" styleID="2" fgColor="008000" bgColor="FFFFFF" fontName="" fontStyle="1" />
                <WordsStyle name="NUMBER" styleID="4" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" />
                <WordsStyle name="OPERATOR" styleID="10" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" />
                <WordsStyle name="DELIMINER1" styleID="14" fgColor="C00000" bgColor="FFFFFF" fontName="" fontStyle="1" />
                <WordsStyle name="DELIMINER2" styleID="15" fgColor="0000FF" bgColor="FFFFFF" fontName="" fontStyle="1" />
                <WordsStyle name="DELIMINER3" styleID="16" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" />
            </Styles>
        </UserLang>
    </NotepadPlus>
    

    He probado a añadir esto a mano:

    <Keywords name="Delimiters">&apos;&lt;&quote;{0&apos;&gt;&quote;}0</Keywords>

    Y luego esto…

    <WordsStyle name="DELIMINER1" styleID="14" fgColor="C00000" bgColor="FFFFFF" fontName="" fontStyle="1" />
    <WordsStyle name="DELIMINER2" styleID="15" fgColor="0000FF" bgColor="FFFFFF" fontName="" fontStyle="1" />
    <WordsStyle name="DELIMINER3" styleID="16" fgColor="C00F00" bgColor="FFFFFF" fontName="" fontStyle="1" />
    <WordsStyle name="DELIMINER4" styleID="17" fgColor="0F00FF" bgColor="FFFFFF" fontName="" fontStyle="1" />
    <WordsStyle name="DELIMINER5" styleID="18" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" />

    Pero da el fallo de memoria que he comentado arriba…
    Alguna idea?

    Gracias majo!!

     
  • cchris
    cchris
    2011-09-02

    Puede ser que anteaños soportaba N++ 3 delineadores, pero ahora sólo acepta 2. Habría que cambiar LexUser.cxx y stylers.xml para que funcione.
    Si piensas que se necesitan 3 delineadores, ponle en IdeaTorrent.

    CChris