是否有任何插件/方法来管理Vim中的多个项目?
我总是同时从事多个项目。我所拥有的档案数目如下:是否有任何插件/方法来管理Vim中的多个项目?,vim,plugins,project-management,Vim,Plugins,Project Management,我总是同时从事多个项目。我所拥有的档案数目如下: Project | Files -------------------------- Thesis 20 Simulator 50 Plots 30 Graphs 30 Website 500+ 将所有这些文件放在一个窗口中很麻烦。有几种选择,我将讨论他们的缺点,或者我敢说他们的致命弱点 拆分窗口我可以将vim拆分为5个窗口,每个项目一个,
Project | Files
--------------------------
Thesis 20
Simulator 50
Plots 30
Graphs 30
Website 500+
将所有这些文件放在一个窗口中很麻烦。有几种选择,我将讨论他们的缺点,或者我敢说他们的致命弱点
论文
选项卡中,我只想浏览这20个缓冲区,而不是所有500多个与网站相关的缓冲区。当我将这些内容保存为会话时,如果我不小心切换到我的论文
选项卡中的网站
缓冲区,退出,然后在进入后我有两个网站
选项卡,可能会导致问题。这是进一步的问题,因为我为每个选项卡设置了本地目录(:lcd
)+
寄存器中)。我也不能再在所有缓冲区上使用:buffdo
。此外,我喜欢这样一个事实:我可以将我所有的vim选项卡保存到一个会话中- 在第3点中,您写道“我也不能再在所有缓冲区上使用:buffdo。”。为什么要使用在多个不同项目的所有打开缓冲区上工作的命令
- 您真的同时打开了500多个缓冲区吗?我知道Vim可能可以处理它,但为什么要打开那么多缓冲区?我以网络开发为生,而且我很少在一天内处理十几个以上的文件,即使是“大型”项目
- 全局寄存器要模拟使用全局寄存器,以便能够跨vim的不同实例复制粘贴,请通过将行
添加到.vimrc文件,将系统剪贴板和未命名寄存器“管道”在一起。这具有所有拉伸/删除的效果。。。正在复制到系统剪贴板的操作。从那里,vim的其他实例将可以访问它。类似地,在vim之外进行的任何复制粘贴现在都将存储在未命名寄存器中set clipboard=unnamedplus
- Gnome终端选项卡快捷键转到下一个和上一个选项卡的默认快捷键是Ctrl-Pg Up和Ctrl-Pg Dn。由于我对下一个和上一个缓冲区使用Shift k和Shift j,所以我将Ctrl k和Ctrl j映射到下一个和上一个选项卡。只需转到Gnome终端>编辑>键盘快捷键
- Gnome终端选项卡编写一个shell脚本,将每个vim实例作为新的终端选项卡启动
- Vim实例最后,为每个Vim实例保存一个会话文件
:mksession fileName
它并不完美(例如,命名寄存器不能跨终端复制),但在我看来,它更能代表视口(这里称为“选项卡”)的功能
- 我找到了一种方法。vim卡舌几乎无用。相反,我使用了Gnome终端选项卡
编辑我实际上已经回到了使用vim选项卡。我学习了vim脚本,并将我的键映射到ShiftJ和ShiftK映射到上一个/下一个缓冲区,CtrlJ和CtrlK映射到上一个/下一个选项卡。然后我下载了脚本,以便设置有意义的选项卡名称,然后修改vim会话的制作以保存选项卡名称(请参阅),然后从gVim切换回vim,以便使用全屏模式。这是一个漫长而艰苦的旅程,但我认为这是值得的。BufExplorer插件可以按标签对缓冲区进行分组。CtrlP插件可以重用来自另一个选项卡的缓冲区。我使用多个vim实例来同时处理不同的项目,但这并不令人满意。我最终不得不在终端中打开许多选项卡 我一直在使用VimRooter,这是一个简单的插件,可以自动改变工作状态