在Vim中同时进行颜色列和文本换行

时间:2016-06-15 20:15:42

标签: vim word-wrap

我在第90列的Vim中设置colorcolumn,但同时我想维护文本换行功能。

因此,为了在包裹的线条上保持彩色柱子并且没有断裂,我必须输入我的.vimrc之类的东西:

let col_no=90
if ((longest_line_size / 90) >= 2)
  for i in range(2, (longest_line_size / 90))
    let col_no=col_no . "," . ((90*i) + (&columns - 91))
  endfor
endif
execute 'set colorcolumn=' . col_no

问题在于,当我调整窗口(或缓冲区)的大小时,包裹线上的彩色列未对齐。解决方案是在调整缓冲区大小时重新运行该函数。

这可能吗?我们也欢迎任何其他解决方案/建议。

1 个答案:

答案 0 :(得分:2)

每次使用以下自动命令

更改窗口大小时,都可以运行一个函数
augroup Resize
  autocmd!
  autocmd VimResized * :call YourFunctionName<cr>
augroup END

将其添加到vimrc文件中。要将它与代码一起使用,您需要将代码包装在函数中。

function YourFunctionName
  #your code goes here
endfunction

请注意,函数名称必须以大写字母开头。