:help statusline
声明%f
将呈现为:
缓冲区中文件的路径,类型为当前目录或相对于当前目录。
当我set statusline=%f
时,状态行中的路径有时是相对的,但通常是绝对的。
有没有办法确保显示的路径始终是相对的?
答案 0 :(得分:5)
可能有更好的方法,但你可以试试这个:
set stl+=%{expand('%:~:.')}
应评估%{}
内的表达式并将其添加到您的状态行。这里的表达式是:
expand('%:~:.')
...它扩展了当前文件的名称,但阻止了波形符(:~
)的扩展,并使路径相对于当前工作目录(:.
)。
答案 1 :(得分:3)
在%f
的解释下方,您会找到F
的解释。使用%F
代替%f
将为您提供所需的显示效果。
item meaning ~
f S Path to the file in the buffer, as typed or relative to current
directory.
F S Full path to the file in the buffer.
答案 2 :(得分:1)
您可以输入:!echo %
来查看shell中的路径
和:pwd
显示vim的当前工作目录