On 04/02/2017 01:45, Markus Armbruster wrote: >>> -drive driver=qcow2, >>> file.driver=gluster, >>> .volume=testvol, >>> .path=/path/a.qcow2, >>> .debug=9, >>> file.server.0.type=tcp, >>> .host=1.2.3.4, >>> .port=24007, >>> file.server.1.type=unix, >>> .socket=/var/run/glusterd.socket >>> >>> Mind, I'm not at all sure this is a *good* idea. I suspect it's more >>> magic than it's worth. >> As someone who likes dot syntax very much, I don't like it. If you >> structure it like this, it's OK, but then you can just write the full >> prefix (which gets the point across just as well because I can quickly >> tell from a glance that it's the same prefix). >> >> OTOH, when joined into a single line it doesn't change much in terms of >> legibility, in my opinion. > > Thanks!
Actually I think it does improve legibility. It doesn't improve writability though, as anecdotally proved by Markus's own mistake. I am a fan of the dot syntax too. It seems to be the most incremental solution, and it's still as expressive as JSON. _However_ we could also extend -readconfig to support JSON, i.e. instead of [drive "abc"] file = "foo" it could support { 'drive': { 'file: 'foo' }, 'id': 'abc' } In other words [ would introduce key-value QemuOpts with dot syntax, while { would introduce JSON. Paolo