2010-11-28 5 views
3

J'écris un programme en C# qui utilise un éditeur de texte pour éditer un format de fichier similaire à lua compilé avec ScintillaNet (rbf). Je comprends que vous pouvez ajouter de nouvelles langues à Scintilla en ajoutant un fichier XML et en référençant cela dans la propriété CustomDirectory. Je voudrais que la langue ait le même Lexer/Parser que lua, mais sans les mots clés et l'achèvement du code. Quelqu'un pourrait poster le code Xml comme celui-ci que je peux utiliser comme exemple?Comment ajouter un nouveau paramètre de langue à ScintillaNet?

Il ressemble actuellement à ceci:

<?xml version="1.0" encoding="utf-8"?> 
<ScintillaNET> 
    <Language Name="rbf"> 
    <Indentation TabWidth="4" SmartIndentType="cpp" /> 
    <Lexer LineCommentPrefix="--" StreamCommentPrefix="[[" StreamCommentSuffix="]]" > 
    </Lexer> 
    <Styles> 
     <Style Name="DEFAULT" FontName="Courier New" Size="10"/> 
     <Style Name="COMMENT" ForeColor="Green" Size="8"/> 
     <Style Name="COMMENTLINE" ForeColor="Green" Size="8"/> 
     <Style Name="NUMBER" ForeColor="Orange"/> 
     <Style Name="WORD" ForeColor="Blue" Bold="Yes"/> 
     <Style Name="WORD3" ForeColor="DarkBlue" Bold="Yes"/> 
     <Style Name="WORD4" ForeColor="DarkBlue" Bold="Yes"/> 
     <Style Name="WORD5" ForeColor="LightGreen" Bold="Yes"/> 
    </Styles> 
    </Language> 
</ScintillaNET > 

Je voudrais aussi être utile si quelqu'un pouvait me dire comment définir les couleurs par défaut pour les différents styles (chaînes, commentaires, numéros, etc.)

Répondre

2

Je l'ai travaillé dehors, vous ajoutez cette ligne pour hériter du lexer d'une langue déjà pris en charge:

<Lexer LexerName="lua"/> 

maintenant, tout ce que je dois savoir est comment désactiver les commentaires.

Questions connexes