我刚从emacs切换到vim,使用MacVim和Janus.在emacs中,您可以拥有一个仅供shell使用的缓冲区.这可能在MacVim?调试时非常有用.
这也让我问 - 有没有办法在vim中编译类似于emacs:你输入meta-x编译,然后能够点击错误把光标带到相关的行?
我只想弄清楚MacVim的良好工作流程,并想要一个好方法来修复我的错误,而不必排列终端和MacVim并排.任何建议表示赞赏
Vim本身不进行任何终端仿真,但您可以使用Conque插件在Vim窗口内提供终端仿真.Conque需要支持Python的Vim(MacVim就足够了).
但是,如果您的工作流程专注于跳转到命令行工具报告的位置,那么您真的应该尝试使用quickfix系统(请参阅参考资料:help quickfix).
通常,您只需运行:make以调用您的编译器(通常通过make,但可以使用该makeprg选项进行自定义;另请参阅:compiler),并且Vim将使用该errorformat选项的值来解析任何生成的消息并构建quickfix列表.然后,您可以使用以下命令导航报告的位置
:cc N - 转到位置号码N,:cn - 下一个位置,:cp - 以前的位置,:cnf - 下一个文件中的下一个位置(即跳过当前文件中的其余位置),:cw - 在缓冲区中打开位置列表,您可以在其中查看消息,然后按Enter键跳转到该位置.的默认值makeprg和errorformat通常为细解析的输出make和cc/ gcc,但它可能需要更改以从其他构建系统或编译器处理的消息.
该:grep命令的工作方式类似于:make(它使用grep命令报告的位置填充quickfix列表).