Я пишу диссертацию на R Markdown, используя Bookdown Yihui X ie и мой университетский шаблон диссертации LaTeX в качестве пользовательского шаблона Pando c.
К сожалению, мой университетский шаблон дипломной работы довольно сложен и содержит множество файлов и подкаталогов. Я старался как можно меньше возиться с этим. Я просто заменил команды \input{chapterX}
на переменную $body$
Pando c и добавил пару переменных Pando c для использования с biblatex.
Пока все хорошо, за исключением одного. Перед заголовком некоторых глав мне нужно вставить страницу, на которой будет указано, что эта глава была опубликована в журнале, и содержащую таблицу статей для меня и моих соавторов. Мой шаблон uni (ссылка выше) содержит для этого необработанный шаблон LaTeX, и я хотел бы просто скопировать и вставить этот шаблон в верхнюю часть моего файла Rmarkdown для этой главы. Однако, когда я связываю свой файл index.Rmd
, Pandoc / Bookdown пропускает любой файл главы, содержащий эту таблицу. Он просто полностью игнорирует Rmd-файл главы и компилирует остальную часть тезиса (успешно) без него, как будто его не существует.
Для воспроизводимости я создал репозиторий Github демонстрирует проблему. Если вы клонируете репо, а затем связываете index.Rmd
в R studio, он должен скомпилировать разреженный (игнорировать весь пустой начальный материал), но закончить тезис с двумя главами (вступление и заключение). В настоящее время, если я добавлю следующий необработанный LaTeX к вершине 02-conclusion.Rmd
, а затем свяжу index.Rmd
, он скомпилирует тезис только с главой 1:
\cleartoevenpage
\pagestyle{empty}
\noindent
The following publication has been incorporated as Chapter \ref{chapter-label}.
\noindent
\fullcite{CitationKey}
\begin{table}[h]
\centering
\begin{tabular}{clr}
\toprule
Contributor & Statement of contribution & \% \\
\midrule
\textbf{Your Name} & writing of text & 70\\
& proof-reading & 60 \\
& theoretical derivations & 70\\
& numerical calculations & 100\\
& preparation of figures & 80 \\
& initial concept & 10 \\
\midrule
Co-author 1 & writing of text & 20\\
& proof-reading & 10 \\
& supervision, guidance & 20\\
& theoretical derivations & 10\\
& preparation of figures & 20 \\
& initial concept & 10 \\
\midrule
Final Author & writing of text & 10\\
& proof-reading & 30 \\
& supervision, guidance & 80 \\
& theoretical derivations & 20 \\
& preparation of figures & 10 \\
& initial concept & 80 \\
\bottomrule
\end{tabular}
\end{table}
If your task breakdown requires further clarification, do so here. Do not exceed a single page.
Однако это станет еще более странным. Это не проблема необработанного LaTeX или таблиц. Во-первых, если я вяжу напрямую с главы (т.е. открою 02-conclusion.Rmd
в R Studio и нажму вязать там), он скомпилирует полный тезис из двух глав с таблицей, как и предполагалось. (Это не вариант в моей настоящей диссертации, так как мне нужно включить эту таблицу для нескольких глав)
Во-вторых, не все таблицы ломаются. В частности, все работает нормально с более короткими таблицами. Если я заменю таблицу в приведенном выше коде только первыми 6 строками, то есть:
\begin{table}[h]
\centering
\begin{tabular}{clr}
\toprule
Contributor & Statement of contribution & \% \\
\midrule
\textbf{Your Name}& writing of text & 70\\
& proof-reading & 60 \\
& theoretical derivations & 70\\
& numerical calculations & 100\\
& preparation of figures & 80 \\
& initial concept & 10 \\
\bottomrule
\end{tabular}
\end{table}
... тогда это тоже хорошо компилируется. Если я добавлю еще одну строку в таблицу, она снова пропустит главу.
Чтобы разработать этот шаблон, потребовалось огромное количество усилий и устранения неполадок, но все равно не могу, хоть убей, объяснить это странное поведение. Я не понимаю, почему одна короткая таблица работает нормально, но тогда при кажущейся произвольной длине Pando c и / или Bookdown очевидно решат, что главы не существует. Я также не могу найти где-либо описания подобного поведения. Был бы очень благодарен за любые подсказки относительно того, что происходит!
FWIW, я использую:
- Ma c OS 12.15 (Catalina)
- R 3.6.2
- Pando c 2.3.1
- rmarkdown 2.1
- bookdown 0.19
PS Извините за длинную рецензию и репозиторий Github. Я не знал, как еще сделать проблему воспроизводимой.