regards
Pascal
On Tue, May 5, 2009 at 4:58 PM, Vincent Massol <vincent(a)massol.net>
wrote:
On May 5, 2009, at 4:16 PM, Pascal Voitot wrote:
no better idea...
a very special case to remind in the syntax help to my mind...
Just committed the new behavior. Would be great if some users/devs
could verify it works on their use cases.
Thanks
-Vincent
Pascal
On Tue, May 5, 2009 at 9:40 AM, Vincent Massol <vincent(a)massol.net>
wrote:
> After trying to implement it I've found the following caveats:
>
> * if the user wants an html comment he needs to escape the --
> * if the user wants a NL he'll need to enter <br/>
> * if the user wants a paragraph he'll need to enter <p>...</p>
> * And the most problematic one IMO: the user needs to be very
> careful
> about new lines since:
>
> <table>
> <tr>
> <td>
> * [[listitem]]
> </td>
> </tr>
> </table>
>
> is very different from
>
> <table>
> <tr>
> <td>
> * [[listitem]]
>
> </td>
> </tr>
> </table>
>
> In the first case the </td>, </tr> and </table> and continuation
of
> the list item written in wiki syntax since the wiki parser accepts
> multiline content... hence you'll get in XHTML:
>
>
<table><tbody><tr><td><ul><li><!--startwikilink:listitem--><span
> class="wikicreatelink"><a href="/xwiki/bin/view/listitem?
> parent=xwiki:Space.Page"><span
> class="wikigeneratedlinkcontent">Page</
>
span></a></span><!--stopwikilink--></td></tr></tbody></table></
> li></
> ul>
>
> which is completely invalid.
>
> The same applies for:
>
> {{macro/}}
> </td>
>
> vs
>
> {{macro/}}
>
> </td>
>
> in the first case the macro is inline and will generate inline
> content
> and in the second case it's standalone.
>
> Still trying to figure out a best solution but I don't see one
> right
> now...
>
> If you have any idea, shoot!
>
> Thanks
> -Vincent
>
> On May 4, 2009, at 3:25 PM, Vincent Massol wrote:
>
>> Hi,
>>
>> After discussing with Thomas we've reached the conclusion that we
>> should change the way the HTML macro handle its content when
>> wiki=true.
>> For ex take the following input:
>>
>> {{velocity}}
>> ...
>> {{html wiki="true"}}
>> <form>
>> $xwiki.includeForm("XWiki.MyClassSheet")
>> <br />
>> <p>
>> <input type="submit" name="submit" value="Create this
new
>> Workpackage" />
>> </p>
>> </form>
>> {{/html}}
>> ...
>> {{/velocity}}
>>
>> And assume that MyClassSheet has some $doc.display() velocity code
>> which thus generate {{html}} macros.
>>
>> Current Result
>> ============
>>
>> Right now here's what happens:
>> 1) velocity macro is executed and $xwiki.includeForm executes
>> 2) MyClassSheet generate {{html}} macro content thus yielding:
>>
>> {{html wiki="true"}}
>> <form>
>> {{html}}...<someTag>...</someTag>{{/html}}
>> </form>
>> {{/html}}
>>
>> 3) After velocity has finished executing the velocity macro calls
>> the wiki parser on the result and thus the top level HTML macro
>> executes
>> 4) since wiki=true the content is given to a SAX parser and each
>> XML
>> tag content is given to the wiki parser. Thus "{{html}}...",
"..."
>> and "{{/html}}" will be parser by the wiki parser separately
>> (because <someTag> is valid XML), thus generating non expected
>> content as a result.
>>
>> Proposed change
>> ==============
>>
>> Modify the HTML behavior so that the wiki parser executes first
>> (instead of the SAX parser) and render the result using a special
>> renderer that prints the special symbols and text as is.
>>
>> When run on our example this would give (same steps 1) and 2)):
>>
>> 3) wiki parser executes and generate XDOM. Render it using the
>> special renderer
>>
>> Note that this means that if in HTML your write content that has a
>> meaning in some wiki syntax you'll need to escape it. For
>> example if
>> you have:
>>
>> {{html wiki=true}}
>> <!--hello-->
>> {{/html}}
>>
>> you'll get some strikethrough. So you'll need to write instead:
>>
>> {{html wiki=true}}
>> <!~-~-hello~-~->
>> {{/html}}
>>
>> WDYT?
>>
>> Here's my +1
>>
>> Thanks
>> -Vincent
>>
>
> _______________________________________________
> devs mailing list
> devs(a)xwiki.org
>
http://lists.xwiki.org/mailman/listinfo/devs
>
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
_______________________________________________
devs mailing list
devs(a)xwiki.org