通常当我调用:make
时,vim会构建Makefile,它会在我打开会话的文件夹中找到。这并不意味着我有兴趣构建特定的makefile。
假设我有2个打开的文件/标签,这些文件位于2个单独的文件夹中。这些文件夹都不是我开始会话的文件夹;这两个文件夹中的每一个都有一个Makefile。
有没有办法告诉vim在我现在看的标签的同一个文件夹中找到它找到的Makefile?基本上我切换到一个标签,:make
编译该文件夹中找到的Makefile
。
这样做的原因是我映射 CTRL-B
来构建makefile并且这很方便,但是当我有不同的开放项目时,每个都依赖于彼此不再起作用,因为我必须构建每个单独的项目。我想避免使用2个单独的vim实例。
答案 0 :(得分:3)
您可以在每个选项卡中使用:lcd
命令来更改工作目录。如果只要选项卡页面包含单个窗口就执行此操作,则任何将来的拆分缓冲区都将继承(窗口本地)设置,并且您实际上具有选项卡本地工作目录。
或者,:set autochdir
将始终将工作目录切换到当前缓冲区。只要您有平面项目(Makefile与您正在编辑的源位于同一目录中),这也是一个解决方案。