如何增加vim中行号边距的间距?
Posted
技术标签:
【中文标题】如何增加vim中行号边距的间距?【英文标题】:How do I increase the spacing of the line number margin in vim? 【发布时间】:2011-02-01 16:18:38 【问题描述】:我在 vim 中的配色方案有问题:
(来源:tinygrab.com)
行号与代码太接近。如何增加行号右边距的宽度?
【问题讨论】:
我很确定没有选项可以影响该间距。我很惊讶你认为它们太近了——每个 vim 用户都有相同的一个字符间距——但我知道这是个人喜好。我建议降低数字对比度以获得一些审美距离,但看起来你已经这样做了。 你为什么不尝试让它显示的每一行在它的开头都有一个空格(给出一个间隙的外观)。只需确保在所有保存命令中删除该行! 【参考方案1】:这也困扰着我;我讨厌将文本塞满纯色块。这让我有幽闭恐惧症。
这是我作为解决方法所做的(在 MacVim 中,但我希望相同的技术在其他地方也可以使用):
在您首选的颜色方案中,将行号列的背景颜色设置为与普通文本的背景颜色相同,将行号前景色设置为低对比度且不显眼的颜色(这样就不会看起来它是您正常文本的一部分)。我对普通文本使用黑底白字,对行号使用黑底深灰:
hi LineNr guifg=#505050 guibg=Black
hi Normal guifg=White guibg=Black
诚然,这并不能解决问题,而是隐藏它,但它对我来说效果很好。
【讨论】:
“幽闭恐惧症”就是这个词! ?在这里也有同感。很好的解决方法【参考方案2】:https://github.com/vim/vim/blob/master/src/screen.c#L2220
查看代码,这变得不可能(显然,没有修补 vim):vim 总是格式化行号以占据整个可用宽度,之后只留下一个空格(“%*ld”格式代码中的说明符确保了这一点)。
【讨论】:
为什么不死板的 vim 开发者不改变它? ://【参考方案3】:您可以在“~/.vimrc”中添加以下行:
set nuw=6
其中“6”以字符数的形式指定列的宽度。根据需要替换为更小或更大的数字。我认为仅适用于较新 (>=7?) 版本的 Vim。
【讨论】:
这不符合 OP 的要求,它只是使数字列的宽度变大,将它们更深地移动到您的文本中,因此“更糟” 这不是问题的答案。 虽然没有回答问题,但它帮助我完成了我在谷歌搜索时想做的事情。【参考方案4】:%left 5
在 vim 终端中(%
整个文档,left
到 linenrs 的距离代码,0-infinity
等宽中的距离(= 列数))
【讨论】:
【参考方案5】:这里是解决方案2(参考how to change the left margin in gvim)
解决方案 1(如 %left 5
)只是在代码区域中添加“空格”。我猜它和 threadstarter 做的一样……但它不能回答原来的问题。
解决方案 2:foldcolumn
可以解决问题(foldcolumn 是行号左侧的列)
在执行模式:set foldcolumn=12
如果你也想改变颜色(如参考)
hi FoldColumn guibg=#003f3f
(在参考文献中是 FoldColumns
,这是错误的)。
【讨论】:
以上是关于如何增加vim中行号边距的间距?的主要内容,如果未能解决你的问题,请参考以下文章