[webgen-users] kramdown - fast alternative to Maruku

9 views
Skip to first unread message

Thomas Leitner

unread,
Nov 8, 2009, 2:54:43 PM11/8/09
to webgen...@rubyforge.org
Hi everybody!

Most of you know that Maruku is the default markup language used in
webgen since I prefer Markdown over Textile. However, Maruku has some
flaws, especially when in comes to Ruby 1.9. Therefore I started
developing a new pure Ruby Markdown parser around this time last year,
called kramdown.

I got rather far at the start but then didn't have the time to complete
the project. Since there is still interest in a viable Maruku
alternative I invested some more time lately and can provide a
prototype now. There is currently no website but I have pushed the
latest version to the GitHub repo at

http://github.com/gettalong/kramdown

One aspect of kramdown is that there is a detailed syntax
specification. A problem I have with standard Markdown parsers is
that you sometimes don't know what you will get (especially when it
comes to lists). Therefore I have written a detailed specification of
the syntax supported by kramdown and what the expected output will be.
Naturally, the syntax is based on Markdown but has been extended to
support popular extensions.

Currently, kramdown passes all tests in the test suite and is already
very useful. It will become the default Markdown parser in one of the
next releases of webgen after I have added some minor features to
kramdown.

Also note that it supports nearly all features present in Maruku but is
around 5 times faster ;-)

If you are interested, please try kramdown and tell me if you like it,
whether there should be changes in the syntax spec, which features
should additionally be supported (e.g. tables, definition lists, ...)

Thanks and best regards,
Thomas
_______________________________________________
webgen-users mailing list
webgen...@rubyforge.org
http://rubyforge.org/mailman/listinfo/webgen-users

Michael Franzl

unread,
Jan 31, 2010, 4:50:08 AM1/31/10
to webgen...@rubyforge.org
Thomas Leitner wrote:
> If you are interested, please try kramdown and tell me if you like it,
> whether there should be changes in the syntax spec, which features
> should additionally be supported (e.g. tables, definition lists, ...)

First of all, congratulations to your effort to create a really good,
simple and fast markup language!

One of the advantages of Maruku is that it can also convert to LaTeX
files. This is especially valuable when one maintains one central
source in plain text (which changes often) and wants to convert it for
the internet as well as for a professionally typeset PDF (via LaTeX,
for printing books).

Are there plans to make kramdown support that also?

Michael

Eric Sunshine

unread,
Jan 31, 2010, 6:04:11 AM1/31/10
to webgen...@rubyforge.org
As an alternative, there are a number of HTML-to-LaTeX tools available,
which could process the output of kramdown to produce LaTeX.

-- ES

Thomas Leitner

unread,
Jan 31, 2010, 11:15:29 AM1/31/10
to webgen...@rubyforge.org
On Sun, 31 Jan 2010 10:50:08 +0100, Michael Franzl wrote:
> Thomas Leitner wrote:
> > If you are interested, please try kramdown and tell me if you like
> > it, whether there should be changes in the syntax spec, which
> > features should additionally be supported (e.g. tables, definition
> > lists, ...)
>
> First of all, congratulations to your effort to create a really good,
> simple and fast markup language!

Thanks, but most of this credit should go to the original author of
Markdown, John Gruber of daringfireball.net ;-) I just made a faster
Ruby implementation.



> One of the advantages of Maruku is that it can also convert to LaTeX
> files. This is especially valuable when one maintains one central
> source in plain text (which changes often) and wants to convert it
> for the internet as well as for a professionally typeset PDF (via
> LaTeX, for printing books).
>
> Are there plans to make kramdown support that also?

Yes, I would like to implement a PDF converter based on prawn (sothat
one does not need a LaTeX installation) and a converter for LaTeX
output. However, I can't tell when I will be able to do this.

I will have a look at how Maruku does the LaTeX output and I will post
on the kramdown ML once I have a rough idea of how I would like this
converter to work - but ideas and working code are always welcome!

Best regards,
Thomas

Reply all
Reply to author
Forward
0 new messages