这是一个我无法找到答案的Vim问题.什么是%V状态行变量呢?
我检查了我可以找到的文档,但它不是很清楚,我知道它显示了虚拟列,但是这些数字/字母在-均值之前是什么?
例如,以下各项是什么意思?
0-1
17-18
Run Code Online (Sandbox Code Playgroud)
从我可以管理的内容中,找到这些例子.前面的数字-是最后一个实心列,换句话说就是真实列.它是否正确?
谢谢你的帮助!
Hug*_*ler 17
在Vim中statusline,在您可以设置的许多标志中,存在:
%c - 列号,即字节数.%v和%V- 虚拟列号,即屏幕上的列号.那么实际和虚拟列号之间有什么区别?答案是,使用制表符时,虚拟列号是当前列号的近似值,就像使用空格而不是制表符一样.
例.Vim状态行中有用的组合是:
%c%V
Run Code Online (Sandbox Code Playgroud)
正如帮助中所述,显示虚拟列号的%V标志只有在与实际列号不同时才会打印(带有前面的短划线).因此,通常您的状态行仅显示实际列号(例如8),但如果您在带有制表符或多字节字符的行上,您将看到两个数字(例如1-8).
例如,试试这个:
echo -e "\tHello world." > /tmp/test
Run Code Online (Sandbox Code Playgroud)
然后,/tmp/test在Vim中打开并注意您的状态行,指示实列和虚拟列之间的差异.如果将tabstop设置更改为其他值,则虚拟列将更改.
最后,如果你:set expandtab这样做:retab,那么虚拟列指示器将被隐藏.
| 归档时间: |
|
| 查看次数: |
3100 次 |
| 最近记录: |