forking Markdown.pl?

John Gabriele jmg3000 at gmail.com
Sun Mar 16 20:37:47 EDT 2008


On Sun, Mar 16, 2008 at 5:07 PM, Tomas Doran <bobtfish at bobtfish.net> wrote:

> On 16 Mar 2008, at 19:07, Jacob Rus wrote:

>

> > Tomas Doran wrote:

> >> John Gruber wrote:

> >>> Tomas Doran wrote:

> >>>

> >>>> I'm actively maintaining the CPAN modules Text::Markdown, and

> >>>> Text::MultiMarkdown, and longer term, I'd like these to become

> >>>> the canonical distribution.

> >>>

> >>> I despise what you've done with Text::Markdown, which is to more

> >>> or less make it an alias for MultiMarkdown, almost every part of

> >>> which I disagree with in terms of syntax additions.

> >>

> >> Wow, that's pretty strong language. I'm glad I'm provoking strong

> >> opinions, and it's nice to see you actively contributing to

> >> Markdown's direction ;)

> >

> > It's harsh but reasonable language in my opinion. If you are going

> > to make something which is not Markdown (i.e. has other bits of

> > syntax not specified in John's description of that language), then

> > you should call it by a name other than "Markdown".

>

> Text::Markdown, as stated several times previously on the list *does

> not* have any additional syntax, it behaves *just like* original

> brand Markdown. I *am not* dressing up mutton and calling it lamb...

> So sorry - but you've got totally the wrong end of the stick here.

>


It may be important here to draw a line between the Markdown
specification (what JG has on the Markdown web pages), and various
implementations (the primary -- but not only -- one being
`Markdown.pl`).

Numerous projects have gone through the same growing pains. For
example, Python the language, with "CPython" being the main
implementation (which most everyone just calls "Python" anyway).
Another example is Perl 6, where they recently named the
implementation that runs on Parrot "Rakudo" (instead of calling it
"perl6").

So, if the problem is confusion (or perceived confusion) over the
name, perhaps the Perl modules could be something like `Text::MD` and
`Text::MDX` (or `Text::MD::Extra`). I'm sure others here could come up
with more creative names.

Anyhow, I haven't read all the responses to this thread. It's gotten a
bit long, and really, I'm actually kinda surprised it's generated so
much heat. I bet that if someone simply grabbed the most recent
`Markdown.pl` and added:

1. Tables. Regular, boring, but unmistakable ones like how the emacs
table mode does them (http://table.sourceforge.net/) but allow table
headers by underlining with +===+ instead of +---+. Only allowing them
starting in column 0 would be fine.

2. Definition lists. My favorite syntax is just:

term definition goes here (term and def separated by
at least 3 spaces). Multiple lines must have same
indentation as the first one (counting letters in term
as spaces).

3. The handy header id attribute syntax that PHP Markdown Extra
supports (though only allowing it with the atx-style headers (even
only with matching closing hash marks) would be just fine).

Those three things I think would pretty much satisfy a large swath of
currently unsatisfied users.

Maybe a reason was already discussed why that can't easily be done and
I missed it.

---John


More information about the Markdown-Discuss mailing list