Author: jruchaud Date: 2011-12-23 11:35:21 +0100 (Fri, 23 Dec 2011) New Revision: 638 Url: http://nuiton.org/repositories/revision/jrst/638 Log: #1844 Process strong and emphasis in contents directive Added: trunk/jrst/src/test/resources/bugs/testContents.rst Modified: trunk/jrst/src/main/java/org/nuiton/jrst/JRSTReader.java trunk/jrst/src/test/java/org/nuiton/jrst/bugs/DirectiveTest.java Modified: trunk/jrst/src/main/java/org/nuiton/jrst/JRSTReader.java =================================================================== --- trunk/jrst/src/main/java/org/nuiton/jrst/JRSTReader.java 2011-12-16 16:14:28 UTC (rev 637) +++ trunk/jrst/src/main/java/org/nuiton/jrst/JRSTReader.java 2011-12-23 10:35:21 UTC (rev 638) @@ -698,8 +698,25 @@ } } - reference.setText(text.replaceAll("_", "").trim()); + + text = text.trim(); + text = text.replaceAll("_", ""); + + text = REGEX_STRONG.matcher(text).replaceAll( + "<" + STRONG + ">$1</" + STRONG + ">"); + text = REGEX_EMPHASIS.matcher(text).replaceAll( + "<" + EMPHASIS + ">$1</" + EMPHASIS + ">"); + + try { + Element textElement = DocumentHelper.parseText("<TMP>" + text + "</TMP>").getRootElement(); + reference.appendContent(textElement); + } catch (DocumentException eee) { + if (log.isWarnEnabled()) { + log.warn("Can't inline text for " + e, eee); + } + } + } else { do { e.addAttribute(LEVEL, "" + (level - 1)); Modified: trunk/jrst/src/test/java/org/nuiton/jrst/bugs/DirectiveTest.java =================================================================== --- trunk/jrst/src/test/java/org/nuiton/jrst/bugs/DirectiveTest.java 2011-12-16 16:14:28 UTC (rev 637) +++ trunk/jrst/src/test/java/org/nuiton/jrst/bugs/DirectiveTest.java 2011-12-23 10:35:21 UTC (rev 638) @@ -81,4 +81,21 @@ String content = FileUtils.readFileToString(out); assertTrue(content.indexOf("Table des matières") > 0); } + + /** + * Test strong and emphasis in title. + * + * @throws Exception + */ + @Test + public void testContentsDirective() throws Exception { + File in = getBugTestFile("testContents.rst"); + File out = getOutputTestFile("jrst-testContents.html"); +// out.deleteOnExit(); + JRST.generate(JRST.TYPE_HTML, in, out, JRST.Overwrite.ALLTIME); + + String content = FileUtils.readFileToString(out); + assertTrue(content.indexOf("<b>") > 0); + assertTrue(content.indexOf("<em>") > 0); + } } Copied: trunk/jrst/src/test/resources/bugs/testContents.rst (from rev 637, trunk/jrst/src/test/resources/bugs/testNoContentSubtitles.rst) =================================================================== --- trunk/jrst/src/test/resources/bugs/testContents.rst (rev 0) +++ trunk/jrst/src/test/resources/bugs/testContents.rst 2011-12-23 10:35:21 UTC (rev 638) @@ -0,0 +1,52 @@ +.. - +.. * #%L +.. * JRst :: Api +.. * +.. * $Id$ +.. * $HeadURL$ +.. * %% +.. * Copyright (C) 2004 - 2011 CodeLutin +.. * %% +.. * This program is free software: you can redistribute it and/or modify +.. * it under the terms of the GNU Lesser General Public License as +.. * published by the Free Software Foundation, either version 3 of the +.. * License, or (at your option) any later version. +.. * +.. * This program is distributed in the hope that it will be useful, +.. * but WITHOUT ANY WARRANTY; without even the implied warranty of +.. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +.. * GNU General Lesser Public License for more details. +.. * +.. * You should have received a copy of the GNU General Lesser Public +.. * License along with this program. If not, see +.. * <http://www.gnu.org/licenses/lgpl-3.0.html>. +.. * #L% +.. - +Prérequis +========= + +.. contents:: + +Prérequis normal +---------------- + +bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla +bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla +bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla +bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla + +Prérequis **strong** +-------------------- + +bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla +bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla +bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla +bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla + +Prérequis *emphasis* +-------------------- + +bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla +bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla +bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla +bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla