如何在Lua中为自定义模块获取自动完成

无论我用什么设置来编写Lua代码,都是同样的情况:自动完成适用于标准库,但不适用于第三方库或我的自己的库。

我尝试过ZeroBrane studio、VSCode with Lua插件和Vim with lua ftplugin,所有三个都有完全相同的行为。我开始输入标准库符号,如

io.w

我确实得到了自动完成弹出窗口,显示io模块中的所有内容,并显示最接近io.w的方法io.write,带有签名和文档。

现在我尝试使用第三方或自己的库,如

require("wx"); wx.

require("my_module"); my_module.

要么根本没有反应,要么我得到一个“未定义”的警告,指的是模块名。如果我使用解释器运行代码,它确实有效。它将很好地调用该模块中的函数。但在编辑器中,警告和没有自动完成。

我错过了什么吗?

点赞
用户1442917
用户1442917

wxwidgets API 预装在 ZeroBrane Studio 中,但需要显式启用(您可以向配置文件添加 api = {"wxwidgets"} 来实现此操作;请参见文档中的自定义APIs部分)。任何其他(非预装)API都需要按照此处所述添加到IDE中。已经提供了几种流行的API作为插件;例如,用于Redis、Urho3d、openRA等。

2020-03-05 22:09:44