开源 · 轻量 · 跨平台

每个 Lua 版本,
各就其位。

从本地开发到 CI,用 vfox 或 mise 安装、切换并固定 Lua 版本。熟悉的命令,一致的环境。

需要 vfox 1.0.12 或更新版本

LUA / 开发环境v1.4.0
01 / LUA5.4.7
为你的下一次运行,准备好 Lua。
~/my-projectbash
$ vfox install [email protected]
✓ Lua 已就绪
$ vfox exec [email protected] -- lua -v
Lua 5.4.7
LinuxmacOSWindowsvfoxmise
[ 01 ]

一个项目,一个版本

固定项目使用的 Lua,让终端、脚本和 CI 使用同一个运行环境。

[ 02 ]

LuaRocks,随装随用

Linux 与 macOS 上默认集成 LuaRocks,安装第三方模块后即可加载。

[ 03 ]

你的工具,你来选

使用 vfox 的原生能力,也兼容 mise 的 vfox 插件后端。

01 / 开始使用

几条命令,即刻开工。

先安装构建依赖,再选择你常用的版本管理器。示例使用 Lua 5.4.7;其他版本可通过搜索命令查找。

01 添加插件
vfox add --source https://github.com/yeshan333/vfox-lua/releases/download/v1.4.0/vfox-lua-1.4.0.zip lua
02 安装 Lua
vfox install [email protected]
03 运行 Lua
vfox exec [email protected] -- lua -v
01 添加 vfox 插件后端
mise plugins install vfox-yeshan333-vfox-lua https://github.com/yeshan333/vfox-lua.git
02 安装并选择 Lua
mise use -g vfox:yeshan333/[email protected]
03 在指定环境中运行
mise exec -- lua -v

02 / 日常开发

从第一次安装,到每天运行。

把版本留在项目里

vfox 将项目选择写入 .vfox.toml,并创建稳定的 .vfox/sdks/lua 路径。进入项目后,exec 可以直接使用该版本。

Bash
eval "$(vfox activate bash)"
vfox use -p [email protected]
vfox exec lua -- lua -v

安装你需要的模块

Lua 5.x 在 Linux 与 macOS 上默认安装 LuaRocks,并配置模块搜索路径。如果安装失败,插件会提示原因并保留可用的 Lua。

LuaRocks
vfox exec [email protected] -- luarocks install luacheck
vfox exec [email protected] -- luacheck --version
WINDOWS / LUABINARIES

Windows,也有预编译选项

默认使用 MSYS2 从源码编译。设置此安装选项后可下载 LuaBinaries;不支持的版本会明确报错。

可用版本:5.5.0, 5.4.8, 5.3.6, 5.2.4

PowerShell
$env:VFOX_LUA_WINDOWS_LUABINARIES = "1"
vfox install [email protected]
vfox exec [email protected] -- lua.exe -v

预编译包通过 SourceForge HTTPS 镜像下载,目前不校验固定 SHA-256。如需校验下载完整性,请使用默认的源码构建。

03 / 你可能想知道

少一点疑问,多一点专注。

如何查找其他 Lua 版本?

使用 vfox search lua 或 mise ls-remote vfox:yeshan333/vfox-lua。安装时把示例中的 5.4.7 替换为需要的版本。

可以跳过 LuaRocks 吗?

可以。在安装前设置 VFOX_LUA_LUAROCKS=0 或 false。Windows 安装目前不包含 LuaRocks。

支持哪些平台和旧版本?

支持 Linux、macOS 和 Windows。Linux 上不支持 Lua 5.0 及更早的版本;Windows 预编译包仅支持上方列出的版本。

如何更新插件?

运行 vfox update lua。通过此站提供的安装命令添加插件后,更新会读取本仓库发布的 manifest。

下一次运行,从这里开始。

源码、问题反馈和发行记录都在 GitHub。

查看 GitHub 仓库