TOML Key Case

Recursively rename keys in tables and arrays of tables. String values stay the same. On conflict the transform stops and lists colliding keys.

Parsing and conversion on this page run in your browser.

Only keys change. Keys with special characters stay in a parseable form when possible.

All templates

Output

How to use

Example

[package]
name = "demo-lib"
version = "0.1.0"
edition = "2021"
description = "Sample library manifest"
license = "MIT"

[dependencies]
serde = "1"

[features]
default = ["std"]
std = []

FAQ

Do string values change?

No. Only keys are renamed. The document is re-stringified from the parsed model, so comments may be lost.

What happens on conflicts?

If foo_bar and fooBar both map to the same target key, the run aborts and lists the path plus keys. No partial output.

Related tools