我的状态栏看起来像这样:
set statusline+=%m
set statusline+=b%n:
" set statusline+=%f
set statusline+=%F
set statusline+=%R
set statusline+=%Y
set statusline+=\
set statusline+=[
set statusline+=row\ %l/%L
set statusline+=,\
" set statusline+=column\ %c\ (%v)
set statusline+=column\ %v\ (%c)
set statusline+=]
Run Code Online (Sandbox Code Playgroud)
平均每天,当没有云时,它会给出这样的结果:
[-]b3:options.txt,RO,HELP [row 6291/7778, column 42 (29)]
Run Code Online (Sandbox Code Playgroud)
现在,当我开始拆分窗口并打开不同的文件时,其中一些已修改,有些未修改,状态行中的内容开始来回摆动,这让我感到厌烦。
我在 vim 的帮助(:help 'statusline)中看到可以设置某些项目的固定宽度。
您将如何以某种方式修复上述项目,即如果缺少一个项目,或者无论其宽度如何,都不会影响其他项目?(即,这样我就可以随时查看已知位置并知道那里有什么……不要左右移动我的眼睛来寻找我需要的东西)。
%=允许您拆分左对齐和右对齐。
我在我的状态行中使用它,我当前的 git 分支左对齐,文件信息右对齐。即使没有可用的 git 信息,其他一切都完全正确。
编辑:我应该说我使用 %= 以这种方式修复项目,因为我无法让它以任何其他方式工作。您可以使用%-10.f设置最小宽度(某些项目 f 的最小宽度为 10)。
编辑 2:在下面回答 Idigas 的评论。这是您当前的状态行(重新格式化以节省空间):
set statusline=%mb:%n\ %f%R%Y\ [row\ %l/%L,\ column\ %v\ (%c)]
我会把它改成:
set statusline=b:%n\ %f%R%Y%=%m[row\ %l/%L,\ column\ %v\ (%c)]
通过使用%=设置左/右分割并将修改后的%m移动到它之后,状态行位置似乎是固定的。
归档时间: |
|
查看次数: |
2214 次 |
最近记录: |