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

问题描述 投票:0回答:1

我在第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

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

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

vim word-wrap
1个回答
2
投票

每次使用以下自动命令更改窗口大小时,都可以运行一个函数

augroup Resize
  autocmd!
  autocmd VimResized * :call YourFunctionName<cr>
augroup END

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

function YourFunctionName
  #your code goes here
endfunction

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

© www.soinside.com 2019 - 2024. All rights reserved.