使用BabeLua在cocos2d-x中编辑和调试Lua

BabeLua是一款基于VS2012/2013的Lua集成开发环境,具有Lua语法高亮,语法检查。自己主动补全。高速搜索,注入宿主程序内对Lua脚本进行调试,设置断点观察变量值。查看堆栈信息等功能。

怎样安装BabeLua

请參考《系列1—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的更多相关文章

  1. 使用BabeLua3.x在cocos2d-x中编辑和调试Lua

    BabeLua是一款基于VS2012/2013的Lua集成开发环境,具有Lua语法高亮,语法检查,自动补全,快速搜索,注入宿主程序内对Lua脚本进行调试,设置断点观察变量值,查看堆栈信息等功能. 如何 ...

  2. alv中编辑的时候quan字段小数位数被截取掉

    alv中编辑的时候quan字段小数位数被截取掉:位数太多(最大只能为 0) 解决方法: ls_fcat-fieldname  =  'ZKBSL'.  ls_fcat-coltext  =  '卡板数 ...

  3. 在网页中编辑报表的报表设计器Stimulsoft Reports Designer.Web报表控件

    Stimulsoft Reports Designer.Web报表控件是一款网页报表设计器.您想在网页中编辑您的报表吗?现在是可能的! Stimulsoft Reports Designer.Web ...

  4. 如何在cocos2d项目中enable ARC

    如何在cocos2d项目中enable ARC 基本思想就是不支持ARC的代码用和支持ARC的分开,通过xcode中设置编译选项,让支持和不支持ARC的代码共存. cocos2d是ios app开发中 ...

  5. 如何在Cocos2D游戏中实现A*寻路算法(六)

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...

  6. 如何在Cocos2D游戏中实现A*寻路算法(一)

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...

  7. word中编辑论文公式对齐问题

    这里只说在word中编辑公式时,公式居中,编号右对齐的情况. 在编辑公式时,我平时就是右对齐,然后通过敲击空格键进行公式的居中,然而这样并不美观.所以接下来学习一下: 1)首先打开视图-->标尺 ...

  8. qt creator中编辑Makefile的设置

    在qt creator中编辑Makefile时的Tab键总是不能识别,需要这样设置

  9. eclipse中编辑properties文件无法看到中文

    如果在eclipse中编辑properties文件无法看到中文则参考“Eclipse开发环境配置-indigo.docx”添加propedit插件.

随机推荐

  1. 树莓派 rtl8188eu 芯片wifi驱动

    总算是找到了.现拿出来分享.參考地址:https://www.raspberrypi.org/forums/viewtopic.php? p=462982#p462982 下载的地址是:https:/ ...

  2. 自己定义Android Dialog

    private void showDialog() { mDialog = new Dialog(this); mDialog.setCanceledOnTouchOutside(true); Win ...

  3. Oracle 中UNDO与REDO的差别具体解释

    一 为了更清楚的看出2者差别,请看下表:                                               UNDO                             ...

  4. angularjs1-路由

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  5. React组件化开发

    环境搭建: 1.安装node.js 2.安装cnpm  # npm install -g cnpm --registry=https://registry.npm.taobao.org 3.全局安装c ...

  6. 浅谈SpringCloud (二) Eureka服务发现组件

    上面学习到了如何由一个程序访问另一个程序,那么如果使用SpringCloud来进行访问,该如何访问呐? 可以借助Eureka服务发现组件进行访问. 可以借助官方文档:https://spring.io ...

  7. dragView 屏幕拖拽并且弹出菜单的控件

    dragView 因项目新需求需要添加一个屏幕拖拽按钮可以弹出菜单的控件,因为不是我做的闲来无事写一个demo吧 可能存在一些小bug(毕竟就写了几个小时)兄弟姐妹们理解思路就行 具体的可以自己调试一 ...

  8. LIst和map的遍历

    1. public static void main(String[] args) { // ArrayList类实现一个可增长的动态数组 List<String> list = new ...

  9. 边框的使用,border-radius,box-shadow,border-image

    <html>    <head>        <meta charset="UTF-8">        <title></ ...

  10. Python多线程一学就会!

    免费Python课程:阿里云大学——开发者课堂 Python中使用线程有两种方式:函数或者用类来包装线程对象. 函数式:调用thread模块中的start_new_thread()函数来产生新线程.语 ...