Multidingus
John MacFarlane
jgm at berkeley.edu
Thu Oct 18 15:24:13 EDT 2012
I've implemented a version of what I described below.
http://johnmacfarlane.net/pandoc/dingus.html
So far the "multidingus" only supports pandoc, since there's
only a dingus server for pandoc. But I'd like to add others
with your cooperation.
To implement a dingus server for your implementation, you
need to write a cgi script or server app that takes the
contents of the 'text' parameter, converts it to markdown,
and returns a json object with two properties:
- version - a string with the version of your implementation
- html - a string containing the html output for the input
provided
Here's an example of my server in action:
% curl 'http://johnmacfarlane.net/cgi-bin/pandoc-dingus?text=hi *there*'
{"html":"<p>hi</p>","version":"1.9.4.2"}
If you send me the URL for your dingus server and the name of your
implementation, I'll add it to the "multidingus." Other suggestions
also welcome. For example, it might be useful to add fields to
the return value like "description", "website", and "author".
Also, perhaps "dingus" isn't the best word for it, since it
just displays the HTML source, not the formatted output. I take
it that's what we want, since this is intended primarily for
comparing the output of different implementations on corner
cases, not for users to get a feel for markdown.
John
+++ John MacFarlane [Oct 18 12 09:40 ]:
>
> Babelmark has very outdated versions of many implementations (e.g.
> pandoc 0.46, current version is 1.9.4.2.) And I don't blame the
> maintainer for not keeping up to date. It's a big job to keep up-to-date
> versions of umpteen implementations in many different languages going --
> especially while keeping an eye on security.
>
> A while back on this list, I made the following suggestion. Let's
> devise a protocol for a "dingus server" that each implementer can
> implement and keep up to date. Each dingus server would receive text
> input as a POST request, or perhaps text plus some options, and return
> HTML output. (There could be a relatively short length limit if people
> are worried about users relying on the dingus server for regular text
> conversion.)
>
> The central multidingus could then just be an HTML page with AJAX.
> It would take user input, then send out AJAX requests to all the dingus
> servers, consolidate the output, and display it.
>
> When I, as a markdown implementer, update one of my implementations,
> I would just need to make sure I update the corresponding dingus server.
> That would be my responsibility, and the person who maintains the central
> multidingus needn't worry about it. All the central multidingus needs are
> the URLs of all the dingus servers.
>
> I think a multidingus like this would be *really* useful. What do people
> think?
>
> John
> _______________________________________________
> Markdown-Discuss mailing list
> Markdown-Discuss at six.pairlist.net
> http://six.pairlist.net/mailman/listinfo/markdown-discuss
More information about the Markdown-Discuss
mailing list