Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2358688
  • 博文数量: 527
  • 博客积分: 10343
  • 博客等级: 上将
  • 技术积分: 5565
  • 用 户 组: 普通用户
  • 注册时间: 2005-07-26 23:05
文章分类

全部博文(527)

文章存档

2014年(4)

2012年(13)

2011年(19)

2010年(91)

2009年(136)

2008年(142)

2007年(80)

2006年(29)

2005年(13)

我的朋友

分类:

2009-10-22 01:39:06

受 C#的SnippetCompiler 的启发, 最重要的是基于我自己的需要, 就象我希望经常在SnippetCompiler中对C#, 对.NET类库所做的那样, 我希望有一个同类的工具是针对C/C++的, 这样我可以在里面试用我不熟悉的一个库函数, 或者探索STL, boost的特性, 在这里实验之后把相关代码的用法移到产品代码中.

遗憾的是, 合我意东西并没找到, 有人开发轻量级的C++ IDE, 但所谓轻量级, 对一个SnippetCompiler来说, 要求还是过多了, 我的要求:

一键启动, 一键说的有点过火, 我目前的使用经验来说, 最有效的方式是使用slickrun, 在里面键入要启动的程序名字(可以自己定义名字, 不一定需要是原始的exe文件名)的开始部分, 直接回车. 对SnippetCompiler可以做到. 对任何应用程序都可以做到, 这还只是应用程序本身的启动.

那么Vim呢. 因为应用的比其它程序更频繁, 我需要一个全局的一键启动, 绕过slickrun, 连在slickrun的小窗口里键入vim这3个字都给省去, 我用CTRL+ALT+X 来启动一个唯一的vim进程, 如果这个进程已经启动, 则直接切换到这个进程, 激活其主窗口为活动窗口, 接受焦点, 办法是使用autohotkey, 其配置文件如下, 原理不在这里详述:
^!x::Run D:\Vim\Vim72\gvim.exe -f --servername daily_gvim  --remote-tab-silent "+silent call remote_foreground('daily_gvim')" E:\work\tips\misc.xml

然后, 在这个vim窗口中, 我理想中的C++ SnippetCompiler应该一行代码都不用键入, 就可以以一个键启动编译, 连接, 运行, 并将结果显示在一个结果窗口中, 正如VS中的output窗口一样, 这里的一键可没有任何夸大的广告成分, 我的定义是F5, 用VC编译器做, F6, 用mingw中的g++做, F9, 用pc-lint检查代码质量.

输出结果无论对错, 都在output窗口中.

这个东西我已经使用有一段时间了, 一直觉得自己的需求可能别人不会感兴趣, 但又觉得一个C++程序员有这样的需要很正常, 这样可以最大地简化一个C++程序员想以代码验证自己的想法的流程, 对于简单的几行代码, 我不会在产品所在的工程里做, 也不想在VS中新建一个命令行窗口, 更不想被迫为目录, 项目名, 文件起名字, 我想要的就是直接键入代码, 运行看到结果. 如有错误, 显示出来.

以前我干这种事可是要写一个test.cpp, 然后打开一个黑乎乎的DOS窗口, 运行vcvars32.bat(得有多少次忘记这个), 然后运行
cl test.cpp
test.exe
如果程序有错误, 再次用gvim.exe test.cpp打开, 修改, 保存, 重来.
最后, 结果满意时, 当前目录生成了多少个临时文件? 能否记得都删除掉.

想试boost, 加上/I /L 参数吧.

如果你想让一段代码最大程度地符合语言标准, 想同时用VC和Gcc把代码拉出来溜溜, 就再玩一遍gcc的命令行吧.

北大的 Cheng Sheng同学的一封mail促使我把自己的这个私房菜公开, 他要用的工具我不了解, 但我下面展示的这个简单的GIF动画应该是他想要的结果(最好把GIF下载到本地看原始大小, 博客所在网站会缩放).


现在已经是01:36, 明天还要去海驾考桩, 整个一套东西的实现三言两语说不清楚. 上面这一段, 先吊吊大家的胃口.
阅读(1560) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~