Format Lua code
npm install lua-fmt 
lua-fmt is pretty-printer for Lua code, written in TypeScript and deeply inspired by prettier. lua-fmt provides an interface to format Lua code that conforms to a single and consistent standard.While not implemented yet, the interface will be customizable to tailor the output to the user's preferences: linebreaks, string style, etc.
npm install lua-fmtTypeScript
import {formatText} from 'lua-fmt';
console.log(formatText('local hello = "Hello"; print(hello .. " world!")'))
`$3
Format a single file:
* luafmt test/lua-5.3.4-tests/calls.luaFormat a stream from
stdin:
* cat test/lua-5.3.4-tests/calls.lua | luafmt --stdinTODO
- [ ] Add support for a .luafmt preferences fileTesting
lua-fmt uses jest for automated testing.Among the user-created tests in the
test/ folder, a copy of the lua-5.3.4 tests are executed after formatting to ensure the code remains syntactically correct after formatting. For this reason, please do not modify the lua-5.3.4-tests folder unless updating with new tests from the official Lua tests. To run these tests, lua53 is expected to be available on the PATH`.When contributing changes, please consider writing tests to ensure they do not regress.
This project is licensed under the MIT License - see the LICENSE file for details.