How We Can Have Nice Things

Monte Goulding monte at sweattechnologies.com
Sat Sep 12 20:57:55 EDT 2015


> On 11 Sep 2015, at 6:46 pm, Ali Lloyd <ali.lloyd at livecode.com> wrote:
> 
> maybe using yaml or
> something similar

Interesting you mention YAML. I’ve started looking at implementing a YAML file <-> array in a combination of LCB library and libyaml for the parser/emitter. For lcVCS I used JSON because I’d only just implemented a JSON <-> array external. However, JSON isn’t brilliant because if you add an element to an object or array you will get a diff on the new trailing comma of the previous element. I looked at CSON because that resolves the issues but YAML can do multi-line values which will be good for script, htmlText and some custom properties.

Anyway, my plan is to see what it looks like if everything is exported to one file rather than a directory. It probably means base64Encoded image data in the hope people mostly use referenced images.

If it’s all in one file the object hierarchy can be represented in the nesting structure which is something I couldn’t do in directories because of limitations on windows. Now that we can use stacks as behaviors I can drop the UUID translation on those in that instance also. Whether diffs are any less confusing I’m not sure however they won’t be any less confusing than those on a storyboard or xib files. Probably significantly less confusing actually…

Anyway, not sure when I’ll have time to get all this done but the target would be LC 8+ so it’s really not much to do with this conversation if we are mainly focussed on the 6 & 7 IDEs.

Cheers

Monte


More information about the use-livecode mailing list