diff options
Diffstat (limited to 'manuscrit.xsl')
-rw-r--r-- | manuscrit.xsl | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/manuscrit.xsl b/manuscrit.xsl new file mode 100644 index 0000000..15d10fa --- /dev/null +++ b/manuscrit.xsl @@ -0,0 +1,129 @@ +<?xml version="1.0" encoding="utf-8"?> +<xsl:stylesheet + version="1.0" + xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:html="http://www.w3.org/1999/xhtml" + xmlns:m="http://planete-kraus.eu/ns/manuscrit"> + + <xsl:import href="http://h4sp.planete-kraus.eu/transform/latex.xsl" /> + + <xsl:output method="text" indent="no"/> + <xsl:strip-space elements="*" /> + + <xsl:template match="/"> + <xsl:variable name="auteur"> + <xsl:variable name="espacé"> + <xsl:apply-templates select="/html:html/html:head/m:author" /> + </xsl:variable> + <xsl:value-of select="normalize-space($espacé)" /> + </xsl:variable> + <xsl:variable name="titre"> + <xsl:variable name="espacé"> + <xsl:apply-templates select="/html:html/html:head/html:title" /> + </xsl:variable> + <xsl:value-of select="normalize-space($espacé)" /> + </xsl:variable> + <xsl:text>\documentclass[11pt,a4paper,twoside,openright]{book}
</xsl:text> + <xsl:text>\usepackage[utf8]{inputenc}
</xsl:text> + <xsl:text>\usepackage[T1]{fontenc}
</xsl:text> + <xsl:text>\usepackage[french]{babel}
</xsl:text> + <xsl:text>\usepackage{graphicx}
</xsl:text> + <xsl:text>\usepackage{grffile}
</xsl:text> + <xsl:text>\usepackage{longtable}
</xsl:text> + <xsl:text>\usepackage{wrapfig}
</xsl:text> + <xsl:text>\usepackage{rotating}
</xsl:text> + <xsl:text>\usepackage[normalem]{ulem}
</xsl:text> + <xsl:text>\usepackage{amsmath}
</xsl:text> + <xsl:text>\usepackage{textcomp}
</xsl:text> + <xsl:text>\usepackage{amssymb}
</xsl:text> + <xsl:text>\usepackage{capt-of}
</xsl:text> + <xsl:text>\usepackage{hyperref}
</xsl:text> + <xsl:text>\usepackage{optidef}
</xsl:text> + <xsl:text>\usepackage{tikz}
</xsl:text> + <xsl:text>\usepackage{subcaption}
</xsl:text> + <xsl:text>\usepackage{geometry}
</xsl:text> + <xsl:text>\usepackage{import}
</xsl:text> + <xsl:text>\usepackage{caption}
</xsl:text> + <xsl:text>\usepackage{algorithm}
</xsl:text> + <xsl:text>\usepackage{algorithmicx}
</xsl:text> + <xsl:text>\usepackage{algpseudocode}
</xsl:text> + <xsl:text>\usepackage{pdfpages}
</xsl:text> + <xsl:text>\usepackage{svg}
</xsl:text> + <xsl:text>
</xsl:text> + <xsl:text>\author{</xsl:text><xsl:value-of select="$auteur" /><xsl:text>}
</xsl:text> + <xsl:text>\title{</xsl:text><xsl:value-of select="$titre" /><xsl:text>}
</xsl:text> + <xsl:text>
</xsl:text> + <xsl:text>\begin{document}
</xsl:text> + <xsl:text>
</xsl:text> + <xsl:text>\makeatletter
</xsl:text> + <xsl:text>\@ifundefined{srcdir}{}{
</xsl:text> + <xsl:text> \graphicspath{{\srcdir}}
</xsl:text> + <xsl:text> \newcommand{\insrcdir}[1]{\srcdir#1}
</xsl:text> + <xsl:text> \let\oldpgfimage\pgfimage
</xsl:text> + <xsl:text> \renewcommand{\pgfimage}[2][]{\oldpfgfimage[#1]{\insrcdir{images/#2}}}
</xsl:text> + <xsl:text>}
</xsl:text> + <xsl:text>\makeatother
</xsl:text> + <xsl:text>
</xsl:text> + <xsl:text>\let\mylistof\listof
</xsl:text> + <xsl:text>\renewcommand\listof[2]{\mylistof{algorithm}{Liste des algorithmes}}
</xsl:text> + <xsl:text>\makeatletter
</xsl:text> + <xsl:text>\providecommand*{\toclevel@algorithm}{0}
</xsl:text> + <xsl:text>\makeatother
</xsl:text> + <xsl:text>
</xsl:text> + <xsl:text>\includepdf{page-de-garde.pdf}
</xsl:text> + <xsl:text>
</xsl:text> + <xsl:apply-templates /> + <xsl:text>\end{document}
</xsl:text> + </xsl:template> + + <xsl:template match="m:résumé"> + <xsl:text>\section*{Résumé}
</xsl:text> + <xsl:apply-templates /> + </xsl:template> + + <xsl:template match="m:mots-clés"> + <xsl:text>
</xsl:text> + <xsl:text>\vspace{1cm}
</xsl:text> + <xsl:text>
</xsl:text> + <xsl:text>\textbf{Mots-clés}~: 
</xsl:text> + <xsl:apply-templates /> + <xsl:text>
</xsl:text> + <xsl:text>\clearpage
</xsl:text> + <xsl:text>
</xsl:text> + </xsl:template> + + <xsl:template match="m:mot-clé[position() = last()]"> + <xsl:apply-templates /><xsl:text>.
</xsl:text> + </xsl:template> + + <xsl:template match="m:mot-clé"> + <xsl:apply-templates /><xsl:text>, </xsl:text> + </xsl:template> + + <xsl:template match="m:abstract"> + <xsl:text>\section*{Abstract}
</xsl:text> + <xsl:apply-templates /> + </xsl:template> + + <xsl:template match="m:keywords"> + <xsl:text>
</xsl:text> + <xsl:text>\vspace{1cm}
</xsl:text> + <xsl:text>
</xsl:text> + <xsl:text>\textbf{Keywords}~: 
</xsl:text> + <xsl:apply-templates /> + <xsl:text>
</xsl:text> + <xsl:text>\cleardoublepage
</xsl:text> + <xsl:text>
</xsl:text> + </xsl:template> + + <xsl:template match="m:keyword[position() = last()]"> + <xsl:apply-templates /><xsl:text>.
</xsl:text> + </xsl:template> + + <xsl:template match="m:keyword"> + <xsl:apply-templates /><xsl:text>, </xsl:text> + </xsl:template> + + <xsl:template match="html:head"> + </xsl:template> +</xsl:stylesheet> |