The StackOverflow site uses markdown for markup.
It has a fancy javascript thing for showing a real-time preview of what the user
is editing. It would be nice if ikiwiki could support this, too. The thing they
use on StackOverflow is supposed to be free software, so it should be easy to
add to ikiwiki.
See [[wikiwyg]]. Note that I do not have a copy of the code for that, or
it'd be in ikiwiki already. --[[Joey]]
I just had a brief look at the [[wikiwyg]] page and the link to the plugin was
broken. The StackOverflow site uses the WMD editor,
which seems to be related to the ShowDown
javascript port of Markdown. Interestingly, WMD source
is now available under an MIT license, though it is supposedly undergoing heavy
refactoring. It looks like there was previous discussion ( [[todo/Add_showdown_GUI_input__47__edit]] )
about a showdown plugin. Maybe a WMD plugin would be worthwhile. I might
look into it if I have time on the weekend. -- [[Will]]
[[!tag wishlist]]
Below is a simple plugin/[[patch]] to make use of the WMD editor.
Now added to ikiwiki, thanks! --[[Joey]]
Turns out it isn't hard at all to
get a basic version going (which doesn't handle directives at all, nor does it swtich itself off when you're
editing something other than Markdown source). I've
removed the done tag so this is visible as a patch. -- [[Will]]
Hmm, it would be good if it turned off for !mdwn. Although this could
be difficult for a new page, since there is a dropdown selector to
choose the markup language then. But it should be doable for editing an
existing page.
I agree. I'm working on this for for both new pages and existing pages.
It shouldn't be hard once I get WMD going through the javascript API.
At the moment that is inexplicably failing, and I haven't had time to have a good look at why.
I may not get a chance to look at this again for a few weeks.
Can I get a license statement (ie, GPL-2+) ffrom you for the plugin?
--[[Joey]]
Certainly. You're free to use the code I posted below under the GPL-2+ license. You'll note
however that I haven't said anything about the WMD code itself. The WMD web page says:
"I'm refactoring the code, and will be releasing WMD under the MIT license soon. For now you can download the most recent release (wmd-1.0.1.zip) and use it freely."
It might be best to contact support@attacklab.net to for an explicit license on that if you want to include it.
-- [[Will]]
So, I wonder if I should add a copy of the WMD source to ikiwiki, or rely
on the user or distribution providing it. It does not seem to be packaged
for Debian yet. Hmm, I also can't find any copyright or license info in
the zip file. --[[Joey]]
This is a good question. My thought is that it will probably not be packaged any time soon,
so you're better off adding it to IkiWiki. I'd contact the author of WMD and ask them. They
may have more insight. -- [[Will]]
Note that the WMD plugin does not handle directives. For this reason the normal preview button
remains. Some CSS to clean up the display of the live WMD preview would be good.
Can you elucidate the CSS comment -- or will it be obvious what you mean
when I try it? Is it what's needed for the live preview? --[[Joey]]
In the version of the plugin below, a new div is added just below the form. WMD
populates this div with the HTML it generates from the Markdown source. This is not very
pretty at the moment - it appears in the same place as the preview used to, but with no
header or anything. Any standard IkiWiki preview will appear below the WMD live preview.
I recommend having a look at http://wmd-editor.com/examples/splitscreen
for what a little CSS could achieve. -- [[Will]]
Hmm, now that I've tried it, I notice that it does live preview by
default, below the edit window. Which is nice, but then if I hit the
preview button, I get two previews.. which is confusing. (Also, minor,
but: the live preview is missing the "Page Preview:" header.) --[[Joey]]
I wonder how annoying it would be to add some kind of simplistic wikilink
support to wmd's preview? And/or a wikilink button? While not supporting
directies is fine, not supporting wikilinks in a wiki seems a bit
lacking. It may also entice novide users to not use wikilinks and instead
use the hyperlinks that wmd does support. --[[Joey]]
Bug: When I preview, all the text in the edit field seems to be
converted from mdwn to html. I think that wmd is converting the mdwn
into html when the form is posted, so it would also save like that.
I assume that is designed for websites that do not use markdown
internally. Doesn't it have a setting to leave it as markdown?
Found setting, fixed. --[[Joey]]
|