在vim中沿左边距创建一个4-5个字符的列

在vim中沿左边距创建一个4-5个字符的列,vim,Vim,作为一个上下文,我正在考虑为vim制作一个插件,该插件将沿着左边距(理想情况下是数字列的左边)内联特定的调试和/或分析信息,需要4-5个字符宽。然而,我找不到任何方法来实现这一点。我已经到处搜索过了,我能找到的最接近的东西是用于在符号列中插入符号的vimscript代码,但符号列的宽度固定为2个字符 我考虑过制作自己的临时列(在数字列的右侧,在正常可编辑的文本区域)并以某种方式将其标记为只读的可能性,但这似乎也不可能——根据我所读的,整个缓冲区必须是只读的或非只读的;您不能仅将一部分设置为只读

作为一个上下文,我正在考虑为vim制作一个插件,该插件将沿着左边距(理想情况下是数字列的左边)内联特定的调试和/或分析信息,需要4-5个字符宽。然而,我找不到任何方法来实现这一点。我已经到处搜索过了,我能找到的最接近的东西是用于在符号列中插入符号的vimscript代码,但符号列的宽度固定为2个字符

我考虑过制作自己的临时列(在数字列的右侧,在正常可编辑的文本区域)并以某种方式将其标记为只读的可能性,但这似乎也不可能——根据我所读的,整个缓冲区必须是只读的或非只读的;您不能仅将一部分设置为只读

为了完整起见,这里有一个例子。我想以编程方式在一些文本(设置了数字)之前插入一个4-5个字符的列

使

My   1 Text buffer
own  2 with some
text 3 text

有什么方法可以完成这项任务吗?

这项任务的内置功能是“符号”列,但它仅限于两个字符

根据您的使用情况,可以使用工具提示弹出窗口(明确提到此功能允许调试器或其他外部工具根据鼠标指向的位置显示动态信息)来增强标志,也可以将其他信息放在或位置列表中



对实际缓冲区的修改有很多缺点(因为它有效地阻止了编辑,而Vim的主要目的就是这样)。一些插件所做的是在垂直分割中显示一个临时缓冲区(即:未持久化、不可修改),并设置该选项,使其内容跟随原始缓冲区。例如,请查看,它使用此选项来用提交信息注释缓冲区。

可能需要打开窗口左侧的垂直拆分并滚动绑定它们?
My   1 Text buffer
own  2 with some
text 3 text