[xwiki-devs] [GSoC][officeimporter]test WikiModelXHTMLParser and TestEventsListener
Hi, Vincent I test the xhtml parser. There is the focus: 1. base text format underline. I think you can fix it. 2. List both number and bulleted. The problem is in wikimodel xhtmlparser. It don't parser nested list correctly. I think it hard to fix but I will try my best. 3. Link For input <html><body><a href=\"http://xwiki.org\">xwiki</a></body></html>, the xhtmlparser generate beginDocument() beginParagraph([]) beginFormat([]) xwiki<http://xwiki.org> endFormat([]) endParagraph([]) endDocument() I use XhtmlParser and EventDumpListener. But the WikiModelXHTMLParser don't handle the event. Maybe XDOMGeneratorListener have some problem to generate link block. Any suggestion about this? Thanks. 4. table Xhtmlparser can generate table event, but XDOMGeneratorListener don't handle the event correctly. Is it not finished? 5. img Xhtmlparser just ignore the <img> tag. But it's OK since I use imagetagfilter to handle the <img> 6. param of text like <p align="center">text</p>. how to handle the algin parameter? I think, if the problem above can be fixed, xhtmlparser will work for conversion from xhtml to xwiki syntax. Thanks. Wang Ning
Hi Wang, On Aug 15, 2008, at 7:05 AM, Wang Ning wrote:
Hi, Vincent
I test the xhtml parser. There is the focus: 1. base text format underline. I think you can fix it.
see http://code.google.com/p/wikimodel/issues/detail?id=31 Now we need to submit a patch or wait till it's fixed.
2. List both number and bulleted. The problem is in wikimodel xhtmlparser. It don't parser nested list correctly. I think it hard to fix but I will try my best.
See http://code.google.com/p/wikimodel/issues/detail?id=22&can=4 I need to update our version of wikimodel to latest from wikimodel trunk since I think something related to lists has been fixed. I'll do that later today. Otherwise we need to submit a patch or wait.
3. Link For input <html><body><a href=\"http://xwiki.org\">xwiki</a></body></html>, the xhtmlparser generate beginDocument() beginParagraph([]) beginFormat([]) xwiki<http://xwiki.org> endFormat([]) endParagraph([]) endDocument()
I use XhtmlParser and EventDumpListener. But the WikiModelXHTMLParser don't handle the event. Maybe XDOMGeneratorListener have some problem to generate link block. Any suggestion about this? Thanks.
Don't know. Would need to look.
4. table Xhtmlparser can generate table event, but XDOMGeneratorListener don't handle the event correctly. Is it not finished?
Yes tables in xwiki is done using a table macro which is not implemented yet. I'll ask Thomas if that's something he could work on in priority (he's started the code macro but this is even more important, I had forgotten about it).
5. img Xhtmlparser just ignore the <img> tag. But it's OK since I use imagetagfilter to handle the <img>
Then we need to report an issue against the XHTML parser.
6. param of text like <p align="center">text</p>. how to handle the algin parameter?
I think we should use only "style" parameter and then talk with wikimodel to support it somehow.
I think, if the problem above can be fixed, xhtmlparser will work for conversion from xhtml to xwiki syntax.
ok. Thanks -Vincent
Hi Vincent, On Fri, Aug 15, 2008 at 3:12 PM, Vincent Massol <[email protected]> wrote:
Hi Wang,
On Aug 15, 2008, at 7:05 AM, Wang Ning wrote:
Hi, Vincent
I test the xhtml parser. There is the focus: 1. base text format underline. I think you can fix it.
see http://code.google.com/p/wikimodel/issues/detail?id=31
Now we need to submit a patch or wait till it's fixed.
I think I fix it in my machine, but I modify a several class in both xwiki-core-rendering and org.wikimodel.wem. The following is my steps: for xwiki-core-rendering-api 1. add UnderlineBlock in org.xwiki.rendering.block. just like BoldBlock 2. add beginUnderline() and endUnderline() in Listener interface. 3. implement this two new methods in all the implement classes, etc ListenerDelegate, XWikiSyntaxRenderer, XHTMLRenderer for xwiki-core-rendering-wikimodel 1. modify endFormat(WikiFormat format) in XDOMGeneratorListener.java add a else-if for underline format for wikimodel 1. add public static final WikiStyle UNDERLINE = new WikiStyle("u"); in IWemConstants.java 2. XhtmlHandler need to be add a taghandler for underline in TagStack I have test it. It works fine. And I think we can add <del> <sup> <sub> support in the same way. But I found that <u> is deprecated in xhtml. So, do we need support it? Furthermore, As I just want to fix the xhtml parser in wikimodel and WikiModelXHTMLParser so that the xhtml can convert to xdom then to xwiki syntax, so I think I just only need to modify the XhtmlHandler in wikimodel. I don't understand how XWikiScanner.jj works and I think it is for the generation for xwiki syntax to wikimodel, right? Should I submit my patch to wikimodel and xwiki-core-rending?
2. List both number and bulleted. The problem is in wikimodel xhtmlparser. It don't parser nested list correctly. I think it hard to fix but I will try my best.
See http://code.google.com/p/wikimodel/issues/detail?id=22&can=4
I need to update our version of wikimodel to latest from wikimodel trunk since I think something related to lists has been fixed. I'll do that later today.
I use the latest version fo wikimodel. And as you said in the issues-22, list items and lists are closed when they shouldn't.
Otherwise we need to submit a patch or wait.
I think this is a little hard for me to fix it, but I will try.
3. Link For input <html><body><a href=\"http://xwiki.org\">xwiki</a></body></html>, the xhtmlparser generate beginDocument() beginParagraph([]) beginFormat([]) xwiki<http://xwiki.org> endFormat([]) endParagraph([]) endDocument()
I use XhtmlParser and EventDumpListener. But the WikiModelXHTMLParser don't handle the event. Maybe XDOMGeneratorListener have some problem to generate link block. Any suggestion about this? Thanks.
Don't know. Would need to look.
4. table Xhtmlparser can generate table event, but XDOMGeneratorListener don't handle the event correctly. Is it not finished?
Yes tables in xwiki is done using a table macro which is not implemented yet.
I'll ask Thomas if that's something he could work on in priority (he's started the code macro but this is even more important, I had forgotten about it).
5. img Xhtmlparser just ignore the <img> tag. But it's OK since I use imagetagfilter to handle the <img>
Then we need to report an issue against the XHTML parser. I did it yesterday ;)
6. param of text like <p align="center">text</p>. how to handle the algin parameter?
I think we should use only "style" parameter and then talk with wikimodel to support it somehow.
I think, if the problem above can be fixed, xhtmlparser will work for conversion from xhtml to xwiki syntax.
PS: If I add some test case in xwiki-core-rendering-tests for underline <del> <sup> <sub> or <img> <link>, how should I submit the new testcast to the svn? Do I need to create a issue and attach the test case as patch? Or some way else?
ok.
Thanks -Vincent -- Thanks Wang Ning
On Aug 15, 2008, at 10:26 AM, Wang Ning wrote:
Hi Vincent,
On Fri, Aug 15, 2008 at 3:12 PM, Vincent Massol <[email protected]> wrote:
Hi Wang,
On Aug 15, 2008, at 7:05 AM, Wang Ning wrote:
Hi, Vincent
I test the xhtml parser. There is the focus: 1. base text format underline. I think you can fix it.
see http://code.google.com/p/wikimodel/issues/detail?id=31
Now we need to submit a patch or wait till it's fixed.
I think I fix it in my machine, but I modify a several class in both xwiki-core-rendering and org.wikimodel.wem. The following is my steps: for xwiki-core-rendering-api 1. add UnderlineBlock in org.xwiki.rendering.block. just like BoldBlock 2. add beginUnderline() and endUnderline() in Listener interface. 3. implement this two new methods in all the implement classes, etc ListenerDelegate, XWikiSyntaxRenderer, XHTMLRenderer
This is already implemented as FormatBlock and begin/endFormat.
for xwiki-core-rendering-wikimodel 1. modify endFormat(WikiFormat format) in XDOMGeneratorListener.java add a else-if for underline format
Yep. You also need to add the underline in XWikiScanner.jj
for wikimodel 1. add public static final WikiStyle UNDERLINE = new WikiStyle("u"); in IWemConstants.java 2. XhtmlHandler need to be add a taghandler for underline in TagStack
I have test it. It works fine. And I think we can add <del> <sup> <sub> support in the same way. But I found that <u> is deprecated in xhtml. So, do we need support it?
ah good finding. This is maybe why it's not supported by wikimodel. Is there any replacement?
Furthermore, As I just want to fix the xhtml parser in wikimodel and WikiModelXHTMLParser so that the xhtml can convert to xdom then to xwiki syntax, so I think I just only need to modify the XhtmlHandler in wikimodel. I don't understand how XWikiScanner.jj works and I think it is for the generation for xwiki syntax to wikimodel, right?
If you don't change it won't work since currently __ is mapped as bold. It's only a one line change to fix it.
Should I submit my patch to wikimodel and xwiki-core-rending?
For wikmodel yes you can submit your patch in the existing issue. For core rendering you can attach your patches in this issue: http://jira.xwiki.org/jira/browse/XWIKI-2568 (but do a svn up first since I implemented a few things yesterday).
2. List both number and bulleted. The problem is in wikimodel xhtmlparser. It don't parser nested list correctly. I think it hard to fix but I will try my best.
See http://code.google.com/p/wikimodel/issues/detail?id=22&can=4
I need to update our version of wikimodel to latest from wikimodel trunk since I think something related to lists has been fixed. I'll do that later today.
I use the latest version fo wikimodel. And as you said in the issues-22, list items and lists are closed when they shouldn't.
Otherwise we need to submit a patch or wait.
I think this is a little hard for me to fix it, but I will try.
Yes it's not very easy to fix. Mikhail (the main developer of wikimodel) is currently on holiday and will be back only in about 10 days I think.
3. Link For input <html><body><a href=\"http://xwiki.org\">xwiki</a></body></html>, the xhtmlparser generate beginDocument() beginParagraph([]) beginFormat([]) xwiki<http://xwiki.org> endFormat([]) endParagraph([]) endDocument()
I use XhtmlParser and EventDumpListener. But the WikiModelXHTMLParser don't handle the event. Maybe XDOMGeneratorListener have some problem to generate link block. Any suggestion about this? Thanks.
Don't know. Would need to look.
4. table Xhtmlparser can generate table event, but XDOMGeneratorListener don't handle the event correctly. Is it not finished?
Yes tables in xwiki is done using a table macro which is not implemented yet.
I'll ask Thomas if that's something he could work on in priority (he's started the code macro but this is even more important, I had forgotten about it).
5. img Xhtmlparser just ignore the <img> tag. But it's OK since I use imagetagfilter to handle the <img>
Then we need to report an issue against the XHTML parser. I did it yesterday ;)
ok cool. I thought you had commented to disregard your issue :)
6. param of text like <p align="center">text</p>. how to handle the algin parameter?
I think we should use only "style" parameter and then talk with wikimodel to support it somehow.
I think, if the problem above can be fixed, xhtmlparser will work for conversion from xhtml to xwiki syntax.
PS: If I add some test case in xwiki-core-rendering-tests for underline <del> <sup> <sub> or <img> <link>, how should I submit the new testcast to the svn? Do I need to create a issue and attach the test case as patch? Or some way else?
Attach to http://jira.xwiki.org/jira/browse/XWIKI-2568. However if the code doesn't pass the tests then we won't be able to commit them since it would break the build so we need to fix the code so that the tests pass before we can commit them. Check my comments in yesterday svn commit log since I didn't put tests for del and underscore for that reason. Thanks -Vincent
On Fri, Aug 15, 2008 at 4:47 PM, Vincent Massol <[email protected]> wrote:
On Aug 15, 2008, at 10:26 AM, Wang Ning wrote:
Hi Vincent,
On Fri, Aug 15, 2008 at 3:12 PM, Vincent Massol <[email protected]> wrote:
Hi Wang,
On Aug 15, 2008, at 7:05 AM, Wang Ning wrote:
Hi, Vincent
I test the xhtml parser. There is the focus: 1. base text format underline. I think you can fix it.
see http://code.google.com/p/wikimodel/issues/detail?id=31
Now we need to submit a patch or wait till it's fixed.
I think I fix it in my machine, but I modify a several class in both xwiki-core-rendering and org.wikimodel.wem. The following is my steps: for xwiki-core-rendering-api 1. add UnderlineBlock in org.xwiki.rendering.block. just like BoldBlock 2. add beginUnderline() and endUnderline() in Listener interface. 3. implement this two new methods in all the implement classes, etc ListenerDelegate, XWikiSyntaxRenderer, XHTMLRenderer
This is already implemented as FormatBlock and begin/endFormat.
for xwiki-core-rendering-wikimodel 1. modify endFormat(WikiFormat format) in XDOMGeneratorListener.java add a else-if for underline format
Yep. You also need to add the underline in XWikiScanner.jj
for wikimodel 1. add public static final WikiStyle UNDERLINE = new WikiStyle("u"); in IWemConstants.java 2. XhtmlHandler need to be add a taghandler for underline in TagStack
I have test it. It works fine. And I think we can add <del> <sup> <sub> support in the same way. But I found that <u> is deprecated in xhtml. So, do we need support it?
ah good finding. This is maybe why it's not supported by wikimodel. Is there any replacement?
The <ins> tag can do the same thing but the <ins> mean that insert text. Use <ins> together with the <del> tag to describe updates and modifications to a document. So its semantic meaning is different from <u>.
Furthermore, As I just want to fix the xhtml parser in wikimodel and WikiModelXHTMLParser so that the xhtml can convert to xdom then to xwiki syntax, so I think I just only need to modify the XhtmlHandler in wikimodel. I don't understand how XWikiScanner.jj works and I think it is for the generation for xwiki syntax to wikimodel, right?
If you don't change it won't work since currently __ is mapped as bold. It's only a one line change to fix it.
Should I submit my patch to wikimodel and xwiki-core-rending?
For wikmodel yes you can submit your patch in the existing issue. For core rendering you can attach your patches in this issue: http://jira.xwiki.org/jira/browse/XWIKI-2568 (but do a svn up first since I implemented a few things yesterday).
2. List both number and bulleted. The problem is in wikimodel xhtmlparser. It don't parser nested list correctly. I think it hard to fix but I will try my best.
See http://code.google.com/p/wikimodel/issues/detail?id=22&can=4
I need to update our version of wikimodel to latest from wikimodel trunk since I think something related to lists has been fixed. I'll do that later today.
I use the latest version fo wikimodel. And as you said in the issues-22, list items and lists are closed when they shouldn't.
Otherwise we need to submit a patch or wait.
I think this is a little hard for me to fix it, but I will try.
Yes it's not very easy to fix. Mikhail (the main developer of wikimodel) is currently on holiday and will be back only in about 10 days I think.
3. Link For input <html><body><a href=\"http://xwiki.org\">xwiki</a></body></html>, the xhtmlparser generate beginDocument() beginParagraph([]) beginFormat([]) xwiki<http://xwiki.org> endFormat([]) endParagraph([]) endDocument()
I use XhtmlParser and EventDumpListener. But the WikiModelXHTMLParser don't handle the event. Maybe XDOMGeneratorListener have some problem to generate link block. Any suggestion about this? Thanks.
Don't know. Would need to look.
4. table Xhtmlparser can generate table event, but XDOMGeneratorListener don't handle the event correctly. Is it not finished?
Yes tables in xwiki is done using a table macro which is not implemented yet.
I'll ask Thomas if that's something he could work on in priority (he's started the code macro but this is even more important, I had forgotten about it).
5. img Xhtmlparser just ignore the <img> tag. But it's OK since I use imagetagfilter to handle the <img>
Then we need to report an issue against the XHTML parser. I did it yesterday ;)
ok cool. I thought you had commented to disregard your issue :)
6. param of text like <p align="center">text</p>. how to handle the algin parameter?
I think we should use only "style" parameter and then talk with wikimodel to support it somehow.
I think, if the problem above can be fixed, xhtmlparser will work for conversion from xhtml to xwiki syntax.
PS: If I add some test case in xwiki-core-rendering-tests for underline <del> <sup> <sub> or <img> <link>, how should I submit the new testcast to the svn? Do I need to create a issue and attach the test case as patch? Or some way else?
Attach to http://jira.xwiki.org/jira/browse/XWIKI-2568. However if the code doesn't pass the tests then we won't be able to commit them since it would break the build so we need to fix the code so that the tests pass before we can commit them.
Check my comments in yesterday svn commit log since I didn't put tests for del and underscore for that reason.
Thanks -Vincent
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Sincerely, Wang Ning
On Aug 15, 2008, at 10:59 AM, Wang Ning wrote: [snip]
But I found that <u> is deprecated in xhtml. So, do we need support it?
ah good finding. This is maybe why it's not supported by wikimodel. Is there any replacement? The <ins> tag can do the same thing but the <ins> mean that insert text. Use <ins> together with the <del> tag to describe updates and modifications to a document. So its semantic meaning is different from <u>.
Actually XHMTM has deprecated the usage of <u> in favor of style sheets so we should use a style parameter instead. I'll fix this. Thanks -Vincent
participants (2)
-
Vincent Massol -
Wang Ning