From ddf1b8894c36017dce35ea62280d60ae0dc57539 Mon Sep 17 00:00:00 2001 From: Elisabeth Henry Date: Sun, 19 Mar 2017 08:50:37 +0100 Subject: [PATCH] Only include latex packages if the feature is used --- src/lib/latex.rs | 4 ++++ templates/latex/template.tex | 24 ++++++++++++++++++------ 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/src/lib/latex.rs b/src/lib/latex.rs index f27750b..8e3c213 100644 --- a/src/lib/latex.rs +++ b/src/lib/latex.rs @@ -207,6 +207,10 @@ impl<'a> LatexRenderer<'a> { .insert_bool("tex_title", self.book.options.get_bool("tex.title").unwrap()) .insert_str("papersize", self.book.options.get_str("tex.paper_size").unwrap()) .insert_bool("stdpage", self.book.options.get_bool("tex.stdpage").unwrap()) + .insert_bool("use_url", self.book.features.url) + .insert_bool("use_tables", self.book.features.table) + .insert_bool("use_codeblocks", self.book.features.codeblock) + .insert_bool("use_images", self.book.features.image) .insert_str("tex_lang", tex_lang); if let Ok(tex_tmpl_add) = self.book.options.get_str("tex.template.add") { data = data.insert_str("additional_code", tex_tmpl_add); diff --git a/templates/latex/template.tex b/templates/latex/template.tex index d02d0cb..6f7c60b 100644 --- a/templates/latex/template.tex +++ b/templates/latex/template.tex @@ -11,23 +11,35 @@ \usepackage[<<&tex_lang>>]{babel} \usepackage{fancyhdr} +<<#use_tables>> +% Only included if document contains tables \usepackage{tabularx} -\usepackage{spverbatim} -\usepackage{graphicx} +<> +<<#use_codeblocks>> +% Only included if document contains code blocks \usepackage{color} \usepackage[ topline=false, rightline=false, bottomline=false]{mdframed} -<<#initials>> % only if use_initials is set to true -\usepackage{lettrine} -<> - +\usepackage{spverbatim} +<> +<<#use_images>> +% Only included if document contains images +\usepackage{graphicx} +<> +<<#use_url>> +% Only included if URLs are used in the document \usepackage[colorlinks=true,breaklinks=true,hypertexnames=false]{hyperref} <<^xelatex>> \usepackage[anythingbreaks]{breakurl} <> +<> + +<<#initials>> % only if use_initials is set to true +\usepackage{lettrine} +<> <<#stdpage>> \usepackage[<<&papersize>>]{geometry}