Как работает подсветка синтаксиса в Scintilla (и почему не моя)? - PullRequest
12 голосов
/ 21 июня 2011

Так или иначе, я пытаюсь реализовать подсветку синтаксиса в элементе управления Scintilla в Visual C # .NET.

Мне сказали сделать это через XML-файл. Я назвал его «ScintillaNET.xml» и поместил в отладочную корзину для моего проекта.

В Form_Load я установил для него язык пакета (это правильно), а в свойствах я указываю местоположение файла.

Код, который у меня есть в XML-файле:

<?xml version="1.0" encoding="utf-8"?>

<ScintillaNET>

    <!-- Set up the language, style, and lexer for batch -->
    <Language Name="batch">

        <!-- Lexer -->
        <Lexer StreamCommentPrefix="{ " StreamCommentSuffix=" }">
            <Keywords List="0">var</Keywords>
        </Lexer>

        <!-- Style -->
        <Styles>
            <Sytle Name="CHARACTER" ForeColor="Black" BackColor="Red"/>
        </Styles>

        <!-- Other Settings -->
        <Indentation TabWidth="2" UseTabs="false"/>

    </Language>

</ScintillaNET>

К сожалению, похоже, что это не работает ... Когда я запускаю свою программу, в Scintilla ничего не происходит.

Моя главная цель для подсветки пользовательского синтаксиса - ничего сложного.

Я просто хочу иметь возможность: Выберите слова, которые будут выделены. Выберите цвет, чтобы они были выделены / окрашены.

Как мне это сделать? Что не так с моим кодом?

(и если у кого-нибудь есть краткое руководство о том, как это сделать, это будет оценено)

1 Ответ

15 голосов
/ 04 августа 2011

Я проверил ваш xml-файл на моей машине.Приложение Windows Form с ScintillaNet Control и с вашим XML работает нормально.

enter image description here

Убедитесь, что вы делаете следующее:

  1. Ваш системный «путь» включает каталог, в котором находится SciLexer.dll
  2. В свойстве ConfigrationManager элемента управления ScintillaNet.Установите свойство CustomLocation = ScintillaNET.xml
  3. В свойстве ConfigrationManager элемента управления ScintillaNet.Свойство языка = пакет.

ссылки:

(установка) http://scintillanet.codeplex.com/wikipage?title=Installation&referringTitle=Documentation

(Как использовать собственные файлы конфигурации?) http://scintillanet.codeplex.com/wikipage?title=HowToCustomConfig&referringTitle=Documentation

...