Vim是否有办法在屏幕会话中使用所有打开文件中的单词来自动完成?

Vim是否有办法在屏幕会话中使用所有打开文件中的单词来自动完成?,vim,autocomplete,gnu-screen,Vim,Autocomplete,Gnu Screen,标题说的是: 启动屏幕(如GNU屏幕中的屏幕多路复用器) 在Vim中打开文件 创建一个新的屏幕窗口 在那个窗口中打开文件 切换回第一个屏幕窗口,让Vim识别另一个屏幕窗口中的文件内容,并在自动完成操作中使用它 这有点像Vim识别所有缓冲区中的内容以便在autocomplete中使用,但不是缓冲区,而是屏幕窗口。没有内置的方法来实现这一点(怎么可能?Vim不知道它是从哪里启动的。)但您可以(通过相当多的努力)实现类似的功能。这里只是一个提纲;我希望这足以让你泄气: Vim允许通过'comple

标题说的是:

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

这有点像Vim识别所有缓冲区中的内容以便在autocomplete中使用,但不是缓冲区,而是屏幕窗口。

没有内置的方法来实现这一点(怎么可能?Vim不知道它是从哪里启动的。)但您可以(通过相当多的努力)实现类似的功能。这里只是一个提纲;我希望这足以让你泄气:

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


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

这无法完成。你为什么不直接使用Vim自己的
/
和windows?谢谢!使用screen icm Vim是我当前的工作流程,但你是对的,我最好使用Vim的“窗口”功能。