Sublime文本更改文本颜色

时间:2016-09-16 11:52:18

标签: python sublimetext3 sublime-text-plugin

我目前正在尝试从文本文件中提取信息(手动)。文本文件具有适当的格式(可解析),但它包含类似随机字符的内容。这些随机字符不是完全随机的,通过在它们上运行算法,我能够收集信息。我给每个char一个正整数。

问题是我是否可以编写一个可以帮助我查看这些字符的崇高文本3插件。

我想改变那些字符的颜色。

注意:同一个字符串中可以有一个带有2种颜色的字符。颜色取决于位置。

可以为崇高文本3编写这样的插件吗?如果不是我可以使用什么呢?给每个char得分的算法是用python编写的。

3 个答案:

答案 0 :(得分:1)

要设置Region文字的颜色,您需要在配色方案中定制scope selector。然后,一旦您选择了要突出显示的文本并将其转换为区域,就可以使用sublime.Viewadd_regions()方法(可在sublime_plugin.TextCommand子类中访问{ {1}})将区域添加到视图中并为其分配范围。然后应根据您的配色方案突出显示区域。

答案 1 :(得分:0)

虽然我没有任何直接使用Sublime API的经验,但我的插件突出了我的文件中带有矩形/轮廓的东西。从api reference看,区域用于处理此问题。您可能需要查看add_regions()函数。该参考文献将Packages / Default / mark.py列为使用此函数的示例插件。

至于具体改变前景,最后一篇帖子in this thread暗示这是不可能的。

答案 2 :(得分:0)

可以在 CudaText 应用中使用Python API。 API有on_change_slow个事件来运行您的代码。并且您的代码必须找到文本x / y位置,然后调用ed.attr()以使用任何颜色突出显示x / y处的子串。这很简单。