Pandoc: does not include input files

Pandoc does include input files


If you have a structure like this

.
├── main.tex
└── somefolder
    └── somefile.tex

with the following two files

1: main.tex

% !TeX program = XeLaTeX

\documentclass{article}
\begin{document}

\section*{Test}

    Input somefolder/somefile.tex:
    \input{somefolder/somefile}

\end{document}

and

2: somefile.tex

This is somefile

then

pandoc main.tex -t docx -o main.docx

will give you a word document, which contains the contents of somefolder/somefile.tex

3: main.docx

enter image description here


Bottom line: It works. If the structure of your project and/or code is more complicated then you should do some preprocessing first.


Update: Your MWE produces a docx file

enter image description here

As you can see, it contains the content from the included files. The trouble is that pandoc can't parse the elaborate macros (\newcommand) you are using, so there is a lot of noise and not a lot of signal.


I answered this question before here:

I know that this is an old question, but I have not seen any answers to this effect: Essentially, if you are using markdown and pandoc to convert your file to pdf, in your yaml data at the top of the page, you can include something like this:

---
header-includes:
- \usepackage{pdfpages}
output: pdf_document
---

\includepdf{/path/to/pdf/document.pdf}

# Section

Blah blah

## Section 

Blah blah

Since pandoc using latex to convert all of your documents, the header-includes section calls the pdfpages package. Then when you include \includepdf{/path/to/pdf/document.pdf} it will insert whatever is include in that document. Furthermore, you can include multiple pdf files this way.

As a fun bonus, and this is only because I often use markdown, if you would like to include files other than markdown, for instance latex files. I have modified this answer somewhat. Say that you have a markdown file markdown1.md:

---
title: Something meaning full
author: Talking head
---

And two addtional latex file document1, that looks like this:

\section{Section}

Profundity.

\subsection{Section}

Razor's edge.

And another, document2.tex, that looks like this:

\section{Section

Glah

\subsection{Section}

Balh Balh

Assuming that you want to include document1.tex and document2.tex into markdown1.md, you would just do this to markdown1.md

title: Something meaning full
author: Talking head
---

\input{/path/to/document1}
\input{/path/to/document2}

Run pandoc over it, e.g.

in terminal pandoc markdown1.md -o markdown1.pdf

Tags:

Pandoc