https://github.com/trixnz/vscode-lua
Intellisense and Linting for Lua in VSCode
https://github.com/trixnz/vscode-lua
Last synced: 9 months ago
JSON representation
Intellisense and Linting for Lua in VSCode
- Host: GitHub
- URL: https://github.com/trixnz/vscode-lua
- Owner: trixnz
- License: mit
- Created: 2017-02-14T19:22:19.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2024-03-21T02:01:46.000Z (almost 2 years ago)
- Last Synced: 2025-03-28T22:46:19.761Z (10 months ago)
- Language: TypeScript
- Size: 910 KB
- Stars: 120
- Watchers: 7
- Forks: 27
- Open Issues: 59
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- my-awesome-lua - vscode-lua - VSCode intellisense and linting. (Resources / IDE, Plugins and text editor)
- awesome-lua - vscode-lua - VSCode intellisense and linting. (Resources / IDEs and Plugins)
README
[](https://travis-ci.org/trixnz/vscode-lua) [](https://marketplace.visualstudio.com/items?itemName=trixnz.vscode-lua)
# Lua for Visual Studio Code
Provides Intellisense and Linting for Lua in VSCode
## Features
- [x] Autocompletion
- [x] Go to Symbol
- [x] Error checking
- [x] Linting
- [x] Formatting
- [ ] Code Snippets
## Installing
* Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter:
* `ext install vscode-lua`
Alternatively, you can download the extension from the [marketplace](https://marketplace.visualstudio.com/items?itemName=trixnz.vscode-lua).
## Settings
#### lua.luacheckPath (Default: `null`)
Specifies the path to luacheck binary (if not found on `PATH`).
#### lua.preferLuaCheckErrors (Default: `false`)
Specifies whether to prefer luacheck errors over the standard luaparse errors if luacheck is available.
#### lua.targetVersion (Default: `5.1`)
Specifies the target version of Lua. Valid options:
* 5.1
* 5.2
* 5.3
Can also be changed using the version selector in the bottom right of the IDE.
#### lua.format.enabled (Default: `true`)
Specifies whether to use the Lua formatter
#### lua.format.lineWidth (Default: `120`)
Maximum length of a line before it will be wrapped.
#### lua.format.indentCount (Default: `4`)
Number of characters to indent.
#### lua.format.singleQuote (Default: `false`)
Whether to use single or double quotes on strings. Defaults to double quotes.
#### lua.linting.enabled (Default: `true`)
Specifies whether to enable linting of source files
#### lua.linting.luaCheckConfig (Default: `null`)
Path to a .luacheckrc to be used for linting, instead of the default luacheck search path
#### lua.linting.luaCheckArgs (Default: `[]`)
Additional arguments to pass to luacheck
## Luacheck
Support for linting is provided via [luacheck](https://github.com/mpeterv/luacheck). Installation instructions can be found on the `luacheck` [repository](https://github.com/mpeterv/luacheck#installation).
Once installed, `luacheck` support can be activated by assigning the `lua.luacheckPath` setting to the path of the `luacheck` executable. Additionally, since `luacheck` provides vastly more detailed and contextually aware errors that may sometimes duplicate those created by `luaparse`, the setting `lua.preferLuaCheckErrors` can be set to `true` to suppress `luaparse` errors.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Acknowledgments
* [Oskar Schöldström](https://github.com/oxyc) - [luaparse](https://github.com/oxyc/luaparse): A Lua parser written in JavaScript
* [Mikael Hermansson](https://github.com/mihe) - [node-hot](https://github.com/mihe/node-hot): Hot-reloading for Node.js
* [Peter Melnichenko](https://github.com/mpeterv) - [luacheck](https://github.com/mpeterv/luacheck): A tool for linting and static analysis of Lua code.