语法突出显示

Hun*_*len 1 java swing syntax-highlighting jtextcomponent

我为自己创建了一个Summer项目,并决定编写一个简单的文本/代码编辑器.我认为到目前为止一切进展顺利.我创建了一个基本的GUI,可以执行简单的操作,如打开,保存和创建文件.

现在我正在通过在打开文件时读取单词来进行语法突出显示,但事实证明这非常麻烦,如果有人只是在GUI中输入,则不会突出显示语法.

所以我想了解如何进行语法高亮显示,以便它既可以打开文件也可以在窗口中输入.

此外,如果有人有任何时间我想听听关于我的代码的评论,这就是存储库:https://mcmillhj.beanstalkapp.com/jtexteditor/browse

主要文件是JTextEditor.java和ui/JTextEditorUI.java

Dar*_*eis 5

我想你应该开始阅读有关词法分析的内容,你也可以使用JLex从文件内容中获取令牌......你还应该阅读一些关于编译器的内容(这并不容易)

  • 是的...或者如果你不喜欢在两个不同的步骤中标记和搜索标记,你可以在解析时告诉GUI关于标记的位置,突出显示它(使用观察者模式或其他东西,通知发现令牌时的观察者,这可能比在不同步骤中做的时间少. (2认同)