There are a couple I have in mind. Like many techies, I am a huge fan of RSS for content distribution and XMPP for federated communication.

The really niche one I like is S-expressions as a data format and configuration in place of json, yaml, toml, etc.

I am a big fan of Plaintext formats, although I wish markdown had a few more features like tables.

  • frezik
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    4 months ago

    I’d like something akin to XML DOM for config files, but not XML.

    The one benefit of binary config (like the Windows Registry) is that you can make a change programmatically without too many hoops. With text files, you have a couple of choices for programmatic changes:

    • Don’t
    • Parse it, make the change, and rewrite it (clobbering comments and whitespace that the user setup; IIRC, npm does this)
    • Have some kind of block that says “things below this line were automatically set and shouldn’t be touched” (Klipper does this)
    • Have a parser that understands the whole structure, including whitespace and comments, and provides an interface for modifying things in place without changing anything around it (XML DOM)

    That last one probably exists for very specific formats for very specific languages, but it’s not common. It’s a little more cumbersome to use as a programmer–anyone who has worked with XML DOM will attest to that–but it’s a lot nicer for end users.