我非常喜欢Code :: Blocks作为其构建系统并逐步调试功能 - 即我非常喜欢使用封装到gcc / gdb而不是使用Makefile或命令行。问题是,经过多年的VIM使用,我已经大脑损坏(或者有些人可能已经损坏了),我无法在标准的Windows文本编辑器中进行编辑。
因此,我设置Code :: Blocks以使用VIM作为 .cpp / .c / * .h的文件处理程序以及VIM的--server-name和--remote-tab选项可以右键单击我的C :: B项目窗口中的文件,然后选择用文件扩展名处理程序打开它们,它们在单个VIM窗口中弹出为新选项卡 - 然后我切换回C :: B,点击F9到建立和运行等。
我想改进我的工作流程,所以问题有两个:
当我双击项目中的文件时,我可以默认使C :: B打开VIM 文件列表而不必右键单击 - >打开文件扩展名处理程序?
我可以在VIM中进行一些绑定,这样我就可以点击一个按钮并拥有Code :: Blocks 构建/运行/调试我的项目?
WRT 2,我知道C :: B有重建项目的命令行选项,但这与打开C :: B窗口并看到编译日志/监视窗口不同。我还注意到C :: B有一个非常基本的DDE接口 - 我可以使用VIM发送DDE命令吗?也许有一个简单的SendKeys插件我还没发现我可以破解工作?
或者,是否有像C :: B这样轻巧且极简的IDE,这使得使用外部编辑器非常容易?我不准备运行Eclipse,在Visual Studio中使用Microsoft的编译器让我感到窒息。
任何帮助表示感谢。
谢谢, 约翰
答案 0 :(得分:3)
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
导航到包含下一个错误的文件。