在Vim中显示不同的背景色,超过80个字符

我已经看到了Vim 80的列布局的问题 ,但是那里的答案只突出显示了超过80个字符的实际内容。 我想要打开一个100列的Vim窗口,最左边的80列使用正常的背景,以及任何通过使用稍微不同的背景的东西。 Vim窗口的背景应该是不同的颜色,而不仅仅是超过80个字符的文本。 这将表明我接近80个字符点而不必先经过它。

我不认为这是现在可能的,但我想我会问,以防万一。

也许这可以用一个插件完成?

所需的Vim右边距突出显示的TextMate示例

通过在TextMate的一般首选项中select“突出显示右边距”,您可以看到所需Vim行为的示例。

TextMate右边距突出显示示例

如果你有Vim> = v7.3,你可以简单地把它添加到你的.vimrc ,突出显示81和以后(所以80是你最后一个有效的列):

 let &colorcolumn=join(range(81,999),",") 

如果您没有看到突出显示,则可能没有设置ColorColumn突出显示颜色。 添加(调整以适应您的偏好):

 highlight ColorColumn ctermbg=235 guibg=#2c2d27 

现在我想强调第80列以及120和以后,所以我有单独的“警告”和“危险”标记。 你可以这样做:

 let &colorcolumn="80,".join(range(120,999),",") 

下面是GVim编辑我的.vimrc的截图。

GVim编辑我的.vimrc

我使用Ubuntu Mono 11字体和molokai配色scheme。 你可以在GitHub上find我的vimconfiguration和我所有的点文件。

突出显示81列

 :set textwidth=80 :set colorcolumn=+1 

你也可以做一些样式:

 :hi ColorColumn guibg=#2d2d2d ctermbg=246 

上面评论中提出的解决scheme 首先突出显示背景,然后将ColorColumn黑色突出显示为叠加层。 将您的色彩列设置为1-80行。

 hi Normal guibg=#32322f ctermbg=236 hi NonText guibg=#32322f ctermbg=236 hi ColorColumn guibg=#000000 ctermbg=0 let &colorcolumn=join(range(1,80),",") 

尝试:

 :/\%>80v./+ 

它会将+80个字符标记为错误

我不认为有可能拥有你想要的东西,但是我自己对这个问题感兴趣,因为我自己也对此感兴趣。

也许,我说的是显而易见的,但是你可以在第70 +列设置高位,以显示你接近第80列的距离。