Follow

what config file types do you like?

examples: toml/ini, xml, json, kdl, plaintext

clear consensus was "either toml [five recs] or yaml [four recs]"

we like toml, so we're going to use that

@snailerotica only toml ever feels right. saw something use hocon recently though which was interesting

@snailerotica Each one is frustrating in their own way:
1. XML - 9/10 times completely unreadable, ugly; many validated, fast, decent libs
2. ini/plaintext - always custom so it's a total grab bag in terms of quality and aesthetic appreciation
3. json & yaml - least offensive of all of them, but I like to see json more than yaml. yaml is too restrictive on exactly how it'll look to a human. Json enc/dec libs are a minefield in terms of completeness + correctness.

@snailerotica I'm kind of a fan of the real basic INI format configs (key=value, with [sections], and ; comments), but I've done the json thing before.
There's more syntax to valid json than there is to INI, so there's more stuff to get right and make sure it doesn't upset things; but it did mean I could basically just deserialise it straight into a 'settings' structure.

@snailerotica my favorite is when the config file is an embedded script interpreter so i can metaprogram my settings. otherwise, toml and yaml are both pretty nice.

anybody who makes me edit json or xml by hand deserves to swallow a dorito whole.

@snailerotica oh also any config format that doesn't support comments (or any program that clobbers comments in its config files!!) is pure shit and piss and i want nothing to do with it

@snailerotica i personally just like the typical ini format like tamber outlined :)

@snailerotica as long as it's not machine-generated, yaml just because it has ways to do nice formatting

libconfig format is okay too because you can literally just throw vaguely-ini crap at it and it tries to figure out what you meant

@snailerotica A config file format I discovered a while back and have wanted to try ever since is Dhall

@snailerotica toml is far and away my favorite, and i've found lua can be good if you want something programmable

Sign in to participate in the conversation
Chitter

Chitter is a social network fostering a friendly, inclusive, and incredibly soft community.