2

我使用Scintilla带有DScintilla包装器的组件,并在任何词法分析器中使用关键字突出显示错误。帕斯卡,例如:

with DScintilla do 
begin
  SetLexer(SCLEX_PASCAL);
  StyleSetFore(SCE_PAS_WORD, clGreen);
  StyleSetFore(SCE_PAS_OPERATOR, clRed);;
  StyleSetFore(SCE_PAS_IDENTIFIER, clBlue);
  SetText('begin a+b; end');
end

此代码正确突出显示标识符和运算符,但关键字与标识符具有相同的颜色。SciLexer 似乎无法比较此库中的字符串。

如何正确设置 Scintilla 关键字突出显示?

4

1 回答 1

1

关键字必须手动添加。

SetKeyWords(0,'begin end');
于 2012-06-20T13:43:30.350 回答