使一个新的、修改过的缓冲区只需 bd 即可关闭

  • 本文关键字:缓冲区 bd 修改 一个 vim
  • 更新时间 :
  • 英文 :


In 将 ':map' 的输出放入缓冲区我学会了我可以使用

  redir @a | silent map | redir END | new | silent put a

在缓冲区中查看 map 的输出,这很方便,因为它很长,我希望能够以 vim 风格导航它。

但是,新缓冲区需要:bd!才能关闭,因为它已被修改。是否可以设置它,以便只需:bd即可关闭?

(我知道这只是一个字符,但我宁愿小心:bd!因为我不想意外丢失实际数据(地图输出是一次性的((

此命令在新的垂直窗口中打开一个新的暂存缓冲区,并使用给定 Ex 命令的输出填充它:

function! Redir(cmd)
    redir => output
    execute a:cmd
    redir END
    vnew
    setlocal nobuflisted buftype=nofile bufhidden=wipe noswapfile
    call setline(1, split(output, "n"))
endfunction
command! -nargs=1 Redir silent call Redir(<f-args>)

您可以根据需要关闭窗口或删除缓冲区。

用法:

:Redir map

将这一行添加到

set hidden

你的vimrc .

最新更新