Как добавить новую настройку языка в ScintillaNet? - PullRequest
3 голосов
/ 28 ноября 2010

Я пишу программу на C #, которая использует текстовый редактор для редактирования формата файла, аналогичного скомпилированному lua с ScintillaNet (rbf). Я понимаю, что вы можете добавить новые языки в Scintilla, добавив файл XML и сославшись на это в свойстве CustomDirectory. Мне бы хотелось, чтобы в языке был тот же Lexer / Parser, что и в lua, но без ключевых слов и дополнения кода. Может ли кто-нибудь опубликовать такой код Xml, который я могу использовать в качестве примера?

В настоящее время это выглядит так:

<?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 >

Мне также было бы полезно, если бы кто-то мог сказать мне, как установить цвета по умолчанию для различных стилей (строк, комментариев, чисел и т.

1 Ответ

2 голосов
/ 04 декабря 2010

Я разобрался, вы добавляете эту строку для наследования лексера от уже поддерживаемого языка:

<Lexer LexerName="lua"/>

Теперь все, что мне нужно знать, это как отключить комментарии.

...