FWIW, I’m really happy to see first-class support for metadata in Fountain, regardless of the syntax.
In the long run I do believe that introducing `{{}}` will be better for Fountain and its users than the status quo, for a few reasons, but especially because:
An alternative is to *officially* overload `[[]]` for metadata purposes (e.g. notes that start with `<identifier>:` are metadata) — but I believe that the note-vs-metadata dichotomy will be easier to explain to users when the markup is completely different. (I’d also expect to see note-vs-metadata handled more consistently between tools/apps with this new syntax, since it is unambiguous.)
That being said, there’s a few things I think that we should think about —
Standardization
Are we going to standardize (certain) types of metadata, so that behaviour is consistent between tools?
Marking “Regions” in the Document
All of the current examples can be thought of like “self-closing tags" in HTML:
- {{header: %p of %pp}}
- {{footer: %none}}
- {{%m}} (new syntax for markers)
- {{include: sparrow.fountain}}
However, it is conceivable that you will want to be able to explicitly “wrap” a region in the document with certain metadata (which necessitates the ability to explicitly close a metadata tag).
For example, here’s a contrived example from Mountain:
Here, the metadata is understood to apply to everything between the opening and closing `reference` “tag”.
(I’m just using Mountain as an example here. I totally get why Highland went with a simpler {{include:}} — my point is that we should really think about whether we want to bless this non-self-closing-tag approach, because it is *extremely* powerful for all sorts of use cases that haven’t been thought up yet — but at the cost of increased document complexity.)
Michael.