0

标题说的是全部:

  • 启动 Screen(如 GNU Screen 中的屏幕多路复用器)
  • 在 Vim 中打开文件
  • 创建一个新的屏幕窗口
  • 在该窗口中打开文件
  • 切换回第一个 Screen 窗口,让 Vim 重新识别另一个 Screen 窗口中的文件内容,并在自动完成操作中使用它。

有点像 Vim 识别所有缓冲区中的内容以用于自动完成,但不是缓冲区,而是屏幕窗口。

4

1 回答 1

1

没有内置的方法来实现这一点(怎么可能?Vim 不知道它是从哪里启动的。)但是你可以(付出相当大的努力)实现这样的东西。这里只是一个大纲;我希望这足以阻止你这样做:

Vim 允许通过'completefunc', cp 实现自定义插入模式完成。:help complete-functions. 要从其他屏幕会话中运行的其他 Vim 获取源代码,您可以使用 Vim 客户端-服务器通信:help remote.txt来询问它们的打开缓冲区。然后它“只是”打开它们并解析它们以完成匹配的问题(在你的 Vim 或远程的)。

但为什么要一路走?我宁愿在单个 Vim 实例中打开这些相关文件;毕竟,Vim 允许非常灵活的布局,包括窗口拆分和标签页本身。(您仍然可以使用系统剪贴板偶尔共享文本片段。)

于 2013-06-27T08:58:47.650 回答