我在写一个Vim插件。主逻辑是用Python(python3.6)编写的,带有必需的Vim脚本包装代码。在
该插件使用Python打印函数向用户输出文本。例如:
print( "The action " + action + " has failed." )
我该如何让“失败”这个词以红色出现?在
到目前为止,我尝试搜索的所有内容都是在Vim中突出显示语法和在Vim中呈现ANSI颜色转义代码。这两种颜色的文本都在主Vim缓冲区中,用于您正在查找的任何文件。在
我想从我的插件的Python输出中为一个单词上色。有什么想法吗?在
Tags:
失败的尝试
我的实验证实了ANSI转义码在嵌入式Python解释器中不起作用。这并不奇怪,因为Vim捕获输出并使用自己的例程进行输出。由于不能将ANSI代码与
:echo
一起使用,因此这与:py print
一起使用是一致的。此外,在GVIM中,没有附加终端,而且嵌入式终端仿真器相当愚蠢。在工作(除了GVIM)是调用一个外部命令,因为它的输出直接发送到终端。不过,这对您没有帮助(除非您愿意切换到调用外部Python解释器)。在
^{pr2}$影响输出着色的方法是通过Vim的highlight groups,即
:echohl
命令。不幸的是,这个不能与:py print
结合:解决方案
您必须切换到Vim的
:echo[msg]
以使所选的突出显示组应用于输出;现在,一切都通过相同的API。您可以连接并执行单个命令序列:或分别提交多个
vim.command()
:相关问题 更多 >
编程相关推荐