A helper package for Luanti (Minetest) mod/game development that provides autocompletion and documentation for IDE integration.
- IntelliJ IDEA (or compatible) with EmmyLua2 Plugin
- VS Code with EmmyLua Extension (recommended for VS Code)
- VS Code with Lua Language Server
- Any editor with LSP support.
Install Lua LS:cargo install emmylua_ls(or see instalation guide)
- Download or clone this repository to your local machine:
git clone https://github.com/Voxrame/luanti-ide-helper.git
- Configure your IDE to use the library path:
- VS Code with EmmyLua (recommended):
Add to your workspace settings (.vscode/settings.json):{ "emmylua.workspace.library": [ "path/to/luanti-ide-helper" ] }
- VS Code with EmmyLua (recommended):
We recommend to keep this annotation package right in your repository as a Git submodule. This ensures all team members and contributors automatically get the same IDE assistance without additional configuration.
- Add this repository as a submodule to your project:
git submodule add https://github.com/Voxrame/luanti-ide-helper.git util/ide-helper
- Create configuration files for your team in repository:
.emmyrc.json(for all IDEs):{ "$schema": "https://raw.githubusercontent.com/EmmyLuaLs/emmylua-analyzer-rust/refs/heads/main/crates/emmylua_code_analysis/resources/schema.json", "workspace.library": [ "util/ide-helper" ] }.vscode/extensions.json(recommends EmmyLua for VS Code users):{ "recommendations": [ "tangzx.emmylua" ] } - Update the submodule when needed:
git submodule update --remote util/ide-helper
Issues & PRs welcome.
Info: This project was started as part of Lord Game. And then was extracted with original commit history and issue references are preserved as
lord-server/lord#<issue_number>.
This project is licensed under the MIT License - see license.md file for details.
