Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Edit toml files while preserving whitespace and formatting from Lua.

License

Notifications You must be signed in to change notification settings

lumen-oss/toml-edit.lua

Repository files navigation

toml-edit.lua

LuaRocks

Edit toml files while preserving whitespace and formatting from Lua.

Usage

The parse function creates a table with metatable, which can be converted back to toml (preserving comments) using tostring:

local toml_content = [[
[rocks]
# Some comment
"toml-edit" = "1.0.0"
]]
local toml_edit = require("toml_edit")
local toml_tbl = toml_edit.parse(toml_content)
toml_tbl.rocks["toml-edit"] = "2.0.0"
print(tostring(toml_tbl))
-- outputs:
-- [rocks]
-- # Some comment
-- "toml-edit" = "2.0.0"

The parse_as_tbl function parses toml as a regular lua table:

local toml_content = [[
[rocks]
"toml-edit" = "1.0.0"
]]
local toml_edit = require("toml_edit")
local lua_tbl = toml_edit.parse_as_tbl(toml_content)
print(tostring(toml_tbl))
-- outputs: table: 0x7ff975807668

Tip

  • Use parse when you need to modify the toml, and you are accessing or setting fields by name.
  • Use parse_as_tbl when you need to perform operations that don't access fields by name (e.g. iterating over key/value pairs).

Development

To run tests:

Using Nix:

nix flake check -L

Using luarocks:

mkdir luarocks
luarocks make --tree=luarocks
luarocks test

Note

You may need to luarocks install --local luarocks-build-rust-mlua.

About

Edit toml files while preserving whitespace and formatting from Lua.

Resources

License

Code of conduct

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Contributors 5

AltStyle によって変換されたページ (->オリジナル) /