In the following simplified version of a markdown
doc intended for pandoc
/latex
generation to `pdf:
\documentclass{article}
\usepackage{unicode-math}
\setmainfont{TeX Gyre Schola}
\setmathfont{TeX Gyre Schola Math}
\begin{document}
## Custom F1 Score For Scoring of Graph Matching
### Overview
The `F1 Score` is intended to compare two sets:
- Truth Set
- Actuals Set
Its calculation is:
$$F_{\beta} = (1 + \beta^2) \cdot \frac{\mathrm{precision_k} \cdot \mathrm{recall_k^2}}{(\beta^2 \cdot \mathrm{precision_k}) + \mathrm{recall_k}}$$
\end{document}
Notice that all of the preamble
directives happen before the
begin{document}
The pdf is generated via pandoc
:
$pandoc -V fontsize=9pt --pdf-engine xelatex -V
geometry:"left=2cm,right=2cm,top=2cm,bottom=2cm" -o myDoc.pdf myDoc.md
The following error is produced:
Error producing PDF.
! LaTeX Error: Can be used only in preamble.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.60 \documentclass
What is incorrect here for bringing in a mathsy font?
Best Answer
The conversion of a markdown document places content within a YAML header within the preamble. However, since there is no YAML header specified, the contents is assumed to form part of the regular document body. As such,
\documentclass
(and the rest) ends up after\begin{document}
and not in the preamble. Hence, the error "Can be used only in preamble" and pointing to\documentclass
...You'll need something like this:
Also see How to include LaTeX package in R Markdown?