CN103019697A - 一种lua脚本的编辑插件 - Google Patents
一种lua脚本的编辑插件 Download PDFInfo
- Publication number
- CN103019697A CN103019697A CN2012104808386A CN201210480838A CN103019697A CN 103019697 A CN103019697 A CN 103019697A CN 2012104808386 A CN2012104808386 A CN 2012104808386A CN 201210480838 A CN201210480838 A CN 201210480838A CN 103019697 A CN103019697 A CN 103019697A
- Authority
- CN
- China
- Prior art keywords
- module
- lua script
- message
- client
- api function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
本发明提供一种LUA脚本的编辑插件,包括:文本编辑模块、与客户端的消息通信模块、XML文件模块以及API函数提醒模块,所述文本编辑模块,用于编辑显示LUA脚本,所述与客户端的消息进行通信模块,用于与客户端进行通信,接收及发送消息,并根据消息进行显示客户端设置LUA脚本指定的断点和客户端需要观察的变量;XML文件模块,用于存储所有LUA脚本中涉及到的API函数的信息;API函数提醒模块,编写LUA脚本时,遇到LUA脚本中API函数的关键词时自动检索,从所述的XML文件模块中,搜索出相关联的API函数的信息体现给客户端。本发明方便了LUA脚本编辑人员的编程,加快了编程人员的编程速度,且能快速地查找编辑错误的LUA脚本。
Description
【技术领域】
本发明涉及一种LUA脚本的编辑插件。
【背景技术】
LUA是一个小巧的脚本语言。LUA脚本可以很容易的被C/C++代码调用,也可以反过来调用C/C++的函数,这使得LUA在应用程序中可以被广泛应用。不仅仅作为扩展脚本,也可以作为普通的配置文件。LUA由标准C编写而成,代码简洁优美,几乎在所有操作系统和平台上都可以编译,运行。LUA脚本编辑人员通常是使用如Nodepad++或Editplus之类工具编辑LUA脚本。Notepad++是在Windows环境之下的一个免费的代码编辑器。Notepad++的主要功能:能支持多种的程式语言、支持同时编辑多重文件、支持多重视窗同步编辑、支持拖拽功能、全屏幕浏览功能等等。EditPlus(文字编辑器)是一套功能强大,可取代记事本的文字编辑器,EditPlus拥有无限制的撤消与重做、英文拼字检查、自动换行、列数标记、搜寻取代、同时编辑多文件、全屏幕浏览功能。而它还有一个好用的功能,就是它有监视剪贴板的功能,能够同步于剪贴板自动将文字粘贴进EditPlus的编辑窗口中,让你省去粘贴的步骤。
而现有的这类工具缺少与客户端通讯后,不能进行LUA脚本的断点提示及LUA脚本的变量显示,同时缺乏自封装的API函数的提醒功能;这样对于LUA脚本编辑人员编程极其不方便,编辑人员要完全记住API函数的关键词,而且不能快速地知道编辑错误的LUA脚本。
【发明内容】
本发明要解决的技术问题,在于提供一种LUA脚本的编辑插件,方便了LUA脚本编辑人员的编程。
本发明是这样实现的:一种LUA脚本的编辑插件,包括:文本编辑模块、与客户端的消息通信模块、XML文件模块以及API函数提醒模块,
所述文本编辑模块,用于编辑显示LUA脚本;
所述与客户端的消息进行通信模块,用于与客户端进行通信,接收及发送消息,并根据消息进行显示客户端设置LUA脚本指定的断点和客户端需要观察的变量;所述消息包括:断点显示消息、变量值显示消息、脚本执行消息;
所述XML文件模块,用于存储所有LUA脚本中涉及到的API函数的信息;
所述API函数提醒模块,通过所述文本编辑模块编写LUA脚本时,遇到LUA脚本中API函数的关键词时自动检索,从所述的XML文件模块中,搜索出相关联的API函数的信息体现给客户端。
进一步地,所述与客户端的消息进行通信模块的功能具体实现步骤如下:
步骤11、与客户端的消息进行通信模块通知客户端在LUA脚本中那一处设置LUA脚本的断点;
步骤12、通知客户端在LUA脚本中设置了哪些变量能进行观察;
步骤13、与客户端的消息进行通信模块接收脚本执行消息时,与客户端的消息进行通信模块通知客户端开始执行LUA脚本;
步骤14、收到客户端发送的断点显示消息时,通过所述文本编辑模块编写LUA脚本,LUA脚本指定的断点被触发,进行中断程序;
步骤15、收到客户端发送的变量值显示消息,显示变量值;
步骤16、LUA脚本编辑人员通过断点的触发,查找LUA脚本编写错误的地方,且能观察变量值。
进一步地,所述API函数提醒模块的功能具体实现步骤如下:
步骤21、通过所述文本编辑模块编写LUA脚本时,遇到LUA脚本中API函数的关键词;
步骤22、API函数提醒模块自动检索,从所述的XML文件模块中,搜索出相关联的API函数的信息;
步骤23、解析XML文件模块中的API函数的信息,获取函数名、函数所需传递的参数以及函数备注;
步骤24、LUA脚本编辑人员直接通过获取到的信息进行操作。
进一步地,将所述文本编辑模块、与客户端的消息进行通信模块、XML文件模块以及API函数提醒模块封装成DLL动态链接库,该DLL动态链接库能供需要的程序调用使用。
本发明具有如下优点:本发明通过与客户端的消息通信模块、XML文件模块以及API函数提醒模块之间互相协作,克服了现有的编程工具缺少与客户端通讯后,不能进行LUA脚本的断点提示及LUA脚本的变量显示,同时缺乏自封装的API函数的提醒功能的问题;方便了LUA脚本编辑人员的编程,加快了编程人员的编程速度,且能快速地查找编辑错误的LUA脚本。
【附图说明】
图1为本发明编辑插件的结构框图。
【具体实施方式】
请参阅图1所示,本发明的一种LUA脚本的编辑插件,包括:文本编辑模块、与客户端的消息通信模块、XML文件模块以及API函数提醒模块,
所述文本编辑模块,用于编辑显示LUA脚本;
所述与客户端的消息进行通信模块,用于与客户端进行通信,接收及发送消息,并根据消息进行显示客户端设置LUA脚本指定的断点和客户端需要观察的变量;所述消息包括:断点显示消息、变量值显示消息和调用API函数的关键词消息;
所述XML文件模块,用于存储所有LUA脚本中涉及到的API函数的信息;
所述API函数提醒模块,通过所述文本编辑模块编写LUA脚本时,遇到LUA脚本中API函数的关键词时自动检索,从所述的XML文件模块中,搜索出相关联的API函数的信息体现给客户端。
其中,所述与客户端的消息进行通信模块的功能具体实现步骤如下:
步骤11、与客户端的消息进行通信模块通知客户端在LUA脚本中那一处设置LUA脚本的断点(断点:可以让程序中断在需要的地方);
步骤12、通知客户端在LUA脚本中设置了哪些变量(变量:非固定值的数,需要进行查看)能进行观察;
步骤13、与客户端的消息进行通信模块接收脚本执行消息时,与客户端的消息进行通信模块通知客户端能开始执行LUA脚本;
步骤14、收到客户端发送的断点显示消息时,通过所述文本编辑模块编写LUA脚本,LUA脚本指定的断点被触发,进行中断程序;
步骤15、收到客户端发送的变量值显示消息,显示变量值;
步骤16、LUA脚本编辑人员通过断点的触发,查找LUA脚本编写错误的地方,且能观察变量值。
所述API函数提醒模块的功能具体实现步骤如下:
步骤21、通过所述文本编辑模块编写LUA脚本时,遇到LUA脚本中API函数的关键词;API函数提醒模块自动检索,从所述的XML文件模块中,搜索出相关联的API函数的信息;
步骤22、API函数提醒模块自动检索,从所述的XML文件模块中,搜索出相关联的API函数的信息;
步骤23、解析XML文件模块中的API函数的信息,获取函数名、函数所需传递的参数以及函数备注;
步骤24、LUA脚本编辑人员直接通过获取到的信息进行操作。
这里值得一提的是:在本发明中可以将所述文本编辑模块、与客户端的消息进行通信模块、XML文件模块以及API函数提醒模块封装成DLL动态链接库(DLL是动态链接库,是Dynamic Link Library的缩写形式,是可由多个程序使用的代码和数据的库的支持),该DLL动态链接库能供需要的程序调用使用。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (4)
1.一种LUA脚本的编辑插件,其特征在于,包括:文本编辑模块、与客户端的消息通信模块、XML文件模块以及API函数提醒模块,
所述文本编辑模块,用于编辑显示LUA脚本;
所述与客户端的消息进行通信模块,用于与客户端进行通信,接收及发送消息,并根据消息进行显示客户端设置LUA脚本指定的断点和客户端需要观察的变量;所述消息包括:断点显示消息、变量值显示消息、脚本执行消息;
所述XML文件模块,用于存储所有LUA脚本中涉及到的API函数的信息;
所述API函数提醒模块,通过所述文本编辑模块编写LUA脚本时,遇到LUA脚本中API函数的关键词时自动检索,从所述的XML文件模块中,搜索出相关联的API函数的信息体现给客户端。
2.根据权利要求1所述的一种LUA脚本的编辑插件,其特征在于:所述与客户端的消息进行通信模块的功能具体实现步骤如下:
步骤11、与客户端的消息进行通信模块通知客户端在LUA脚本中那一处设置LUA脚本的断点;
步骤12、通知客户端在LUA脚本中设置了哪些变量能进行观察;
步骤13、与客户端的消息进行通信模块接收脚本执行消息时,与客户端的消息进行通信模块通知客户端开始执行LUA脚本;
步骤14、收到客户端发送的断点显示消息时,通过所述文本编辑模块编写LUA脚本,LUA脚本指定的断点被触发,进行中断程序;
步骤15、收到客户端发送的变量值显示消息,显示变量值;
步骤16、LUA脚本编辑人员通过断点的触发,查找LUA脚本编写错误的地方,且能观察变量值。
3.根据权利要求1所述的一种LUA脚本的编辑插件,其特征在于:所述API函数提醒模块的功能具体实现步骤如下:
步骤21、通过所述文本编辑模块编写LUA脚本时,遇到LUA脚本中API函数的关键词;
步骤22、API函数提醒模块自动检索,从所述的XML文件模块中,搜索出相关联的API函数的信息;
步骤23、解析XML文件模块中的API函数的信息,获取函数名、函数所需传递的参数以及函数备注;
步骤24、LUA脚本编辑人员直接通过获取到的信息进行操作。
4.根据权利要求1所述的一种LUA脚本的编辑插件,其特征在于:将所述文本编辑模块、与客户端的消息进行通信模块、XML文件模块以及API函数提醒模块封装成DLL动态链接库,该DLL动态链接库能供需要的程序调用使用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012104808386A CN103019697A (zh) | 2012-11-22 | 2012-11-22 | 一种lua脚本的编辑插件 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012104808386A CN103019697A (zh) | 2012-11-22 | 2012-11-22 | 一种lua脚本的编辑插件 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103019697A true CN103019697A (zh) | 2013-04-03 |
Family
ID=47968336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012104808386A Pending CN103019697A (zh) | 2012-11-22 | 2012-11-22 | 一种lua脚本的编辑插件 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103019697A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103810053A (zh) * | 2014-02-14 | 2014-05-21 | 福建天晴数码有限公司 | 网络游戏服务器陷入死循环的处理方法 |
CN104298534A (zh) * | 2014-10-23 | 2015-01-21 | 广州华多网络科技有限公司 | 基于Lua语言的编程方法和装置 |
CN105320505A (zh) * | 2014-06-25 | 2016-02-10 | 中兴通讯股份有限公司 | 脚本处理方法及装置 |
CN105677306A (zh) * | 2014-11-18 | 2016-06-15 | 中兴通讯股份有限公司 | 自动化脚本的编写方法和装置 |
CN105677859A (zh) * | 2016-01-08 | 2016-06-15 | 成都卫士通信息产业股份有限公司 | 在嵌入式设备上使用lua实现cgi的方法 |
WO2018054303A1 (zh) * | 2016-09-20 | 2018-03-29 | 遨博(北京)智能科技有限公司 | 一种控制机器人的方法及装置 |
CN108491227A (zh) * | 2018-03-09 | 2018-09-04 | 深圳市富途网络科技有限公司 | 一种基于lua和redis的安全配置系统及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6314558B1 (en) * | 1996-08-27 | 2001-11-06 | Compuware Corporation | Byte code instrumentation |
US20030149961A1 (en) * | 2002-02-07 | 2003-08-07 | Masaki Kawai | Apparatus, method, and program for breakpoint setting |
CN101908053A (zh) * | 2009-11-27 | 2010-12-08 | 新奥特(北京)视频技术有限公司 | 一种语音检索的方法及装置 |
-
2012
- 2012-11-22 CN CN2012104808386A patent/CN103019697A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6314558B1 (en) * | 1996-08-27 | 2001-11-06 | Compuware Corporation | Byte code instrumentation |
US20030149961A1 (en) * | 2002-02-07 | 2003-08-07 | Masaki Kawai | Apparatus, method, and program for breakpoint setting |
CN101908053A (zh) * | 2009-11-27 | 2010-12-08 | 新奥特(北京)视频技术有限公司 | 一种语音检索的方法及装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103810053A (zh) * | 2014-02-14 | 2014-05-21 | 福建天晴数码有限公司 | 网络游戏服务器陷入死循环的处理方法 |
CN103810053B (zh) * | 2014-02-14 | 2017-06-13 | 福建天晴数码有限公司 | 网络游戏服务器陷入死循环的处理方法 |
CN105320505A (zh) * | 2014-06-25 | 2016-02-10 | 中兴通讯股份有限公司 | 脚本处理方法及装置 |
CN104298534A (zh) * | 2014-10-23 | 2015-01-21 | 广州华多网络科技有限公司 | 基于Lua语言的编程方法和装置 |
CN104298534B (zh) * | 2014-10-23 | 2017-10-24 | 广州华多网络科技有限公司 | 基于Lua语言的编程方法和装置 |
CN105677306A (zh) * | 2014-11-18 | 2016-06-15 | 中兴通讯股份有限公司 | 自动化脚本的编写方法和装置 |
CN105677859A (zh) * | 2016-01-08 | 2016-06-15 | 成都卫士通信息产业股份有限公司 | 在嵌入式设备上使用lua实现cgi的方法 |
WO2018054303A1 (zh) * | 2016-09-20 | 2018-03-29 | 遨博(北京)智能科技有限公司 | 一种控制机器人的方法及装置 |
CN108491227A (zh) * | 2018-03-09 | 2018-09-04 | 深圳市富途网络科技有限公司 | 一种基于lua和redis的安全配置系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103019697A (zh) | 一种lua脚本的编辑插件 | |
US10489503B2 (en) | Automated form layout based upon usage patterns | |
CN104133772B (zh) | 一种自动生成测试数据的方法 | |
JP4827834B2 (ja) | プロセス制御データを修正する方法および装置 | |
CN100375047C (zh) | 一种计算机日志的管理方法 | |
US8433687B1 (en) | Off-line indexing for client-based software development tools | |
US8762834B2 (en) | User interface for defining a text file transformation | |
CN103309797A (zh) | 用户界面自动化测试方法及装置 | |
CN102279737A (zh) | 用于分析过程设计的系统和方法 | |
CN103164300A (zh) | 一种移动终端触摸屏自动测试方法及装置 | |
CN102523129A (zh) | 一种通用的航空总线测试分析方法及其装置 | |
US20090187539A1 (en) | Solution providing navigation-independent access to elements of a software integrated development environment (ide) using uniform resource locators (urls) | |
CN102234046B (zh) | 电梯控制软件现场调试系统 | |
CN103744647A (zh) | 一种基于工作流GPD的Java工作流开发系统及其方法 | |
CN103514072A (zh) | 一种用于可视化编程的图形化业务的调试方法及装置 | |
US20150331783A1 (en) | Debugging data format conversion | |
CN102122245A (zh) | 一种配置项设置界面的生成方法及系统 | |
CN108829430A (zh) | 基于Eclipse和Tomcat的Java Web项目更新方法及相关装置 | |
CN104598570A (zh) | 资源的抓取方法及装置 | |
CN107622006A (zh) | 用于测试移动装置的系统和方法 | |
CN103645895B (zh) | 自动配置方法以及云编译系统 | |
CN105988863A (zh) | 一种处理事件的方法及装置 | |
CN103337050A (zh) | 气候诊断和数值模拟集成分析系统 | |
CN107977419A (zh) | 一种核电站dcs运维支持文件识别方法及系统 | |
CN104133678A (zh) | 构建、运行交互地震解释系统的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130403 |