It all depends on the library you use. Rust has you covered with toml_edit. It is what is used for all the cargo commands editing the Cargo.toml file.
Comment on Everything about TOML format - Orchard Dweller
eager_eagle@lemmy.world 1 year agoTOML is mainly for humans to write, certainly not a good choice if you’re programmatically writing files - comments and formatting would be lost.
Flipper@feddit.de 1 year ago
brettvitaz@programming.dev 1 year ago
So it’s good for things that don’t change, or things you have to change by hand, which gives it almost zero utility for any project that I’ve worked on.
spartanatreyu@programming.dev 1 year ago
Where do you put your comments in JSON files?
Quetzalcutlass@lemmy.world 1 year ago
I’ve seen them included as part of the data.
“//”, “Comment goes here”,
spartanatreyu@programming.dev 1 year ago
That doesn’t really work when you need two comments at the same level, since they’d both have the same key
brettvitaz@programming.dev 1 year ago
For settings files I always have an example file with sensible values filled in and along with descriptive keys that serves as reasonable documentation. If something is truly unknowable, I’ve probably done something wrong.
spartanatreyu@programming.dev 1 year ago
How would you mark a flag in your json settings file as deprecated?
suy@programming.dev 1 year ago
The very first moment that I had to use JSON as a configuration format, and I was desperate to find a way to make a long string into a JSON field. JSON is great for many things, but it’s not good at all for a configuration format where you need users to make it pretty, and need features like comments or multi-line strings (because you don’t want to fix a merge conflict in a 400 character-wide line).