Vis Lua 实现

lua-users home
wiki

以下是一些关于 VisLua 实现的各种问题的笔记。

GUI 库

有数百个 GUI 库 [1],但很少有好的可移植且维护良好的库。以下是一些选择:-

我建议使用 wxWindows,因为它具有庞大的小部件集并且非常便携。正在进行绑定 [10],使用自定义绑定器。另一种选择是,wxPython [11] 附带了对 SWIG 的绑定。这些可以修改为与 LuaSWIG [12] 一起使用,并且只需在 wxWindows 和 wxPython 更新时更新即可。

关于编码风格的说明

所有代码应尽可能地便携且有据可查。这需要进一步讨论。大多数代码可能将使用 ANSI C 编写,遵循 Lua,以帮助移植。

wxWindows 在使用 C++ [13] 方面有一些指南,例如,不使用模板等。如果 wxLua 要用于 GUI 并且可移植性是优先事项,那么可能值得注意这些指南。

语法高亮

通过 Scintilla 编辑器 [14],对 (未修改的) Lua 的语法高亮将在 wxLua 中起作用。任何不支持 Scintilla 的平台都可以只使用文本编辑器。

关于 Lua 问题的说明

Lua 作为一种人们喜欢修改和嵌入的语言,存在一些问题。

这些问题可以通过重新编译 wxLua 绑定和 VisLua 调试器绑定来解决,以适合客户端应用程序。这些绑定的包装器可以允许配置任何语法更改。

调试器

结构

如有任何不清楚的术语,请参考 VisLuaGlossary

+--------------------------------+
|  application (C/C++/Lua/etc)   |
|                                |
+ +-------------------+ +--------+
| | debug server core | | Lua VM |
+-+-------------------+-+--------+
         |
         | <-- debug link
         |
+--------------------------------+
| | debug client core | | Lua VM |
| +-------------------+ +--------|
|                                |
| debug client w/ UI             |
+--------------------------------+

       *>8^)-|=<  user

概念验证

我已经开发了一个应用程序,您可以通过它像运行控制台一样 telnet 到 Lua 会话。请在开发列表中提供反馈,不要在这里。

文件:wiki_insecure/users/ntrout/vislua/vlds_test.zip

关于实现的评论

评论偶尔会被清除,因为它们在 VisLua-dev 邮件列表中进行了讨论。


最近更改 · 偏好设置
编辑 · 历史记录
最后编辑于 2003 年 2 月 12 日下午 8:13 GMT (差异)