【发布时间】:2020-09-29 20:44:15
【问题描述】:
我在 vim 中打开了几个文件,在多个窗口中。是否有像 :e 这样的命令会重新加载我打开的所有文件的缓冲区?我需要这个,因为有时我会用另一个编辑器更改一些文件,同时它们也在 vim 中打开。
【问题讨论】:
标签: vim
我在 vim 中打开了几个文件,在多个窗口中。是否有像 :e 这样的命令会重新加载我打开的所有文件的缓冲区?我需要这个,因为有时我会用另一个编辑器更改一些文件,同时它们也在 vim 中打开。
【问题讨论】:
标签: vim
:windo 命令对 Windows 的作用类似于 :bufdo 对缓冲区的作用。那就是:
:windo e
应该循环浏览所有可见窗口(即,不是其他选项卡上的窗口,如果有的话)并执行:e 命令。同样:
:bufdo e
将遍历缓冲区列表中的所有缓冲区(即,没有“隐藏”缓冲区)并执行相同的命令。
请注意,缓冲区列表中可能有当前未显示在任何窗口中的缓冲区。所以是用:windo e还是:bufdo e就看你想要什么了。
相关帮助在这里: http://vimdoc.sourceforge.net/htmldoc/windows.html#list-repeat
【讨论】:
:tabdo e 会重新加载所有选项卡中的所有窗口
:tabdo exec 'windo e'吗?
:tabdo e 仅重新加载每个选项卡中的第一个窗口。谢谢 :) 解释了我昨天遇到麻烦的原因
:e。有没有办法保留语法突出显示?我正在使用 Vim 8.0(2016 年 9 月 12 日)。
如果您设置了'autoread' 选项,Vim 将自动重新加载已在外部更改的缓冲区(并且没有未保存的更改)。
【讨论】:
怎么样
:bufdo e
【讨论】: