On Thu, 02/02 20:42, Markus Armbruster wrote: > === Comparison === > > In my opinion, dotted keys are weird and ugly, but at least they don't > add to the quoting mess. Structured values look better, except when > they do add to the quoting mess. > > I'm having a hard time deciding which one I like less :) > > Opinions? Other ideas?
Here's my poor attempt: The dotted syntax, as the simpler of two, can cover everyday use very well. If we introduce an "@reference" extension to it which can help the expresiveness, we can have a hybrid solution. It's not the cleanest interface and syntax, but escaping, nesting and quoting can all be divide-and-conqured in their optimal way. What I'm imagining is something like: -json "id=children0,text=[ { 'driver': 'null-co://' }, { 'driver': 'null-co://' }, { 'driver': 'null-co://' } ]" \ -dot \ id=quorum0,driver=quorum,read-pattern=fifo,vote-threshold=1,children=@children0 \ -drive if=virtio,id=primary-disk0,driver=qcow2,file=@quorum0 IOW "-json" and "-dot" define options that is intended to be referenced from other dotted keys (quorum0 uses children0, and in turn primary-disk0 uses quorum0). Note: "-dot" here could be replaced with a -blockdev in this specific case but I'm demostrating it just in case it is useful generically. Fam