mudlet/.devcontainer/devcontainer.json
missionz3r0 b8f000ca46
add: 3rd party definition files for Lua (#8966)
## Brief overview of PR changes/additions
Adds [Lua definition
files}(https://luals.github.io/wiki/definition-files/) for
* [busted](https://github.com/LuaCATS/busted)
* [lpeg](https://github.com/LuaCATS/lpeg)
* [luassert](https://github.com/LuaCATS/luassert)
* [luafilesystem](https://github.com/LuaCATS/luafilesystem/tree/main)

## Motivation for adding to Mudlet
With these definition files, the Lua language server can provide syntax
highlighting, type hints, and snippets for these third party libraries.
Note, this does not change syntax highlighting in Mudlet's editor, but
for developers modifying code in `src/mudlet-lua`.

## Other info (issues closed, discussion etc)
The following still need definition files:
* `luautf8`
* `lua-zip`
* `lrexlib-pcre`
* `lua-yajl`
* `LuaSQL-SQLite3`

As far as I can tell, there are no ready made lua definition files for
these libraries. So they'd need to be hand made.

### Pics
#### Syntax Highlighting: Before
<img width="881" height="652" alt="Screenshot_2026-02-18_09-36-19"
src="https://github.com/user-attachments/assets/a45542bf-bc14-4361-a104-230cf7754413"
/>

#### Syntax Highlighting: After
<img width="881" height="652" alt="Screenshot_2026-02-18_09-35-32"
src="https://github.com/user-attachments/assets/5bb9e4a9-d929-469e-a36f-373ebc84bef3"
/>
2026-03-25 16:38:21 +11:00

43 lines
1.3 KiB
JSON

// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:
// https://github.com/microsoft/vscode-dev-containers/tree/v0.208.0/containers/cpp
{
"name": "C++",
"build": {
"dockerfile": "Dockerfile",
// Update 'VARIANT' to pick an Debian / Ubuntu OS version: debian-12, debian-11, ubuntu-24.04, ubuntu-22.04
// Use Debian 12, Debian 11, Ubuntu 22.04 or Ubuntu 24.04 on local arm64/Apple Silicon
"args": { "VARIANT": "debian-13" }
},
"runArgs": ["--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined"],
// Set *default* container specific settings.json values on container create.
"settings": {},
// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"ms-vscode.cpptools",
"ms-vscode.cmake-tools",
"ms-dotnettools.vscode-dotnet-runtime",
"sumneko.lua"
],
"forwardPorts": [5900, 5901, 6080],
"portsAttributes": {
"6080": {
"label": "Open Mudlet"
}
},
"postCreateCommand": "git submodule update --init",
// Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "vscode",
"features": {
"ghcr.io/devcontainers/features/desktop-lite:1": {
"password": "mudlet",
"webPort": "6080",
"vncPort": "5901"
}
}
}