[英]How can I permanently display the path of the current file in Vim?
我知道CTRL g会显示您正在处理的当前文件。 有没有办法修改我的.vimrc
,以便始终显示文件名/路径?
在状态行中,添加%F
以显示完整路径:
:help statusline
" Add full file path to your existing statusline
set statusline+=%F
注意, %F
将是完整路径。 要获取相对于工作目录的路径,请使用%f
。
如果您的状态行尚未显示,则可能需要首先将其配置为始终可见,方法是laststatus=2
set laststatus=2
请参阅:help laststatus
了解选项的含义。 通常情况下,状态行可能会被隐藏或隐藏,除非打开多个缓冲区,但我发现一直使用这样的自定义项非常有用,非常值得为它放弃一个屏幕行保留。
设ls = 2
在vimrc中添加它,您将始终在底部看到文件名。
我在使用Vim编辑文件时找到了两种在gnome-terminal标题栏中显示文件路径的方法。
更简单(更好)的方法: ~/.vimrc
添加到~/.vimrc
:
set title
哪个会在顶部显示:
filename.ext (~/path_to_directory_where_your_file_is/) - VIM
更复杂的方式将显示绝对文件路径。 在我最近写的这篇博客文章中有更详细的记录 。
我发现获得我正在处理的文件的完整路径的唯一方法是:echo expand('%:p')
。 如果你愿意,你可以重新映射ctrl + g,但我个人不喜欢过多地偏离标准。 我像这样映射F7:
map <F7> <Esc>:echo expand('%:p')<Return>
我一直用:f
,但@MichaelBerkowski的答案和链接都很棒!
:f
显示路径,行数,修改状态,当前光标位置等...
我不知道CTRL G,但看起来差不多。
我认为状态线非常强大且方便。 开箱即用的Strait它将显示文件名,光标位置和一些标志。 但是你想和我一样做,并用文件的完整路径替换文件名 -part。
因此,在编辑我的.vimrc
我的状态行看起来像默认情况:
.vimrc 26,16 7%
您可以使用以下方式查看状态行的设置:
:set statusline?
但是如果你没有进行任何改动而且没有任何模块改变它,它将是空的。 但是通过help-section( :help statusline
)中的示例,您可以发现默认值为:
:set statusline=%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P
因此,请在.vimrc
包含此内容,并将%f
更改为%F
。 我还添加了filetype标志( %y
)到我的状态行,因为我发现它很方便。 所以我的结果配置如下:
:set statusline=%<%F\ %h%m%r%y%=%-14.(%l,%c%V%)\ %P
结果看起来像这样:
~/.vimrc [vim] 26,16 7%
好读:
PS。 我运行vim 7.3
如果您使用的是vim-airline ,请输入.vimrc
:
let g:airline_section_c = '%<%F%m %#__accent_red#%{airline#util#wrap(airline#parts#readonly(),0)}%#__restore__#'
这是对航空公司默认值的修改,将%f
更改为%F
。
如果希望路径包含已解析的符号链接,请使用以下命令:
set statusline +=%{resolve(expand('%:p'))}\ %*
要保留主目录的“〜”缩写,请包含fnamemodify
set statusline +=%{fnamemodify(resolve(expand('%:p')),':~')}\ %*
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.