cocos2d-x+lua开发模式下编辑器的选择
1、IntelliJ IDEA Community Edition
这个是跟eclipse同等地位,但是各方面都优秀很多的IDE,Android后来也基于这个搞了个Android Studio,试图取代基于eclipse的ADT。
优点是性能优异,代码提示方便(手打的过程中直接提示,而且几乎没有卡顿)。如果我是java开发那就是不二选择。
不过我试验了一下它的lua插件,感觉不是很好用。在提示上反而更像一个文本编辑器而不像一个智能的IDE(合情合理,毕竟只是一个插件),这个比CocosIDE要差很多。理论上好好设置下lua的提示文件(跟cocoside格式不同,而且感觉信息很少,比如就没有函数参数信息和返回值信息)是可以达到比较理想的效果的。但是可惜我不会......
2、Lua Studio
这个貌似是国人写的。非常不错,速度很快,代码提示也很不错。直接支持cocos2d-x 3.x的版本。而且也支持outline等功能。 不过它有一个致命的问题,就是它没有直接运行程序的功能,只有调试程序的功能。而调试程序连接CocosIDE的run time程序非常慢,要十秒钟才能启动程序。而我写lua程序,调试可以偶尔为之,但是运行程序必然是经常性的。 这点我就无法接受了。 当然我也可以把它当做纯lua文本编辑器,直接运行程序。 不过那样我又要改动run time的代码,加入Console窗口来输出log信息,否则哪里出错都不知道。
我有些思考,即便做到了99%,但是有一点没有做好也可能造成用户流失。 甚至这一点没有做好都不一定是软件本身的问题,有可能是用户无知或者误操作。但是现实就是用户流失,说多少遍“这不是我的错”都没用。 软件如此,游戏也是如此。
3、Bade vs plugin
这个是一个vs插件,同样具备调试功能。可以跟vs比较不错的嵌入到一起。 缺点是没有真正的代码提示。 只有本文件内输入的提示。
4、Sublime Text3
试了几个都有不爽的地方,最后还是回到了Sublime Text。 曾经我是用Vim的,但是用了Sublime Text,我就不想去碰Vim了,同样是跨平台、支持各种插件、功能强大的编辑器,我为什么不使用一个简洁漂亮的,而认为一个编辑器要分三种操作模式才是高大上?
当然就像Vim虽然可扩展,但是本质只是一个文本编辑器而不是IDE。不过我们写lua脚本也同样不是写c++代码,并不需要多么强大的IDE支持。
Sublime本身对lua就有一定的支持,而且编辑器本身就有强大的代码补全、文件搜索、文件跳转、内容跳转等功能,所以基础功能是没什么问题了。 网上还有一个QuickXDev的插件,是给quick-cocos2dx开发用的。不过由于cocos2-x v3 lua绑定方式改变了,所以对cocos2d-x原生的代码提示还没有完成,只有lua部分。
另外我添加了一个Cocos2dx的Build选项,说是Build,其实就是运行Runtime程序。log可以直接在Sublime中输出。
选择Tools--Build--New Build System,将下面的代码拷贝过去,并保存,然后就可以选择这个Build了。
- {
- "cmd": ["E:\Code\runtime\win32\game.exe", "$file"],
- "file_regex": "^(?:lua:)?[t ](...*?):([0-9]*):?([0-9]*)",
- "selector": "source.lua",
- "shell": true,
- "working_dir" : "E:\Code\runtime\win32"
- }
其中cmd是程序的目录,shell为true可以让程序独立显示出来,否则只是命令行输出在sublime中,working_dir顾名思义就是工作目录(资源目录)。
总结:暂时没有尽善尽美的编辑器,我现在打算用Sublime Text3,虽然他也不完美,但是扩展性良好,而且就文本编辑器来说是接近完美的。
