使用BabeLua在cocos2d-x中编辑和调试Lua
使用BabeLua在cocos2d-x中编辑和调试Lua
BabeLua是一款基于VS2012/2013的Lua集成开发环境,具有Lua语法高亮,语法检查。自己主动补全。高速搜索,注入宿主程序内对Lua脚本进行调试,设置断点观察变量值。查看堆栈信息等功能。
怎样安装BabeLua
设置Cocos2d-x项目
在VS菜单上选择:【lua】【Settings】打开设置界面,例如以下图(左上角选中【Lua Folder】)
如上图分别设置:
(1)Lua scripts folder
Lua文件文件夹,该文件夹下的全部Lua文件将在“Folder Explorer”中列出。
(2)Lua exe path
调试时启动的exe文件路径。
(3)Working path
启动“Lua exe”时。此參数作为启动进程的working directory參数。
(4)Setting name
本套參数名称。
上图的“New folder Setting”支持设置多套參数,您能够在多套參数之间切换。
设置完毕后点【Save】button保存,再点【Select】button载入当前选择的參数,“Folder Explorer”界面将列出“Lua scripts folder”所设置文件夹下的全部Lua文件。
假设你仅仅须要调试Lua文件,你能够使用“Lua for windows”来运行Lua代码。
请參考《BabeLua系列4—BabeLua常见问题》——如何使用“Lua for Windows”运行Lua代码?
Lua编辑
Folder Explorer界面使用方法
上图中,点击右键能够新建目录。新建/删除Lua文件。文件重命名等。
查找Lua文件
使用快捷键Alt + L启动查找Lua文件窗体,输入部分Lua文件名就可以高速查找文件。
Lua语法高亮、语法检查、自己主动补全
Lua语法高亮、语法检查、自己主动补全效果例如以下图:
智能补全和全词补全
自己主动补全列表的2个Tab页IntelliSense和All Words分别为智能补全和全词补全。
智能补全:列出了经过语法分析后的单词(精准)
全词补全:列出了全部出现过的单词(完整)
默认打开的是智能补全,使用快捷键Ctrl+J能够在智能补全和全词补全之间进行切换。
智能补全:
全词补全:
加入cocos2d自己主动补全词库
cocos2d-x词库下载:
下载地址:http://pan.baidu.com/s/1sjmC169
cocos2dx-api.lua: cocos2d-x 2.2.3词库
cocos2dx3.0-api.lua:cocos2d-x 3.0词库
选择下载相应版本号的cocos2d-x词库文件,放在【我的文档】【BabeLua】【Completion】文件夹下。又一次启动VS就可以。
Windows7,Windows8怎样打开【我的文档】文件夹?
在桌面上双击打开计算机,在左側列表中点击“文档”就可以打开【我的文档】文件夹。
高速搜索keyword
(1)在打开的Lua文件里按住Alt键,鼠标双击变量名就可以高速搜索keyword。
(2)点击搜索结果能够跳转到对应的Lua文件行。
(3)在此处能够直接输入keyword名称进行搜索。
(4)点此button能够切换“Search Result”窗体中显示路径的方式:绝对或相对路径。
Lua调试
開始调试
如上图所看到的:
(1)双击打开hello.lua文件。系统会自己主动创建一个名称为temp_HelloLua的暂时VS项目
(2)在hello.lua文件里设置好断点(设置断点快捷键F9)
(3)右键点击temp_HelloLua将其设置为启动项目
然后按F5启动HelloLua.exe进程開始调试
查看变量、堆栈信息、输出信息
命中断点后,能够查看变量及堆栈信息,例如以下图:
(1)堆栈信息
(2)监视变量
(3)鼠标移动到变量上就可以查看变量值
(4)断点信息
(5)输出信息
按F10逐过程,F11逐语句进行跟踪调试。
按F5继续执行HelloLua.exe
cocos2d-x+Lua开发人员欢迎增加QQ讨论群
Lua fans QQ群:95814965
使用BabeLua在cocos2d-x中编辑和调试Lua的更多相关文章
- 使用BabeLua3.x在cocos2d-x中编辑和调试Lua
BabeLua是一款基于VS2012/2013的Lua集成开发环境,具有Lua语法高亮,语法检查,自动补全,快速搜索,注入宿主程序内对Lua脚本进行调试,设置断点观察变量值,查看堆栈信息等功能. 如何 ...
- alv中编辑的时候quan字段小数位数被截取掉
alv中编辑的时候quan字段小数位数被截取掉:位数太多(最大只能为 0) 解决方法: ls_fcat-fieldname = 'ZKBSL'. ls_fcat-coltext = '卡板数 ...
- 在网页中编辑报表的报表设计器Stimulsoft Reports Designer.Web报表控件
Stimulsoft Reports Designer.Web报表控件是一款网页报表设计器.您想在网页中编辑您的报表吗?现在是可能的! Stimulsoft Reports Designer.Web ...
- 如何在cocos2d项目中enable ARC
如何在cocos2d项目中enable ARC 基本思想就是不支持ARC的代码用和支持ARC的分开,通过xcode中设置编译选项,让支持和不支持ARC的代码共存. cocos2d是ios app开发中 ...
- 如何在Cocos2D游戏中实现A*寻路算法(六)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- 如何在Cocos2D游戏中实现A*寻路算法(一)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- word中编辑论文公式对齐问题
这里只说在word中编辑公式时,公式居中,编号右对齐的情况. 在编辑公式时,我平时就是右对齐,然后通过敲击空格键进行公式的居中,然而这样并不美观.所以接下来学习一下: 1)首先打开视图-->标尺 ...
- qt creator中编辑Makefile的设置
在qt creator中编辑Makefile时的Tab键总是不能识别,需要这样设置
- eclipse中编辑properties文件无法看到中文
如果在eclipse中编辑properties文件无法看到中文则参考“Eclipse开发环境配置-indigo.docx”添加propedit插件.
随机推荐
- JavaScript中==和===区别
在我们的日常编码中对于===是不常用的,但是它很重要 ===:表示绝对相等(严格) !==:表示不绝对相等 ==:表示相等(不严格) !=:表示不相等 看一下列子: null==undefined ...
- HDU 4686
再不能直视这道题,换INT64就过了....... 同样可以使用矩阵的方法.构造1*5的 D[N],a[n],b[n],a[n]*b[n],1 接着你应该就会了. #include <iostr ...
- Ruby中使用patch HTTP方法
Ruby中使用patch HTTP方法 如果使用patch,在后台可以看到只更新了改动的部分: Started PATCH "/ads/5/update" for ::1 at 2 ...
- 数据结构 - 归并排序(merging sort) 具体解释 及 代码
归并排序(merging sort) 具体解释 及 代码 本文地址: http://blog.csdn.net/caroline_wendy 归并排序(merging sort): 包括2-路归并排序 ...
- HDOJ 题目3518 Boring counting(后缀数组,求不重叠反复次数最少为2的子串种类数)
Boring counting Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- Struts2 的工作原理
Struts2 的工作原理: 1)client向server发出一个http请求.webserver对请求进行解析,假设在StrutsPrepareAndExecuteFilter的请求映射路径(在w ...
- struts2学习之基础笔记5
第十章 Struts 2的输入校验 1 Struts 2 输入校验原理 a . 分类 validate()方法校验 b . validation框架校验 2 valibate()方法校验实现 步骤 ...
- 前端学习笔记-CSS
- javascript中封装scoll()方法
function scroll() { var scrollTop = window.pageYOffset || document.documentElement.scrollTop || docu ...
- Android Studio配置GreenDAO 3.2.0和使用方法
我相信,在平时的开发过程中,大家一定会或多或少地接触到SQLite.然而在使用它时,我们往往需要做许多额外的工作,像编写SQL语句与解析查询结果等.所以,适用于Android ORM框架也就孕育而生了 ...