Open DivineDominion opened 7 months ago
The Idea itself is very good (as always). I wonder if not a .git that tracks authorship by nature would be an option; this is usable in quite a lot of editors already and allows tracking of various sources;
THIS.
The plain-text writing word are already converging on standards and extending off it: HTML and YAML for metadata.
I suspect the focus of devs should be on implement/adopting the annotation core innovation here not re-inventing wheels.
If this follows this core proposal, I already see how it will gain instant adoption in tools like Obsidian (that already has this standard, not it's implementation) and several others thought capture apps.
Hey,
not sure if you want to discuss this, but since it's on GitHub and Issues are allowed, here you go :)
The block layout of your example
reminded me of local variable settings in editors like Emacs.
There, the local settings or metadata blocks compose more gracefully with the content (historically: source code) by using comments.
I think using HTML/Markdown comments for these annotation purposes would compose better without breaking text rendition of all other Markdown tools that don't use the Markdown-Annotations "extension" to the syntax.
Here's a re-interpretation of your syntax proposal that doesn't require a Markdown syntax/parser extension at all:
---
and...
block markers (only one of which denotes a Markdown element, a horizontal rule) with<!--
and-->
, removing the part from the Markdown text in all tools that respect HTML commentsDocument Settings:
, so that parsers know where to look (and which comment blocks to ignore)Example:
"<!-- Document Settings:\n"
, ignoring the rest, to interpret as annotations.Alternatives considered
YAML frontmatter
Obvious contender for metadata in general.
X = 0
, the frontmatter will need to denote a range of0,1
as human input.X
is shifted to the right by the whole delta of the frontmatter.X
was0
, and the frontmatter change to denote the range0,1
but also the checksum etc. is 100 characters total, the actual position ofX is now
100`.100,1
, which shiftsX
two more characters to the rightAnnotations
,@Human
,&AI
) over adding support for a backmatter block;