Markdown Extra Specification (First Draft)

Sherwood Botsford sgbotsford at gmail.com
Wed May 7 16:08:35 EDT 2008


ns what, and the span element 2.4.7 is "Abbreviation",

> representing an instance of an abbreviation in the text (deduced

> automatically by the parser). I'm not sure what is the problem there.

> It's pretty much alike 2.2.1 Link Reference and 2.4.4 Link: one is the

> definition of the URL and title of a link; the other is the actual link.

>

> * * *

>

> I'm sorry to ditch most of your suggestions like that, but I can't

> really do any breaking change to the syntax, or that syntax wouldn't be

> Markdown anymore. The idea behind the spec is to give implementors an

> unambiguous reference about how to implement Markdown (and Markdown

> Extra), allowing documents tested with one parser to work with any

> other, unchanged.

>


Not to worry. I wasn't expecting backward compatibility, so that
flavoured much of what I said. I was not aware of PHP Markdown
extra. I will read further before commenting again.

THAT said, however, maintaining perfect backward compatibility
slows down progress.

Can markdown extra have a configuration file:
The default behaviour is to emulate markdown.
The configuration file allows for new features that don't fit
well into the old set.

Implementation specs: The program should have a compiled in
set of locations to look for the config file, a command line
option, and an environment option.

Consider too, if it is truly an improvement, it can be given a
new name, and a new calling convention, "MarkdownX" This allows
both systems to be in use while a system is in transition.

Couple this with a program that scans old markdown files for
'gotchas' that have changed in the new one.


> Given the current situation, it may be a little utopian to believe no

> current document will be broken as implementations adjust themselves to

> the spec, but we should try to minimize that.

>

>


I agree that you need a way for people to gracefully make the
transition. The best approach is a method that allows old
and new systems to co-exist in the same environment. If you call
it with a new name, there shouldn't be a problem.






More information about the Markdown-Discuss mailing list