Some prelim work on builder api.
[librarian.git] / src / librarian / pdf / wl2tex.xslt
index 820033d..ab189e0 100644 (file)
@@ -2,7 +2,7 @@
 <!--
 
    This file is part of Librarian, licensed under GNU Affero GPLv3 or later.
-   Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+   Copyright © Fundacja Wolne Lektury. See NOTICE for more information.
 
 -->
 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                 </xsl:if>
             </TeXML>
 
+           <TeXML escape="0">
+                   \ifendnotes
+\newpage
+\begingroup
+\parindent 0pt
+\parskip 2ex
+\def\enotesize{\normalsize}
+\printendnotes
+                   \endgroup
+                   \fi
+           </TeXML>
+
             <cmd name="editorialsection" />
 
         </env>
 
         \def\bookurl{<TeXML escape="1"><xsl:value-of select=".//dc:identifier.url" /></TeXML>}
 
-        \def\rightsinfo{Ten utwór nie jest objęty majątkowym prawem autorskim i~znajduje się w~domenie
-            publicznej, co oznacza że możesz go swobodnie wykorzystywać, publikować
-            i~rozpowszechniać. Jeśli utwór opatrzony jest dodatkowymi materiałami
-            (przypisy, motywy literackie etc.), które podlegają prawu autorskiemu, to
-            te dodatkowe materiały udostępnione są na licencji
-            \href{http://creativecommons.org/licenses/by-sa/3.0/}{Creative Commons
-            Uznanie Autorstwa – Na Tych Samych Warunkach 3.0 PL}.}
+        \def\rightsinfo{Ten utwór jest w~domenie publicznej.}
         <xsl:if test=".//dc:rights.license">
             \def\rightsinfo{Ten utwór jest udostępniony na licencji
             \href{<xsl:value-of select=".//dc:rights.license" />}{<TeXML escape="1"><xsl:apply-templates select=".//dc:rights" mode="inline" /></TeXML>}.}
 
 
 <xsl:template
-       match="naglowek_osoba|naglowek_podrozdzial|podtytul_podrozdzial|miejsce_czas|didaskalia|lista_osoba|akap|akap_dialog|akap_cd|motto_podpis|naglowek_listy|srodtytul|podtytul_czesc|podtytul_rozdzial|podtytul_akt|podtytul_scena">
-    <cmd>
+    match="naglowek_osoba|naglowek_podrozdzial|podtytul_podrozdzial|miejsce_czas|didaskalia|lista_osoba|akap|akap_dialog|akap_cd|motto_podpis|naglowek_listy|srodtytul|podtytul_czesc|podtytul_rozdzial|podtytul_akt|podtytul_scena">
+  <xsl:choose>
+    <xsl:when test="@inline">
+      <xsl:apply-templates mode="inline"/>
+    </xsl:when>
+    <xsl:otherwise>
+      <cmd>
         <xsl:attribute name="name">
             <xsl:value-of select="wl:texcommand(name())" />
         </xsl:attribute>
         <parm><xsl:apply-templates mode="inline"/></parm>
-    </cmd>
+      </cmd>
+    </xsl:otherwise>
+  </xsl:choose>
 </xsl:template>
 
 <xsl:template match="naglowek_czesc|naglowek_rozdzial|naglowek_akt|naglowek_scena">
 <!-- = (contain other inline tags and special tags) = -->
 <!-- ================================================ -->
 
+
 <xsl:template mode="inline"
     match="pa|pe|pr|pt|mat|didask_tekst|slowo_obce|wyroznienie|osoba|indeks_dolny|wieksze_odstepy">
     <cmd>
         <xsl:attribute name="name">
-            <xsl:value-of select="wl:texcommand(name())" />
+               <xsl:value-of select="wl:texcommand(name())" />
         </xsl:attribute>
-        <parm><xsl:apply-templates mode="inline"/></parm>
+       <parm>
+         <xsl:choose>
+           <xsl:when test="@blocks">
+              <xsl:apply-templates/>
+            </xsl:when>
+            <xsl:otherwise>
+              <xsl:apply-templates mode="inline"/>
+            </xsl:otherwise>
+          </xsl:choose>
+        </parm>
     </cmd>
 </xsl:template>
 
 </xsl:template>
 
 
+
+<xsl:template match="f_spot">
+  <xsl:if test="@active">
+    <cmd name="clearpage"/>
+    <cmd name="thispagestyle"><parm>empty</parm></cmd>
+    <cmd name="vspace*"><parm><cmd name="fill"/></parm></cmd>
+    <env name="center">
+      <env name="framed">
+        <cmd name="vspace*"><parm>2em</parm></cmd>
+        <cmd name="Large"><parm>
+          <xsl:apply-templates mode="fspot"/>
+        </parm></cmd>
+        <cmd name="vspace*"><parm>2em</parm></cmd>
+      </env>
+    </env>
+    <cmd name="vspace*"><parm><cmd name="fill"/></parm></cmd>
+  </xsl:if>
+</xsl:template>
+<xsl:template match="br" mode="fspot">
+  <TeXML escape="0">
+    \\
+  </TeXML>
+</xsl:template>
+<xsl:template match="text()" mode="fspot">
+  <xsl:value-of select="." />
+</xsl:template>
+<xsl:template match="a" mode="fspot">
+  <TeXML escape="0">\href{<xsl:value-of select="@href" />}{<TeXML escape="1"><xsl:apply-templates mode="fspot" /></TeXML>}</TeXML>
+</xsl:template>
+<xsl:template match="nbsp" mode="fspot">
+  <spec cat="tilde" />
+</xsl:template>
+
+
+
 </xsl:stylesheet>