使用BabeLua3.x在cocos2d-x中编辑和调试Lua
BabeLua是一款基于VS2012/2013的Lua集成开发环境,具有Lua语法高亮,语法检查,自动补全,快速搜索,注入宿主程序内对Lua脚本进行调试,设置断点观察变量值,查看堆栈信息等功能。
如何安装
请参考《系列1—BabeLua入门》
新建Lua工程
在VS菜单上选择:【lua】【New Lua Project】创建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)Lua project name
Lua工程名称。
点击【OK】按钮创建Lua工程。
Lua文件管理
上图中,点击右键可以新建文件夹,新建/删除Lua文件,文件重命名等。
快速查找Lua文件
使用快捷键Alt + L启动查找Lua文件窗口,输入部分Lua文件名称即可快速查找文件。
显示行号、缩进(使用tab或空格)、自定义VS主题颜色
通过VS菜单[工具]->[选项]打开设置界面
快速定位函数和变量(Outline Explorer)
快捷键:Ctrl+2
Lua语法高亮、语法检查、自动补全
Lua语法高亮、语法检查、自动补全效果如下图:
智能补全和全词补全
自动补全列表的2个Tab页“IntelliSense”和“All Words”分别为智能补全和全词补全。
智能补全:列出了经过语法分析后的单词(精准)
全词补全:列出了所有出现过的单词(完整)
默认打开的是智能补全,使用快捷键Ctrl+J可以在智能补全和全词补全之间进行切换。
智能补全:
全词补全:
添加cocos2d自动补全词库
cocos2d-x词库下载:
下载地址:http://pan.baidu.com/s/1sjmC169
选择下载对应版本的cocos2d-x词库文件,放在【我的文档】【BabeLua】【Completion】目录下,重新启动VS即可。
Windows7,Windows8如何打开【我的文档】目录?
在桌面上双击打开计算机,在左侧列表中点击“文档”即可打开【我的文档】目录。
代码段补全
输入代码段关键字,按Tab进行代码段补全
快速搜索关键字
Ctrl+双击: 从当前文件搜索
Alt+双击: 从当前项目中搜索
Ctrl+F: 从当前文件搜索
Ctrl+Shift+F: 从当前项目中搜索
快速查找函数
快捷键:Ctrl+P
转到定义 (变量,函数)
快捷键:F12
将光标定位到变量或函数上,按F12即可跳转到该变量或函数的定义。
格式化代码
Ctrl + K,Ctrl + D:格式化当前文件
Ctrl + K,Ctrl + F:格式化选中代码
注释
Ctrl + K,Ctrl + C:注释选定文本行
Ctrl + K,Ctrl + U:取消注释选定文本行
代码折叠
Ctrl + M,Ctrl + M:折叠或取消折叠当前代码块
Ctrl + M,Ctrl + L:折叠或取消折叠文档中全部代码块
同步文件和文件夹
右键点击Lua工程或目录,选择“Synchronize files and folder”可以将外部的文件和文件夹同步到Lua工程中。
Lua调试
设置Lua项目为启动项目
当您的“解决方案管理器”中包含多个项目时,需要将Lua项目设置为启动项目。
设置断点
鼠标点击左侧灰色区域添加断点(设置断点快捷键F9)。
启动调试
按F5启动“Lua exe”进程开始调试。
查看变量、堆栈信息、输出信息
命中断点后,可以查看变量及堆栈信息,如下图:
(1)堆栈信息
(2)监视变量
(3)鼠标移动到变量上即可查看变量值
(4)断点信息
(5)输出信息
按F10逐过程,F11逐语句进行跟踪调试。
按F5继续运行HelloLua.exe
调试快捷键
F5:继续
F9:添加/删除断点
F10:逐过程
F11:逐语句
Shift+F5:停止调试
cocos2d-x+Lua开发者欢迎加入QQ讨论群
Lua fans QQ群:95814965
使用BabeLua3.x在cocos2d-x中编辑和调试Lua的更多相关文章
- 使用BabeLua在cocos2d-x中编辑和调试Lua
使用BabeLua在cocos2d-x中编辑和调试Lua BabeLua是一款基于VS2012/2013的Lua集成开发环境,具有Lua语法高亮,语法检查.自己主动补全.高速搜索,注入宿主程序内对Lu ...
- 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插件.
随机推荐
- 洛谷P1339 [USACO09OCT]热浪Heat Wave 题解
题目传送门 这道题实际非常简单好奇是怎么变黄的... 其实也就是一个SPFA,本人非常懒,不想打邻接表,直接用矩阵就好啦... #include<bits/stdc++.h> using ...
- js获取json对象中的key和value,并组成新数组
//比如有一个json var json = {"name" : "Tom", "age" : 18}; //想分别获取它的key 和 va ...
- logstash收集rsyslog日志
(1)rsyslog配置 在192.168.1.31配置 #vim /etc/rsyslog.conf *.* @@192.168.1.32:514 //所有设备名,所有日志级别都发送到192.168 ...
- JSTL-3
.循环标签:forEach标签, forTokens标签 <c:forEach>:标签:该标签根据循环条件遍历集合(Collection)中的元素 <c:forEach [var=& ...
- centos7 默认进入系统命令行模式修改
systemctl get-default #查看系统启动进入默认模式 systemctl set-default graphical.target #改成默认进入 图形界面模式 systemctl ...
- Python并发编程-进程
由于GIL(全局解释锁)的问题,多线程并不能充分利用多核处理器,如果是一个CPU计算型的任务,应该使用多进程模块 multiprocessing .它的工作方式与线程库完全不同,但是两种库的语法和接口 ...
- Python中的模块(2)
1.内置模块2.扩展的 例如:django3.自定义的 文件import demodef read(): print('my read func')demo.read()print(demo.mone ...
- 【BZOJ 4031】 4031: [HEOI2015]小Z的房间 (Matrix-Tree Theorem)
4031: [HEOI2015]小Z的房间 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 1089 Solved: 533 Description ...
- java 抽象类 接口 区别
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 接口 里面 都是抽象方法. 接口里面的 字段 都是 public static fina ...
- BZOJ4552 HEOI2016排序
太棒了!思路很不错. 没想到HEOID1三道线段树. 这题我们可以二分答案,将小于他的在线段树中设成0,大于他的设成1然后模拟操作复杂度O(mlog^2n) By:大奕哥 #include<bi ...