[ https://jira.codehaus.org/browse/MSKINS-95?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=359477#comment-359477 ]
Michael Osipov edited comment on MSKINS-95 at 12/22/14 6:11 AM: ---------------------------------------------------------------- I have located this problem and it is not rooted in the site plugin but is two-fold: 1. Doxia has been upgraded in the site plugin and its [{{AbstractXmlSink#writeStartTag}}|http://maven.apache.org/doxia/doxia/doxia-core/xref/org/apache/maven/doxia/sink/AbstractXmlSink.html#L111] adds by default a line break after each block since {{div}} and {{pre}} are considered to be block elements they are split apart which does not matter for HTML/XML. 2. The [{{site.vm}}|http://svn.apache.org/viewvc/maven/skins/branches/maven-fluido-skin-1.3.x/src/main/resources/META-INF/maven/site.vm?view=markup#l1146] of the skin used (fluido) has a very stupid approach to apply the {{prettyprint}} class: {code} $bodyContent.replaceAll( "<div class=\"source\"><pre>", "<div class=\"source\"><pre class=\"$sourceStyle\">" ).replaceAll( "class=\"bodyTable\"", "class=\"table table-striped\"" ) {code} it completely neglects that XML cannot be processed with regex but it happens here. Whitespace characters between them are ignored. Since fluido is the only skin whoch does pretty print, I will move this issue. was (Author: michael-o): I have located this problem and it is not rooted in the site plugin but is two-fold: 1. Doxia has been upgraded and its [{{AbstractXmlSink#writeStartTag}}|http://maven.apache.org/doxia/doxia/doxia-core/xref/org/apache/maven/doxia/sink/AbstractXmlSink.html#L111] adds by default a line break after each block since {{div}} and {{pre}} are considered to be block elements they are split apart which does not matter for HTML/XML. 2. The [{{site.vm}}|http://svn.apache.org/viewvc/maven/skins/branches/maven-fluido-skin-1.3.x/src/main/resources/META-INF/maven/site.vm?view=markup#l1146] of the skin used (fluido) has a very stupid approach to apply the {{prettyprint}} class: {code} $bodyContent.replaceAll( "<div class=\"source\"><pre>", "<div class=\"source\"><pre class=\"$sourceStyle\">" ).replaceAll( "class=\"bodyTable\"", "class=\"table table-striped\"" ) {code} it completely neglects that XML cannot be processed with regex but it happens here. Whitespace characters between them are ignored. Since fluido is the only skin whoch does pretty print, I will move this issue. > Doxia 1.6 puts a line break between div and pre, pretty print is broken > ----------------------------------------------------------------------- > > Key: MSKINS-95 > URL: https://jira.codehaus.org/browse/MSKINS-95 > Project: Maven Skins > Issue Type: Bug > Components: Fluido Skin > Affects Versions: fluido-1.3.1 > Environment: Maven v3.0.5 > Reporter: Rautureau > Fix For: fluido-1.4.0, fluido-1.3.2 > > Attachments: 3.2.png, 3.3.png, maven-site-example.zip > > > Hi, > you will find in attachment a maven project that shows the issue. > When you run the command {{mvn site}} you get: > !3.2.png! > When you run the command {{mvn site -Dmaven.site.plugin.version=3.3}} you get > !3.3.png! > By comparing html produce by maven-site-plugin: > * With 3.2, all snippets are in tag "<pre class="prettyprint linenums">some > code</pre> > * With 3.3, all snippets are in tag "<pre>some code</pre>" > This is why the fluido skin .js don't activate color syntax nor line > numbering. -- This message was sent by Atlassian JIRA (v6.1.6#6162)