Vim忽略文件完成中的路径名
问题描述:
假设我在/tmp
中,并且我在vim中打开了两个文件:test.txt
和tmpfile.txt
。现在我想删除tmpfile.txt
缓冲区。我输入:bd tm
TAB。我想要的行为是自动完成tmpfile.txt
;我得到的行为是tmpfile.txt
和/tmp/test.log
的列表,因为它在目录名称和文件名称上自动完成。我如何让vim像我想要的那样行事?Vim忽略文件完成中的路径名
答
使用^tm
,而不是匹配的文件名的开头。 (你必须在/ tmp中才能正常工作,因此相对路径只是文件名。)
答
这是不可能的,列表来自缓冲区列表上的内容,而不是来自本地路径,您可以在任何地方(:pwd),这并不重要,当您按Tab键结果来自在内存列表中,这就是为什么/ tmp出现,因为如果你在/ tmp上,/ tmp不应该再次出现。
,如果你看一下:帮助:BD需要bufname为PARAM,而不是FNAME:BADD
使用更独特的模式,如':bd fi'。 –
romainl
2012-07-24 17:39:35
我认为':bd ./tm'应该可以工作。 –
Romeo
2012-07-24 19:09:26
@Romeo,不起作用。如果你看看:help:bd它将bufname作为参数,而不是fname作为:badd – 2012-07-24 19:20:19