Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.info
authorJoey Hess <joey@gnu.kitenet.net>
Sun, 8 Mar 2009 16:50:24 +0000 (12:50 -0400)
committerJoey Hess <joey@gnu.kitenet.net>
Sun, 8 Mar 2009 16:50:24 +0000 (12:50 -0400)
Conflicts:
doc/todo/mdwn_preview.mdwn

1  2 
doc/todo/mdwn_preview.mdwn

index 3414603ad473c5631de77bc6329f86ea75144b46,6ab8d604bf744b2327b35cd4aeedc8c2ec4b8261..2fa4603368cfa81d02513b476ad1bae7e1f58bd0
@@@ -27,38 -23,118 +27,62 @@@ add to ikiwiki
  >>> 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.
- >>>
- >>> Can I get a license statement (ie, GPL-2+) ffrom you for the plugin?
- >>> --[[Joey]] 
+ >>>> 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]]
  
 -------
 -
 -### Instructions:
 -
 -
 -Download the [WMD source](http://wmd-editor.com/downloads/wmd-1.0.1.zip).  In that zip file you'll
 -find a few example html files, a readme and `wmd` directory.  Move the `wmd` directory into the
 -ikiwiki `underlays` directory.  You should now have an `underlays/wmd/wmd.js` file as well as 
 -some other javascript files and an images directory in the same place.
 -
  > 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. --[[Joey]] 
 +> 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]]
  
 -Install the following patch and plugin file.  Then enable the 'wmd' plugin.
 -
 -
 -    diff --git a/templates/editpage.tmpl b/templates/editpage.tmpl
 -    index 4b54db2..b1cf015 100644
 -    --- a/templates/editpage.tmpl
 -    +++ b/templates/editpage.tmpl
 -    @@ -37,6 +37,7 @@ Optional comment about this change:<br />
 -     </div>
 -     </TMPL_IF>
 -     <TMPL_VAR FORM-END>
 -    +<TMPL_VAR WMD_PREVIEW>
 -     
 -     <TMPL_IF NAME="PAGE_PREVIEW">
 -     <hr />
 -
 ------
 -
 -    #!/usr/bin/perl
 -    package IkiWiki::Plugin::wmd;
 -    
 -    use warnings;
 -    use strict;
 -    use IkiWiki 3.00;
 -    use POSIX;
 -    use Encode;
 -    
 -    sub import {
 -      add_underlay("wmd");
 -      hook(type => "getsetup", id => "wmd", call => \&getsetup);
 -      hook(type => "formbuilder_setup", id => "wmd", call => \&formbuilder_setup);
 -    }
 -    
 -    sub getsetup () {
 -      return
 -              plugin => {
 -                      safe => 1,
 -                      rebuild => 1,
 -              },
 -    }
 -    
 -    sub formbuilder_setup (@) {
 -      my %params=@_;
 -      my $form=$params{form};
 -    
 -      return if ! defined $form->field("do");
 -      
 -      return unless (($form->field("do") eq "edit") ||
 -                              ($form->field("do") eq "create"));
 -    
 -      $form->tmpl_param("wmd_preview", "<div class=\"wmd-preview\"></div>\n".include_javascript(undef, 1));
 -    }
 -    
 -    sub include_javascript ($;$) {
 -      my $page=shift;
 -      my $absolute=shift;
 -      
 -      return '<script src="'.urlto("wmd.js", $page, $absolute).
 -              '" type="text/javascript"></script>'."\n";
 -    }
 -    
 -    1
 -
+ >> 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]]
- > but: the live preview is missing the >Page Preview:" header.) --[[Joey]] 
 +> 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? --[[Joey]]