PyQT - 如何实现语法高亮?
我想用PyQT写一个简单的Cython集成开发环境(IDE),但是我不知道怎么实现语法高亮。
我知道怎么解析Python代码,但我不知道怎么在PyQT的文本框里给不同的词设置颜色。
我可以用HTML来实现这个功能,但这实时是怎么工作的呢?我的意思是,当用户编辑文本时,我需要能够立即改变文本的格式等等。
你知道我该怎么做吗?
2 个回答
5
你有没有考虑过使用 QScintilla 呢?
“除了标准文本编辑器的一些功能,QScintilla 还提供了一些在编辑和调试源代码时特别有用的功能。这些功能包括语法高亮、错误提示、代码补全和调用提示。”
1
我建议你去看看这个叫 KhtEditor 的代码,它是用Python和PyQt写的。听说作者还在把它从QWidget转换到QML。