2 个稳定版本

使用旧的 Rust 2015

1.0.5 2017年6月1日
1.0.4 2017年4月25日

开发工具 中排名第 2034


2 个软件包中使用 (通过 kailua_langsvr)

MIT/Apache

41KB
1K SLoC

🌴 Kailua (crates.io)

韩语

Kailua 是一种用于 Lua 编程语言(目前仅支持 Lua 5.1)的实验性类型检查器和集成开发环境(IDE)。

详细的文档可以在 这里 查看。

安装和使用

Kailua 可以作为独立的检查器或 IDE 插件使用。

独立检查器

要安装独立的检查器,首先 安装 Rust(需要 1.15 或更高版本),然后输入以下内容

cargo install -f kailua

(-f 将导致现有安装升级。)

现在您可以运行 kailua check <入口点路径>

如果您在该目录中具有 kailua.json.vscode/kailua.json,您也可以运行 kailua check <目录路径>。配置格式在后续章节中描述。

Visual Studio Code

Kailua 可以作为 Visual Studio Code 的 IDE 支持。从快速启动(Ctrl-P)中输入 ext install kailua 安装 Kailua。 如果您不在 Windows 上,您还应按照上述方法安装独立的检查器。

当您打开包含 Lua 代码的文件夹时,您将看到一个警告,表明缺少配置文件。您需要它来进行实时检查。

您可以手动创建 .vscode/kailua.json 文件,或者从命令面板(Ctrl-Shift-P)搜索 "Kailua" 来编辑一个。

以下是 .vscode/kailua.json 文件所需的内容,如果您需要手动编辑

{
    "start_path": "<path to the entry point>",

    "preload": {
        // This indicates that we are using Lua 5.1 and all built-in libraries of it.
        "open": ["lua51"],
    },
}

您需要重新加载当前窗口(Ctrl-RCmd-R)以应用配置。

您的第一个 Kailua 代码

一旦设置了入口点,您就可以编写第一个 Kailua 代码

--# open lua51
print('Hello, world!')

如果您正在使用配置文件,第一个代码可以变得更加简单

print('Hello, world!')

尝试运行这段代码,看看 Kailua 能检测到哪些错误。

许可证

Kailua 在 MIT 许可证和 Apache 许可证 2.0 之间双重许可,您可任选其一。通过向 Kailua 贡献,您同意您的贡献将在这两种许可证下许可。请参阅 MIT 许可证Apache 许可证 2.0


lib.rs:

Kailua 的语言服务器协议类型。

这个包紧密地反映了 语言服务器协议 的 3.0 版本,并为大多数类型提供了 serde::Serializeserde::Deserialize 实现以下偏差

  • 枚举映射到 Rust 模块。

  • 匿名嵌套接口使用其字段名赋予唯一名称。由于这会导致客户端能力出现许多模糊类型,客户端能力被放入一个单独的模块 client_caps

  • 一些类型如 number | string 尚未得到适当实现并固定为最可能类型。

  • ServerCapabilities.textDocumentSync 应在 3.0 中是 TextDocumentSyncOptions,但这在 vscode-languageclient<=3.2.0 中引起了错误,因此它被回滚为向后兼容的 TextDocumentSyncKind

依赖

~0.7–1.5MB
~33K SLoC