1
我正在修補bookdown
並生成html和pdf輸出。格式化pdf輸出塊的登記
對於html輸出呈現的R
輸入和輸出被放置在具有灰色背景的塊中。對於pdf輸出,輸入塊突出顯示,但輸出不是。例如,下面的源代碼
Blah blah blah
```{r, message=FALSE}
library(mosaic) # Load mosiac-pakken
tally(~ Smoke, data=fev) # Optæl Smoke
```
Blah blah blah
結果在此特輸出:
\begin{Shaded}
\begin{Highlighting}[]
\KeywordTok{library}\NormalTok{(mosaic) }\CommentTok{# Load mosiac-pakken}
\KeywordTok{tally}\NormalTok{(}\OperatorTok{~}\StringTok{ }\NormalTok{Smoke, }\DataTypeTok{data=}\NormalTok{fev) }\CommentTok{# Optæl Smoke}
\end{Highlighting}
\end{Shaded}
\begin{verbatim}
Smoke
0 1
589 65
\end{verbatim}
輸入被包裹在Shaded
和Highlighting
可在TEX文件的前序部分進行修改。然而,輸出只包含在一個標準的verbatim
環境中,這會在文件中重新定義問題(因爲重新定義會使其他部分混亂)。我如何設置我的配置以將輸出封裝在可以重新定義的環境中?或者可能只是保持輸入和輸出包裝在同一個環境中?
我_output.yml
文件看起來像這樣(這或多或少從一匯複製)
bookdown::pdf_book:
highlight: zenburn
includes:
in_header: latex/preamble.tex
before_body: latex/before_body.tex
after_body: latex/after_body.tex
keep_tex: yes
dev: "cairo_pdf"
latex_engine: xelatex
citation_package: natbib
template: null
pandoc_args: --chapters
toc_depth: 3
toc_unnumbered: no
toc_appendix: yes
quote_footer: ["\\VA{", "}{}"]
如何更改代碼以添加一個包裝或者只是重新定義輸出塊的格式?
這不會取代*所有*逐字環境嗎?我只想替換輸出塊,而不是其他實例的逐字環境。例如,原始文本可能被包含在'''中,我不想使用相同的環境(儘管可以通過創建一個自定義塊來解決這個問題) – ekstroem
你是對的。那麼我沒有更好的解決方案。我們面臨的挑戰是,無法爲Pandoc Markdown中的特定圍欄代碼塊指定特定的LaTeX環境(否則,您可以修改knitr的輸出鉤子,並使用不同類型的圍欄代碼塊來從R塊中輸出文本)。 –