2

我正在尝试为 QScintilla 创建一个基于 JavaScript 的自定义词法分析器。我已经想出了如何在词法分析器中添加关键字。但是,我不知道如何改变它们在输入时的外观,就像输入单词 function 时一样。

像这儿

我需要弄清楚如何使用“填充”一词来做到这一点。

这是我目前拥有的代码:

    QsciLexer *lexer=new QsciLexerJavaScript;
    QsciAPIs *api = new QsciAPIs(lexer);
    api->add("fill");
    api->prepare();
    ui->textEdit->setLexer(lexer);
4

1 回答 1

1

您需要继承 QsciLexerCustom 类。然后您需要在该类中制作/配置几个 QsciStyle 对象。实际的语法突出显示在您需要覆盖的 styleText() 函数中完成。

你可以在这个网站上找到详细的解释:

https://qscintilla.com/

更具体地说,在此页面上:

https://qscintilla.com/syntax-highlighting/

我希望它有帮助

于 2017-05-08T08:24:53.507 回答