]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/todo/format_escape.mdwn
More friendly display of markdown, textile in edit form selector (jmtd)
[git.ikiwiki.info.git] / doc / todo / format_escape.mdwn
index ebee558fbb1bc2757182daf957863fe1b58a6c99..574883d1b0f3f8e81ac8f935133e2c2076403f40 100644 (file)
@@ -88,8 +88,16 @@ which aren't used as real extensions but provide useful intermediate types.
 > will be processed as a chunk of raw html.
 > --[[Joey]]
 
 > will be processed as a chunk of raw html.
 > --[[Joey]]
 
+### Updated patch
+
+I've created an updated [patch](http://www.idletheme.org/code/patches/ikiwiki-format-escapes-rlk-2007-09-24.diff) against the current revision.  No real functionality changes, except for a small test script, one minor bugfix (put a "join" around a scalar-context "map" in convert_link), and some wrangling to get it merged properly; I thought it might be helpful for anyone else who wants to work on the code.
+
+(With that out of the way, I think I'm going to take a stab at Jeremie's plan to use marks which would be replaced post-htmlization.  I've also got an eye towards [[todo/multiple_output_formats]].)
+
+--Ryan Koppenhaver
+
 ## Original patch
 ## Original patch
-[[tag patch]]
+[[!tag patch]]
 
 <pre>
 Index: debian/changelog
 
 <pre>
 Index: debian/changelog
@@ -133,13 +141,13 @@ Index: IkiWiki/Plugin/rst.pm
  print html[html.find('<body>')+6:html.find('</body>')].strip();
  ";
  
  print html[html.find('<body>')+6:html.find('</body>')].strip();
  ";
  
- sub import { #{{{
+ sub import {
        hook(type => "htmlize", id => "rst", call => \&htmlize);
 +      hook(type => "htmlescape", id => "rst", call => \&htmlescape);
 +      hook(type => "htmlescapelink", id => "rst", call => \&htmlescapelink);
        hook(type => "htmlize", id => "rst", call => \&htmlize);
 +      hook(type => "htmlescape", id => "rst", call => \&htmlescape);
 +      hook(type => "htmlescapelink", id => "rst", call => \&htmlescapelink);
- } # }}}
+ }
  
  
-+sub htmlescapelink ($$;@) { #{{{
++sub htmlescapelink ($$;@) {
 +      my $url = shift;
 +      my $text = shift;
 +      my %params = @_;
 +      my $url = shift;
 +      my $text = shift;
 +      my %params = @_;
@@ -150,15 +158,15 @@ Index: IkiWiki/Plugin/rst.pm
 +      else {
 +              return "`$text <$url>`_";
 +      }
 +      else {
 +              return "`$text <$url>`_";
 +      }
-+} # }}}
++}
 +
 +
-+sub htmlescape ($) { #{{{
++sub htmlescape ($) {
 +      my $html=shift;
 +      $html=~s/^/  /mg;
 +      return ".. raw:: html\n\n".$html;
 +      my $html=shift;
 +      $html=~s/^/  /mg;
 +      return ".. raw:: html\n\n".$html;
-+} # }}}
++}
 +
 +
- sub htmlize (@) { #{{{
+ sub htmlize (@) {
        my %params=@_;
        my $content=$params{content};
 Index: doc/plugins/write.mdwn
        my %params=@_;
        my $content=$params{content};
 Index: doc/plugins/write.mdwn
@@ -210,8 +218,8 @@ Index: doc/plugins/rst.mdwn
  
 -* reStructuredText does not allow raw html to be inserted into
 -  documents, but ikiwiki does so in many cases, including
  
 -* reStructuredText does not allow raw html to be inserted into
 -  documents, but ikiwiki does so in many cases, including
--  [[WikiLinks|WikiLink]] and many
--  [[PreprocessorDirectives|PreprocessorDirective]].
+-  [[WikiLinks|ikiwiki/WikiLink]] and many
+-  [[Directives|ikiwiki/Directive]].
 +* Some bits of ikiwiki may still assume that markdown is used or embed html
 +  in ways that break reStructuredText. (Report bugs if you find any.)
  * It's slow; it forks a copy of python for each page. While there is a
 +* Some bits of ikiwiki may still assume that markdown is used or embed html
 +  in ways that break reStructuredText. (Report bugs if you find any.)
  * It's slow; it forks a copy of python for each page. While there is a
@@ -264,7 +272,7 @@ Index: IkiWiki.pm
 +        return $hooks{htmlescapelink}{$type}{call}->($bestlink, $linktext);
 +      }
        return "<a href=\"$bestlink\">$linktext</a>";
 +        return $hooks{htmlescapelink}{$type}{call}->($bestlink, $linktext);
 +      }
        return "<a href=\"$bestlink\">$linktext</a>";
- } #}}}
+ }
  
 @@ -628,6 +640,14 @@
                                preview => $preprocess_preview,
  
 @@ -628,6 +640,14 @@
                                preview => $preprocess_preview,