使用 netrw 自动加载 vim 中的远程文件
Automatically load remote files in vim using netrw
我经常使用 vim 及其 netrw 插件编辑远程文件。很多次,我不得不关闭当前会话并稍后重新开始一个完整的新会话。但是加载所有这些文件(其中很多)需要花费大量时间和精力(因为我需要转到不同的目录并手动一个接一个地加载这些文件)。
我需要帮助来自动执行 netrw 中的文件加载过程。
我尝试自己使用 execute
和 normal!
来完成,但似乎存在一些问题(因为像 execute 'normal! /root'
这样的搜索操作似乎不起作用)。
我尝试使用 <CR>
,但出现 Trailing characters
错误。
我知道我要加载的文件的绝对路径。如何自动执行文件加载过程?
您已经在问题中使用了正确的术语:sessions 可以帮助解决这个问题。您通过 :mksession
创建一个;这基本上会生成一个 Vim 脚本,当在新的 Vim 实例中执行(通过 :source Session.vim
)时,将恢复所有当前缓冲区。这也适用于 netrw 的远程缓冲区 - 我只需要通过 :e!
重新加载即可再次获取内容。
注意:有些插件可以进一步简化会话处理;我可以推荐 vim-session 插件。
我经常使用 vim 及其 netrw 插件编辑远程文件。很多次,我不得不关闭当前会话并稍后重新开始一个完整的新会话。但是加载所有这些文件(其中很多)需要花费大量时间和精力(因为我需要转到不同的目录并手动一个接一个地加载这些文件)。
我需要帮助来自动执行 netrw 中的文件加载过程。
我尝试自己使用 execute
和 normal!
来完成,但似乎存在一些问题(因为像 execute 'normal! /root'
这样的搜索操作似乎不起作用)。
我尝试使用 <CR>
,但出现 Trailing characters
错误。
我知道我要加载的文件的绝对路径。如何自动执行文件加载过程?
您已经在问题中使用了正确的术语:sessions 可以帮助解决这个问题。您通过 :mksession
创建一个;这基本上会生成一个 Vim 脚本,当在新的 Vim 实例中执行(通过 :source Session.vim
)时,将恢复所有当前缓冲区。这也适用于 netrw 的远程缓冲区 - 我只需要通过 :e!
重新加载即可再次获取内容。
注意:有些插件可以进一步简化会话处理;我可以推荐 vim-session 插件。