我想在 vim 中gf
并立即忘记我从哪里gf
(删除该缓冲区/将其替换为我正在gf
的文件)。我想经常这样做。
不必要的细节:我想稍微有效地浏览我的源代码管理项目树。命令-T段错误在我身上,我没有时间调试它。我想出的是
"create new buffer and read a filtered project tree into it
:enew | cd `git-pwd` | r !git ls-files | grep MYFILTER
"(git-pwd is a wrapper around `git rev-parse --show-cdup` that replaces empty output with ./ )
这给了我一个grep
过滤的存储库树,从那里我可以"gf"到我想要的特定文件。但是,这样做通常会累积它们未命名的缓冲区。我不是很想学习VimScript并让自己成为一个合适的插件。
这个,gf
映射应该可以解决问题。当您更改文件时,前一个文件被设置为备用文件,您可以通过#
符号方便地:bdelete
(或:bwipeout
,无论您喜欢什么)。
:nnoremap <silent> ,gf gf:bdelete #<CR>