如何成功使用VIM作为Code :: Blocks的外部编辑器?

时间:2009-09-12 15:06:08

标签: c++ vim ide codeblocks

我非常喜欢Code :: Blocks作为其构建系统并逐步调试功能 - 即我非常喜欢使用封装到gcc / gdb而不是使用Makefile或命令行。问题是,经过多年的VIM使用,我已经大脑损坏(或者有些人可能已经损坏了),我无法在标准的Windows文本编辑器中进行编辑。

因此,我设置Code :: Blocks以使用VIM作为 .cpp / .c / * .h的文件处理程序以及VIM的--server-name和--remote-tab选项可以右键单击我的C :: B项目窗口中的文件,然后选择用文件扩展名处理程序打开它们,它们在单个VIM窗口中弹出为新选项卡 - 然后我切换回C :: B,点击F9到建立和运行等。

我想改进我的工作流程,所以问题有两个:

  1. 当我双击项目中的文件时,我可以默认使C :: B打开VIM 文件列表而不必右键单击 - >打开文件扩展名处理程序?

  2. 我可以在VIM中进行一些绑定,这样我就可以点击一个按钮并拥有Code :: Blocks 构建/运行/调试我的项目?

  3. WRT 2,我知道C :: B有重建项目的命令行选项,但这与打开C :: B窗口并看到编译日志/监视窗口不同。我还注意到C :: B有一个非常基本的DDE接口 - 我可以使用VIM发送DDE命令吗?也许有一个简单的SendKeys插件我还没发现我可以破解工作?

    或者,是否有像C :: B这样轻巧且极简的IDE,这使得使用外部编辑器非常容易?我不准备运行Eclipse,在Visual Studio中使用Microsoft的编译器让我感到窒息。

    任何帮助表示感谢。

    谢谢, 约翰

1 个答案:

答案 0 :(得分:3)

  1. 在挖掘之后,我必须得出结论,答案是否定的。 Open选项仅在C :: B中打开。
  2. Vim支持使用内置命令构建项目。如果你有C :: B生成你的Makefile(它应该是 - 我从来没有达到我想要的方式),那么确保Vim的工作目录(:cd),然后就可以了只需键入:make和Vim,默认情况下将调用当前目录中的make。您可以:set makeprg运行您需要的任何脚本,包括运行任何配置脚本。我还将此添加到我的.vimrc

    :map <F8> :make<CR>
    :imap <F8> <Esc>:make<CR>a
    :vmap <F8> <Esc>:make<CR>a
    

    它适用于我的目的,因为:make也会将GCC输出中的错误和警告放入检查窗口。 :cn导航到包含下一个错误的文件。