EDIT from 2019: Hi folks. I wrote this gist for myself and some friends, and it seems like it's gotten posted somewhere that's generated some (ahem, heated) discussion. The whitespace was correct when it was posted, and since then GitHub changed how it formats (thank you @anzdaddy for suggesting a formatting workaround) honestly this is a random throwaway gist from 2015, and someone more knowledgable about this comparison should just write a proper blog post about it. If you comment here I'll hopefully see it and stick a link to it up here. Cheers. @oconnor663<pre>
tags. Look at the raw text if you care about this. I'm sure someone could tell me how to fix it, but
Here's the canonical TOML example from the TOML README, and a YAML version of the same.
title = "TOML Example" [owner] name = "Tom Preston-Werner" dob = 1979-05-27T07:32:00-08:00 [database] server = "192.168.1.1" ports = [ 8001, 8001, 8002 ] connection_max = 5000 enabled = true [servers] [servers.alpha] ip = "10.0.0.1" dc = "eqdc10" [servers.beta] ip = "10.0.0.2" dc = "eqdc10" [clients] data = [ ["gamma", "delta"], [1, 2] ] hosts = [ "alpha", "omega" ] |
title: YAML Example owner: name: Tom Preston-Werner dob: 1979-05-27T07:32:00-08:00 database: server: 192.168.1.1 ports: [ 8001, 8001, 8002 ] connection_max: 5000 enabled: true servers: alpha: ip: 10.0.0.1 dc: eqdc10 beta: ip: 10.0.0.2 dc: eqdc10 clients: data: [ [gamma, delta], [1, 2] ] hosts: - alpha - omega |
In my line of work (scientific software), I've only recently looked into using YAML as a replacement for some of the dated home-grown approaches to configuration files used in my community. And only learned of TOML today. Having glanced at the examples and read the comments here, I'm wondering if there is any possibility of defining a YAML-light that avoids some of the complexity of full YAML and maintains some of the other nice features? For my own work, I certainly have only implemented a subset of YAML and have not been frustrated by the missing features. (Probably helps that I'm not even really aware of what is missing.) Thoughts?