如何在vim中显示您正在处理的文件的文件名?

Dre*_*eur 141 vi vim

如何在vim中显示您正在处理的文件的文件名?

smi*_*hax 184

:f(:file)将做同样的事情<C-G>.:f!如果适用,将提供未截断的版本.

  • ````f!```并不总是有效,按1,然后按Ctrl-G查看完整路径. (20认同)
  • 不错,但有可能在终端的顶栏显示它吗?(或终结者)或没有输入命令的地方. (2认同)
  • @ives 1 和 Ctrl+g 分别意味着什么? (2认同)
  • @jobima:它修改`ctrl-g`以返回路径+文件。`:f`将返回没有路径的文件名,就像`ctrl-g`一样。在`ctrl-g`之前的`1`将显示路径和名称(尽管不一定扩展)。即它会显示`〜/ dev / file.py`而不是`file.py`。“ 2”后跟“ ctrl-g”将包含以下缓冲区:“ buf 1:“〜/ dev / file.py”。 (2认同)

Dav*_*ver 65

ctrl+ g会做到的.

另外,我喜欢:

set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L"
Run Code Online (Sandbox Code Playgroud)

哪个产生:

foo.c [C] [0x23]<code/foo.c   1,   1   2% of 50

此外,正如有人提到(但现在已删除)%将替换为当前文件名.例如:

:!echo "current file: %"
current file: foo.c
Press ENTER or type command to continue

  • `[C]`和`[0x23]`部分是什么意思? (2认同)
  • `'statusline'` 是一个字符串,但不要在集合中包含引号: `set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%&lt;\ %F%4v,%4l\ %3p%%\ of\ %L\ 行`也需要转义空格 (2认同)

Bri*_*nts 18

设置状态行.更多信息:help statusline

这些命令可以放在你的.vimrc文件中,或者你可以在命令模式下输入':'在vim中输入它们作为命令.

首先,使用以下内容将上次状态设置为2:

set laststatus=2

然后将状态行设置为%f以获取短文件名.

set statusline=%f

要获取文件的完整路径,请使用%F.


小智 10

:set title 在窗口标题栏中显示文件名。


sea*_*ean 8

为什么这么复杂?Control-G 将完成这项工作


joe*_*lom 5

要显示任何文件的完整路径,包括解析的符号链接,请使用以下命令。

:echo resolve(expand('%:p'))
Run Code Online (Sandbox Code Playgroud)

这可以通过将下面的行添加到您的状态栏来添加到您的状态栏 ~./vimrc

set statusline +=%{resolve(expand('%:p'))}\ %*
Run Code Online (Sandbox Code Playgroud)