在 Vim 中同时使用颜色栏和文字换行
Colorcolumn and text wrapping at the same time in Vim
我在第 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
问题是当我调整 window(或缓冲区)大小时,换行上的彩色列没有对齐。一种解决方案是在调整缓冲区大小时重新运行 函数。
这可能吗?也欢迎任何其他 solutions/suggestions。
每次 window 大小更改时,您都可以 运行 一个函数,使用以下自动命令
augroup Resize
autocmd!
autocmd VimResized * :call YourFunctionName<cr>
augroup END
将其添加到您的 vimrc 文件中。要将它与您的代码一起使用,您需要将代码包装在一个函数中。
function YourFunctionName
#your code goes here
endfunction
注意函数名必须以大写字母开头。
我在第 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
问题是当我调整 window(或缓冲区)大小时,换行上的彩色列没有对齐。一种解决方案是在调整缓冲区大小时重新运行 函数。
这可能吗?也欢迎任何其他 solutions/suggestions。
每次 window 大小更改时,您都可以 运行 一个函数,使用以下自动命令
augroup Resize
autocmd!
autocmd VimResized * :call YourFunctionName<cr>
augroup END
将其添加到您的 vimrc 文件中。要将它与您的代码一起使用,您需要将代码包装在一个函数中。
function YourFunctionName
#your code goes here
endfunction
注意函数名必须以大写字母开头。