博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
quick cocos2d-x 2.2.4 window环境调试
阅读量:6257 次
发布时间:2019-06-22

本文共 1765 字,大约阅读时间需要 5 分钟。

BabeLua简介

BabeLua是一款基于VS2012/2013(简称VS)的免费开源的Lua集成开发环境,在Lua编辑和调试方面,具有如下功能和特性:

●Lua语法高亮

●语法检查

●自动补全

●一键注释

●格式化代码

●自定义代码折叠

●工程管理

●快速搜索和跳转

●文件大纲

●注入宿主程序内对Lua脚本进行调试

●设置断点观察变量值

●查看堆栈信息 

 

如何安装

第一步:确定您已安装VS2012/2013

BabeLua是VS插件,类似visual assist 

第二步:下载BabeLua安装包

  主站下载(国外站点,可下载最新源码)

  国内镜像(速度较快)

第三步:安装BabeLua

双击BabeLua.vsix进行安装 

第四步:验证安装

启动VS2012/2013,在主界面菜单上找到【Lua】菜单项,即安装成功。  

主界面

  

 上图中,数字序号对应的界面分别是:

(1)BabeLua在VS上插入的菜单;

(2)“Folder Explorer”是一个轻量级的Lua文件管理界面;

(3)源码编辑区域;

(4)显示当前编辑的Lua文件大纲列表;

(5)“Outline Explorer”是一个显示当前Lua文件大纲的界面;

(6)“Search Result”是快速搜索结果界面;

(7)系统调试界面区域;

(8)BabeLua工具栏;

(9)快速定位函数和变量界面;

 建议您将“Folder Explorer”、“Outline Explorer”、“Search Result”等界面,拖动并停靠在您喜欢的位置。

 

BabeLua编辑调试Lua脚本

(1)Lua scripts folder

          Lua代码的路径,该目录下的所有Lua文件将在“Folder Explorer”中列出。

 (2)Lua exe path(调试时使用,调试时必填参数)

          调试时启动的exe文件路径,简称Lua exe。

 (3)Working path(调试时使用,调试时可选参数)

          启动“Lua exe”时,此参数作为启动进程的working directory参数。

          一般可与“Lua scripts folder”一致,不设置该项则缺省值为“Lua exe”所在目录。

          Tips:调用Windows API的GetCurrentDirectory就会得到这个路径。

 (4)Commond line(调试时使用)

          启动调试时传递给“Lua exe”的命令行参数。

 (5)Setting name

          本套参数的名称。

          上图的“New folder Setting”支持设置多套参数,您可以在多套参数之间切换。

 (6)New file encodeing

          新建Lua文件编码格式(默认使用UTF8编码)。

Lua调试 

临时项目

当您在“Folder Explorer”界面中打开任意一个Lua文件时,系统会自动创建一个名称为temp_[Setting name]的临时VS项目,它将被用于调试。

备注:最多仅创建一个项目,此项目仅用于调试,不建议您作为其它用途。 

如下图,当您的“解决方案管理器”中包含多个项目时,想要调试Lua项目,需要首先将该项目设置为启动项目(调试quick cocos2dx项目调试时需要创建一个Lua工程,并将其设置为启动项目)。

  

设置断点

了解VS设置断点的读者可跳过此段内容;

 如下图,可用鼠标点击左侧灰色区域添加断点,设置断点快捷键F9。

  

启动调试

了解VS启动调试的读者可跳过此段内容;

按F5启动调试“Lua exe”进程开始调试。

查看变量、堆栈信息、输出信息

 命中断点后,可以查看变量及堆栈信息,如下图:

 

上图序号中的信息分别是:

(1)堆栈信息

(2)监视变量

(3)鼠标移动到变量上即可查看变量值

(4)断点信息

(5)输出信息 

跟踪调试

跟踪调试快捷键:

F5:继续

F9:添加/删除断点

F10:逐过程

F11:逐语句

Shift+F5:停止调试

命中断点后按F10逐过程,F11逐语句进行跟踪调试。

跟踪调试完成后按F5继续运行程序,或者按Shift+F5停止调试。

 

更多使用技巧进入博客:

转载于:https://www.cnblogs.com/DswCnblog/p/4393044.html

你可能感兴趣的文章
RTP timestamp与帧率及时钟频率的关系
查看>>
企业门户平台解决方案
查看>>
过滤器入门
查看>>
深入浅出讲解:php的socket通信
查看>>
Photoshop 批量处理图片
查看>>
浅谈C# 多态的魅力(虚方法,抽象,接口实现)
查看>>
jQuery--百度百科
查看>>
Unity3D 之2D动画机
查看>>
基础知识系列☞闲言
查看>>
蓝牙Ibeacon室内定位和微信摇一摇周边原理分析
查看>>
架构设计:负载均衡层设计方案(7)——LVS + Keepalived + Nginx安装及配置
查看>>
virtualbox端口转发
查看>>
DiscuzX2.5 程序底层架构
查看>>
Jenkins_多项目构建(二):使用Maven聚集关系
查看>>
三大做空工具详解
查看>>
linux全方位掌握一个命令--思路比方法更重要
查看>>
[Flexbox] Use Flex to Scale Background Image
查看>>
【等待事件】序列等待事件总结(enq: SQ - contention、row cache lock、DFS lock handle和enq: SV - contention)...
查看>>
算法与数据结构(七) AOV网的拓扑排序(Swift版)
查看>>
maven pom.xml解释 (转)
查看>>