Scintilla中的自定义语法高亮是如何工作的(为什么我的不行)?

13

总之,我在尝试将自定义语法高亮功能实现到Visual C#.NET中的Scintilla控件中。

有人告诉我可以通过一个XML文件来实现。我将其命名为 "ScintillaNET.xml" 并放置在项目的调试bin目录下。

在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个回答

17

我在我的机器上测试了您的 XML 文件。使用 ScintillaNet 控件的 Windows 表单应用程序和您的 XML 文件可以正常工作。

图片描述

请确保执行以下操作:

  1. 确保系统“路径”包括 SciLexer.dll 所在的目录。
  2. 在 ScintillaNet 控件的 ConfigrationManager 属性中,将 CustomLocation 属性设置为 ScintillaNET.xml。
  3. 在 ScintillaNet 控件的 ConfigrationManager 属性中,Language 属性设置为 batch。

参考资料:

(安装) http://scintillanet.codeplex.com/wikipage?title=Installation&referringTitle=Documentation

(如何使用自己的配置文件?) http://scintillanet.codeplex.com/wikipage?title=HowToCustomConfig&referringTitle=Documentation


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接