CWDG论坛-专业魔兽插件's Archiver

gzkuru 发表于 2008-7-12 15:18

Lua语言的安装和编辑器的高亮、运行调试、定位出错行设置

Lua语言的安装和编辑器的高亮、运行调试、定位出错行设置
——————CWDG gzkuru原创


英文好的朋友可以直接到Lua官方网站去了解更多的内容 [url=http://www.lua.org]http://www.lua.org[/url]


这次主要介绍一下学习Lua之前的准备工作。

(1) 下载Lua安装包,最新版本是lua-5.1.3. 它的体积很小,只有210K
        [url=http://luaforge.net/frs/?group_id=377]http://luaforge.net/frs/?group_id=377[/url]
        这是WINDOWS版本. 附带了编辑器,连环境变量都一次搞定了。

(2)安装lua包

(3)安装EditPlus编辑器:
        EditPlus 简单又好用, 我自己喜欢汉化版 [url=http://www.crsky.com/soft/1578.html.]http://www.crsky.com/soft/1578.html.[/url] 2.3以上版本可以使用一下注册码:
        Name:[url=http://www.cnzz.cc]www.cnzz.cc[/url]
        Code:60A8E-21F10-5BZ83-ADW4E-F3TC9

(4)让EditPlus支持lua高亮
        下拉菜单"工具" -- "首选项" ,选择"语法". 点击"添加"按钮增加一个文件类型,在下面的"描述"和"扩展名"栏里都填写lua。
        下面设置语法文件。
        lua.stx文件下载地址:[url=http://download.csdn.net/source/257667.]http://download.csdn.net/source/257667.[/url] 注意要按一下"载入"按钮.
        再设置好"自动换行"和"缩进".

(5)让EditPlus能调用Lua5调试代码
        选择左面的"用户工具",点击右面的"添加"--"应用程序"
        之后,"菜单文本"填 Run_Lua5
        "命令"栏, 需要写明你步骤(2)安装的lua5系统的位置.
        在"参数"栏, 选择"文件路径", 或者$(FilePath)
        在"初始目录"栏, 选择"文件目录", 或者$(FileDir)

更改所有设置之后,不要忘记点击"应用",让设置生效.

(6)让EditPlus能定位出错行, 没有这个功能编辑大文件时可以让人麻烦死.
        这需要让EditPlus能理解Lua5的输出.
        注意"初始目录"栏下面还有个"捕获输出"开关, 要钩选.
        按"输出模式"按钮, 打开输出模式设置框.
        去掉"使用默认输出模式"选项.
        在正则表达式中填写"^(.:\\.*):([0-9]):.*"
        文件名选"标记1", 行选"标记2".

(7)现在让我们试试语法高亮和调试设置成功没有
        创建一个新的Lua文件,写入一行代码:print("Hello,Lua")
        选择菜单的"工具",最下面有自定义命令Run_Lua5,点击此命令即可完成lua文件的执行.
        执行结果是弹出一个写有Hello,Lua的控制台。

(8)试试能否定位出错行
        在刚才的代码前面加一行 x==1, 这是一行错误表达式.
        再执行一次, 在弹出控制台的出错提示行上面双击
        EditPlus有没有正确定位出错行?

至此,学习Lua的准备工作完毕,可以正式开始学习了。

simonw 发表于 2008-7-12 15:43

用这个比较好, 带wow环境的lua(不带游戏api)
[url]http://luaforge.net/projects/lua-wow/[/url]

SilverFox 发表于 2008-7-12 16:23

[quote]原帖由 [i]simonw[/i] 于 2008-7-12 15:43 发表 [url=http://bbs.cwowaddon.com/redirect.php?goto=findpost&pid=45276&ptid=4458][img]http://bbs.cwowaddon.com/images/common/back.gif[/img][/url]
用这个比较好, 带wow环境的lua(不带游戏api)
[url]http://luaforge.net/projects/lua-wow/[/url] [/quote]

但是它对非英文字符的处理存在一些问题,比如
[quote]print(string.len("中"))[/quote]
lua-wow的返回值是2,而WoW和[url=http://wowprogramming.com/utils/weblua]WebLua[/url]的返回值是3。

carl2500 发表于 2008-7-12 18:09

[quote]原帖由 [i]SilverFox[/i] 于 2008-7-12 16:23 发表 [url=http://bbs.cwowaddon.com/redirect.php?goto=findpost&pid=45277&ptid=4458][img]http://bbs.cwowaddon.com/images/common/back.gif[/img][/url]


但是它对非英文字符的处理存在一些问题,比如

lua-wow的返回值是2,而WoW和WebLua的返回值是3。 [/quote]


估计不是lua-wow不支持,而是加载进lua-wow的文件是ANSI的
把那个文件改为UTF8,输出值就是3了

Kurax 发表于 2008-7-12 22:46

[quote]原帖由 [i]carl2500[/i] 于 2008/7/12 18:09 发表 [url=http://bbs.cwowaddon.com/redirect.php?goto=findpost&pid=45281&ptid=4458][img]http://bbs.cwowaddon.com/images/common/back.gif[/img][/url]



估计不是lua-wow不支持,而是加载进lua-wow的文件是ANSI的
把那个文件改为UTF8,输出值就是3了 [/quote]

不会的,还会当作ANSI读取,然后乱码

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.