From 39949a8f44414c356f3824dcf3087feec1c2f2d1 Mon Sep 17 00:00:00 2001 From: Keith Fahlgren Date: Tue, 17 Nov 2009 04:05:19 +0000 Subject: [PATCH] Adding support for partintros with sect2s, 3s, etc --- xsl/epub/bin/spec/epub_regressions_spec.rb | 8 +++++ xsl/epub/bin/spec/files/partintro.xml | 35 ++++++++++++++++++++++ xsl/epub/docbook.xsl | 8 ++--- 3 files changed, 47 insertions(+), 4 deletions(-) create mode 100644 xsl/epub/bin/spec/files/partintro.xml diff --git a/xsl/epub/bin/spec/epub_regressions_spec.rb b/xsl/epub/bin/spec/epub_regressions_spec.rb index 2be252200..5defca998 100755 --- a/xsl/epub/bin/spec/epub_regressions_spec.rb +++ b/xsl/epub/bin/spec/epub_regressions_spec.rb @@ -215,6 +215,14 @@ describe DocBook::Epub do end end + it "should allow sect2s inside partintros" do + partintro_epub = DocBook::Epub.new(File.join(@filedir, "partintro.xml"), @tmpdir) + partintro_epubfile = File.join(@tmpdir, "partintro.epub") + partintro_epub.render_to_file(partintro_epubfile, $DEBUG) + partintro_epubfile.should be_valid_epub + end + + after(:all) do FileUtils.rm_r(@tmpdir, :force => true) end diff --git a/xsl/epub/bin/spec/files/partintro.xml b/xsl/epub/bin/spec/files/partintro.xml new file mode 100644 index 000000000..2801bee2f --- /dev/null +++ b/xsl/epub/bin/spec/files/partintro.xml @@ -0,0 +1,35 @@ + + + + Partintro with sect2s + + + A sect1 in a partintro + With a little text. + + A sect2 in a sect1 in a partintro + With a little text. + + + A 2nd sect2 in a sect1 in a partintro + With a little text. + + + + + Chapter + Some test data + + First Part + + Referencing gloss-1. + + A sect1 in a chapter + With a little text. + + + + + + diff --git a/xsl/epub/docbook.xsl b/xsl/epub/docbook.xsl index 60fbb2858..bc889e3f7 100644 --- a/xsl/epub/docbook.xsl +++ b/xsl/epub/docbook.xsl @@ -565,10 +565,10 @@ preceding::glossary| preceding::section[not(parent::partintro)]| preceding::sect1[not(parent::partintro)]| - preceding::sect2| - preceding::sect3| - preceding::sect4| - preceding::sect5| + preceding::sect2[not(ancestor::partintro)]| + preceding::sect3[not(ancestor::partintro)]| + preceding::sect4[not(ancestor::partintro)]| + preceding::sect5[not(ancestor::partintro)]| preceding::refentry| preceding::colophon| preceding::bibliodiv[title]| -- 2.40.0