pythonpygtk动态生成文本视图中的彩色标记

2024-09-30 16:33:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我在pythonpygtk中看到了一些在textview中生成彩色文本的方法。问题似乎是,它只会用那种颜色打印文本,或者使整行文字都是这种颜色,而不是某些项目的特定颜色。在

我想把它放在我键入“”的地方,那就是蓝色。或者如果文本视图中有“字符串”,它将是橙色或任何类型的

如果有一个'评论',那么它将是斜体和灰色。在

不确定是否有用,但我有一个部分,当我键入时,它会将文本写到页面上。有没有可能保持这种语法着色活动?在

我希望这有道理。在

非常感谢任何帮助!谢谢您!在


Tags: 项目方法字符串文本视图类型键入颜色
2条回答

一般来说,我想说,您要寻找的是使用正则表达式(re模块,这里有大量的问题……可能有些问题是关于您需要的确切模式)来找到您在TextBuffer中提到的模式。这意味着您需要将信号连接到缓冲区,以便查看用户键入的内容。然后您将需要一组TextTags(每个格式化规则/模式一个标记)应用于缓冲区中正则表达式与您描述的模式匹配的区域。最后,您希望apply the tags到缓冲区,这些{}可以用一系列方式(as the documentation says here)重新格式化TextView中的文本显示。在

如果没有提供任何代码,就很难精确地知道您可能在哪里遇到了问题。在

希望它能为你指明正确的方向。。。在

请注意,如果您覆盖GTK主题,那么另一个用户可能会有一个主题,例如在TextViews中有一个橙色背景,所以您应该小心确保它在视觉上独立于您所拥有的主题。在

使用^{}突出显示语法。不要重新发明轮子。在

相关问题 更多 >