initial commit
This commit is contained in:
commit
19fdae6bd2
7 changed files with 295 additions and 0 deletions
34
README.html
Normal file
34
README.html
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta name="generator" content="pandoc">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
|
||||||
|
<title></title>
|
||||||
|
<style type="text/css">code{white-space: pre;}</style>
|
||||||
|
<!--[if lt IE 9]>
|
||||||
|
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
|
||||||
|
<![endif]-->
|
||||||
|
<link rel="stylesheet" href="styling.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<nav id="TOC">
|
||||||
|
<ul>
|
||||||
|
<li><a href="#no-brainer-markdown-to-html-pdf">No Brainer Markdown to HTML & PDF</a><ul>
|
||||||
|
<li><a href="#dependencies">Dependencies</a></li>
|
||||||
|
</ul></li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
<h1 id="no-brainer-markdown-to-html-pdf">No Brainer Markdown to HTML & PDF</h1>
|
||||||
|
<p>Given a tree of markdown file, generate an HTML and PDF generated file for each. Just launch.</p>
|
||||||
|
<pre><code>./compile.sh</code></pre>
|
||||||
|
<h2 id="dependencies">Dependencies</h2>
|
||||||
|
<ul>
|
||||||
|
<li><a href="http://pandoc.org">pandoc</a></li>
|
||||||
|
<li><a href="http://xelatex.org">XeLaTeX</a></li>
|
||||||
|
</ul>
|
||||||
|
<div id="footer">
|
||||||
|
<a href="yannesposito.com">Y</a>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
13
README.md
Normal file
13
README.md
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
# No Brainer Markdown to HTML & PDF
|
||||||
|
|
||||||
|
Given a tree of markdown file, generate an HTML and PDF generated file for each.
|
||||||
|
Just launch.
|
||||||
|
|
||||||
|
~~~
|
||||||
|
./compile.sh
|
||||||
|
~~~
|
||||||
|
|
||||||
|
## Dependencies
|
||||||
|
|
||||||
|
- [pandoc](http://pandoc.org)
|
||||||
|
- [XeLaTeX](http://xelatex.org)
|
BIN
README.pdf
Normal file
BIN
README.pdf
Normal file
Binary file not shown.
27
compile.sh
Executable file
27
compile.sh
Executable file
|
@ -0,0 +1,27 @@
|
||||||
|
#!/usr/bin/env zsh
|
||||||
|
|
||||||
|
for fic in **/*.md(.); do
|
||||||
|
print -n -- ${fic:r}.html
|
||||||
|
prefix=$(print -- $fic|perl -pe 's#[^/]*/#../#g;s#[^/]*$##')
|
||||||
|
pandoc -s -S --toc --css "${prefix}styling.css" \
|
||||||
|
-V lang=en \
|
||||||
|
-V highlighting-css= --mathjax \
|
||||||
|
--smart --to=html5 -A footer.html \
|
||||||
|
-o "${fic:r}.html" \
|
||||||
|
$fic
|
||||||
|
print " [DONE]"
|
||||||
|
|
||||||
|
print -n -- ${fic:r}.pdf
|
||||||
|
pandoc -s -S -N --toc \
|
||||||
|
--template=template.latex \
|
||||||
|
--variable mainfont="Hoefler Text" \
|
||||||
|
--variable sansfont="Futura" \
|
||||||
|
--variable monofont="Menlo" \
|
||||||
|
--variable fontsize=14pt \
|
||||||
|
--variable linkcolor=orange \
|
||||||
|
--variable urlcolor=orange \
|
||||||
|
--latex-engine=xelatex \
|
||||||
|
-o ${fic:r}.pdf \
|
||||||
|
$fic
|
||||||
|
print " [DONE]"
|
||||||
|
done
|
3
footer.html
Normal file
3
footer.html
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<div id="footer">
|
||||||
|
<a href="yannesposito.com">Y</a>
|
||||||
|
</div>
|
13
styling.css
Normal file
13
styling.css
Normal file
File diff suppressed because one or more lines are too long
205
template.latex
Normal file
205
template.latex
Normal file
|
@ -0,0 +1,205 @@
|
||||||
|
\documentclass[$if(fontsize)$$fontsize$,$endif$$if(lang)$$lang$,$endif$$if(papersize)$$papersize$,$endif$$for(classoption)$$classoption$$sep$,$endfor$]{$documentclass$}
|
||||||
|
$if(fontfamily)$
|
||||||
|
\usepackage{$fontfamily$}
|
||||||
|
$else$
|
||||||
|
\usepackage{lmodern}
|
||||||
|
$endif$
|
||||||
|
$if(linestretch)$
|
||||||
|
\usepackage{setspace}
|
||||||
|
\setstretch{$linestretch$}
|
||||||
|
$endif$
|
||||||
|
\usepackage{amssymb,amsmath}
|
||||||
|
\usepackage{ifxetex,ifluatex}
|
||||||
|
\usepackage{fixltx2e} % provides \textsubscript
|
||||||
|
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
\usepackage[utf8]{inputenc}
|
||||||
|
$if(euro)$
|
||||||
|
\usepackage{eurosym}
|
||||||
|
$endif$
|
||||||
|
\else % if luatex or xelatex
|
||||||
|
\ifxetex
|
||||||
|
\usepackage{mathspec}
|
||||||
|
\usepackage{xltxtra,xunicode}
|
||||||
|
\else
|
||||||
|
\usepackage{fontspec}
|
||||||
|
\fi
|
||||||
|
\defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
|
||||||
|
\newcommand{\euro}{€}
|
||||||
|
$if(mainfont)$
|
||||||
|
\setmainfont{$mainfont$}
|
||||||
|
$endif$
|
||||||
|
$if(sansfont)$
|
||||||
|
\setsansfont{$sansfont$}
|
||||||
|
$endif$
|
||||||
|
$if(monofont)$
|
||||||
|
\setmonofont[Mapping=tex-ansi]{$monofont$}
|
||||||
|
$endif$
|
||||||
|
$if(mathfont)$
|
||||||
|
\setmathfont(Digits,Latin,Greek){$mathfont$}
|
||||||
|
$endif$
|
||||||
|
\fi
|
||||||
|
% use upquote if available, for straight quotes in verbatim environments
|
||||||
|
\IfFileExists{upquote.sty}{\usepackage{upquote}}{}
|
||||||
|
% use microtype if available
|
||||||
|
\IfFileExists{microtype.sty}{\usepackage{microtype}}{}
|
||||||
|
$if(geometry)$
|
||||||
|
\usepackage[$for(geometry)$$geometry$$sep$,$endfor$]{geometry}
|
||||||
|
$endif$
|
||||||
|
$if(natbib)$
|
||||||
|
\usepackage{natbib}
|
||||||
|
\bibliographystyle{$if(biblio-style)$$biblio-style$$else$plainnat$endif$}
|
||||||
|
$endif$
|
||||||
|
$if(biblatex)$
|
||||||
|
\usepackage{biblatex}
|
||||||
|
$if(biblio-files)$
|
||||||
|
\bibliography{$biblio-files$}
|
||||||
|
$endif$
|
||||||
|
$endif$
|
||||||
|
$if(listings)$
|
||||||
|
\usepackage{listings}
|
||||||
|
$endif$
|
||||||
|
$if(lhs)$
|
||||||
|
\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{}
|
||||||
|
$endif$
|
||||||
|
$if(highlighting-macros)$
|
||||||
|
$highlighting-macros$
|
||||||
|
$endif$
|
||||||
|
$if(verbatim-in-note)$
|
||||||
|
\usepackage{fancyvrb}
|
||||||
|
$endif$
|
||||||
|
$if(tables)$
|
||||||
|
\usepackage{longtable,booktabs}
|
||||||
|
$endif$
|
||||||
|
$if(graphics)$
|
||||||
|
\usepackage{graphicx}
|
||||||
|
\makeatletter
|
||||||
|
\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth\else\Gin@nat@width\fi}
|
||||||
|
\def\maxheight{\ifdim\Gin@nat@height>\textheight\textheight\else\Gin@nat@height\fi}
|
||||||
|
\makeatother
|
||||||
|
% Scale images if necessary, so that they will not overflow the page
|
||||||
|
% margins by default, and it is still possible to overwrite the defaults
|
||||||
|
% using explicit options in \includegraphics[width, height, ...]{}
|
||||||
|
\setkeys{Gin}{width=\maxwidth,height=\maxheight,keepaspectratio}
|
||||||
|
$endif$
|
||||||
|
\ifxetex
|
||||||
|
\usepackage[setpagesize=false, % page size defined by xetex
|
||||||
|
unicode=false, % unicode breaks when used with xetex
|
||||||
|
xetex]{hyperref}
|
||||||
|
\else
|
||||||
|
\usepackage[unicode=true]{hyperref}
|
||||||
|
\fi
|
||||||
|
% -----------------------------------------
|
||||||
|
% SOLARIZED COLORS
|
||||||
|
% -----------------------------------------
|
||||||
|
\usepackage{xcolor}
|
||||||
|
\definecolor{yellow}{RGB}{181,137,0}
|
||||||
|
\definecolor{orange}{RGB}{203,75,22}
|
||||||
|
\definecolor{red}{RGB}{220,50,47}
|
||||||
|
\definecolor{magenta}{RGB}{211,54,130}
|
||||||
|
\definecolor{violet}{RGB}{108,113,196}
|
||||||
|
\definecolor{blue}{RGB}{38,139,210}
|
||||||
|
\definecolor{cyan}{RGB}{42,161,152}
|
||||||
|
\definecolor{green}{RGB}{133,153,0}
|
||||||
|
% -----------------------------------------
|
||||||
|
\hypersetup{breaklinks=true,
|
||||||
|
bookmarks=true,
|
||||||
|
pdfauthor={$author-meta$},
|
||||||
|
pdftitle={$title-meta$},
|
||||||
|
colorlinks=true,
|
||||||
|
citecolor=$if(citecolor)$$citecolor$$else$blue$endif$,
|
||||||
|
urlcolor=$if(urlcolor)$$urlcolor$$else$blue$endif$,
|
||||||
|
linkcolor=$if(linkcolor)$$linkcolor$$else$magenta$endif$,
|
||||||
|
pdfborder={0 0 0}}
|
||||||
|
\urlstyle{same} % don't use monospace font for urls
|
||||||
|
$if(links-as-notes)$
|
||||||
|
% Make links footnotes instead of hotlinks:
|
||||||
|
\renewcommand{\href}[2]{#2\footnote{\url{#1}}}
|
||||||
|
$endif$
|
||||||
|
$if(strikeout)$
|
||||||
|
\usepackage[normalem]{ulem}
|
||||||
|
% avoid problems with \sout in headers with hyperref:
|
||||||
|
\pdfstringdefDisableCommands{\renewcommand{\sout}{}}
|
||||||
|
$endif$
|
||||||
|
\setlength{\parindent}{0pt}
|
||||||
|
\setlength{\parskip}{6pt plus 2pt minus 1pt}
|
||||||
|
\setlength{\emergencystretch}{3em} % prevent overfull lines
|
||||||
|
$if(numbersections)$
|
||||||
|
\setcounter{secnumdepth}{5}
|
||||||
|
$else$
|
||||||
|
\setcounter{secnumdepth}{0}
|
||||||
|
$endif$
|
||||||
|
$if(verbatim-in-note)$
|
||||||
|
\VerbatimFootnotes % allows verbatim text in footnotes
|
||||||
|
$endif$
|
||||||
|
$if(lang)$
|
||||||
|
\ifxetex
|
||||||
|
\usepackage{polyglossia}
|
||||||
|
\setmainlanguage{$mainlang$}
|
||||||
|
\else
|
||||||
|
\usepackage[$lang$]{babel}
|
||||||
|
\fi
|
||||||
|
$endif$
|
||||||
|
|
||||||
|
$if(title)$
|
||||||
|
\title{$title$$if(subtitle)$\\\vspace{0.5em}{\large $subtitle$}$endif$}
|
||||||
|
$endif$
|
||||||
|
$if(author)$
|
||||||
|
\author{$for(author)$$author$$sep$ \and $endfor$}
|
||||||
|
$endif$
|
||||||
|
\date{$date$}
|
||||||
|
$for(header-includes)$
|
||||||
|
$header-includes$
|
||||||
|
$endfor$
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
$if(title)$
|
||||||
|
\maketitle
|
||||||
|
$endif$
|
||||||
|
$if(abstract)$
|
||||||
|
\begin{abstract}
|
||||||
|
$abstract$
|
||||||
|
\end{abstract}
|
||||||
|
$endif$
|
||||||
|
|
||||||
|
$for(include-before)$
|
||||||
|
$include-before$
|
||||||
|
|
||||||
|
$endfor$
|
||||||
|
$if(toc)$
|
||||||
|
{
|
||||||
|
\hypersetup{linkcolor=black}
|
||||||
|
\setcounter{tocdepth}{$toc-depth$}
|
||||||
|
\tableofcontents
|
||||||
|
}
|
||||||
|
$endif$
|
||||||
|
$if(lot)$
|
||||||
|
\listoftables
|
||||||
|
$endif$
|
||||||
|
$if(lof)$
|
||||||
|
\listoffigures
|
||||||
|
$endif$
|
||||||
|
$body$
|
||||||
|
|
||||||
|
$if(natbib)$
|
||||||
|
$if(biblio-files)$
|
||||||
|
$if(biblio-title)$
|
||||||
|
$if(book-class)$
|
||||||
|
\renewcommand\bibname{$biblio-title$}
|
||||||
|
$else$
|
||||||
|
\renewcommand\refname{$biblio-title$}
|
||||||
|
$endif$
|
||||||
|
$endif$
|
||||||
|
\bibliography{$biblio-files$}
|
||||||
|
|
||||||
|
$endif$
|
||||||
|
$endif$
|
||||||
|
$if(biblatex)$
|
||||||
|
\printbibliography$if(biblio-title)$[title=$biblio-title$]$endif$
|
||||||
|
|
||||||
|
$endif$
|
||||||
|
$for(include-after)$
|
||||||
|
$include-after$
|
||||||
|
|
||||||
|
$endfor$
|
||||||
|
\end{document}
|
Loading…
Reference in a new issue