替换当前缓冲区时转到文件 (gf)
Go to a file (gf) while replacing the current buffer
我想在 vim 中 gf
并立即忘记我 gf
的来源(用 [=11] 的文件删除 buffer/replace =]进入)。
我想经常这样做。
不必要的详细信息:
我想稍微有效地浏览我的源代码控制的项目树。
Command-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
过滤的 repo 树,从那里我可以 "gf" 到我想要的特定文件。但是,这样做通常会累积它们未命名的缓冲区。我还不是很想学习 VimScript 并使自己成为一个合适的插件。
这个 ,gf
映射应该可以解决问题。当你更改文件时,前一个文件被设置为备用文件,你可以方便地通过[=] :bdelete
(或:bwipeout
,无论你喜欢什么) 14=]符号。
:nnoremap <silent> ,gf gf:bdelete #<CR>
我想在 vim 中 gf
并立即忘记我 gf
的来源(用 [=11] 的文件删除 buffer/replace =]进入)。
我想经常这样做。
不必要的详细信息: 我想稍微有效地浏览我的源代码控制的项目树。 Command-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
过滤的 repo 树,从那里我可以 "gf" 到我想要的特定文件。但是,这样做通常会累积它们未命名的缓冲区。我还不是很想学习 VimScript 并使自己成为一个合适的插件。
这个 ,gf
映射应该可以解决问题。当你更改文件时,前一个文件被设置为备用文件,你可以方便地通过[=] :bdelete
(或:bwipeout
,无论你喜欢什么) 14=]符号。
:nnoremap <silent> ,gf gf:bdelete #<CR>