X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/60e65c52fd7e2dc806fd6ec89f48e9187509d82e..9766bb029682a336cddbb7cb3c0bb38e1f00366a:/doc/todo/format_escape.mdwn diff --git a/doc/todo/format_escape.mdwn b/doc/todo/format_escape.mdwn index 717271c12..315b2d88f 100644 --- a/doc/todo/format_escape.mdwn +++ b/doc/todo/format_escape.mdwn @@ -57,8 +57,47 @@ which aren't used as real extensions but provide useful intermediate types. > > --[[Joey]] +>> Thanks for the compliment. I must confess that I'm not too familiar with +>> rst. I am using this todo item somewhat as a pretext to get the conversion +>> stuff in, which I need to implement some other stuff. As a result I was +>> less careful with the rst plugin than with the rest of the patch. +>> I just updated the patch to fix some other problems which I found with +>> more testing, and document the current limitations. + +>> Rst cannot embed raw html in the middle of a paragraph, which is why +>> "_link" was necessary. Rst links are themselves tricky and can't be made to +>> work inside of words without knowledge about the context. +>> Both problems could be fixed by inserting marks instead of the html/link, +>> which would be replaced at a later stage (htmlize, format), somewhat +>> similiar to the way the toc plugin works. When I get more time I will +>> try to fix the remaining glitches this way. + +>> Also, I think it would be useful if ikiwiki had an option to export +>> the preprocessed source. This way you can use docutils to convert your +>> rst documents to other formats. Raw html would be loosed in such a +>> process (both with directives and marks), which is another +>> argument for `"_link"` and other intermediate forms. I think I can +>> come up with a way for rst's convert_link to be used only for export +>> purposes, though. + +>> --[[JeremieKoenig]] + +> Another problem with this approach is when there is some html (say a +> table), that contains a wikilink. If the link is left up to the markup +> lamguage to handle, it will never convert it to a link, since the table +> 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 -[[tag patch]] +[[!tag patch]]
 Index: debian/changelog
@@ -179,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
--  [[WikiLinks|WikiLink]] and many
--  [[PreprocessorDirectives|PreprocessorDirective]].
+-  [[WikiLinks|ikiwiki/WikiLink]] and many
+-  [[PreprocessorDirectives|ikiwiki/PreprocessorDirective]].
 +* 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