gpt4 book ai didi

latex - 防止 org-mode 将评论翻译为 itemize 环境

转载 作者:行者123 更新时间:2023-12-05 01:20:02 25 4
gpt4 key购买 nike

我有一个 org-mode 文档,我想将其导出为 PDF。我正在使用 LaTeX 列表包来生成格式良好的代码列表,在 org 中看起来像这样:

#+BEGIN_LaTeX
\begin{lstlisting}[language=Java]
/** Comment comment comment
*
* blah blah blah
*
* @return comment
*/
public void foo() {
return;
}
\end{lstlisting}
#+END_LaTeX

那里的 Javadoc 注释被组织翻译成 LaTeX itemize 环境,像这样:

\begin{lstlisting}[language=Java]
/** Comment comment comment
\begin{itemize}
\item
\item blah blah blah
\item
\item @return comment
\end{itemize}
*/
public void foo() {
return;
}
\end{lstlisting}

我怎样才能防止这种情况发生并保持我最初编写的 Javadoc?如果我使用 #+BEGIN_SRC 而不是 #+BEGIN_LaTeX 我得到的是一个 verbatim 环境,但我想坚持使用列表而不是verbatim 或类型转换,因为我已经努力为它组合了一套漂亮的样式。

最佳答案

您最终想要的是 literal example .本质上,您希望导出代码,但要字体化。您需要告诉 org-mode 在导出时使用列表(或生成的)。这可以在您的 .emacs 文件中完成:

;; tell org to use listings with colors                                                     
(setq org-export-latex-listings t)
(add-to-list 'org-export-latex-packages-alist '("" "listings"))
(add-to-list 'org-export-latex-packages-alist '("" "color"))

此外,您无需在文档的 header 参数中指定 listings 包。现在,源代码块将在适当的 lSTListings 环境中导出:

#+begin_src java                                                                
/** Comment comment comment
*
* blah blah blah
* @return comment
*/
public void foo() {
return;
}
#+end_src

导出为 LaTeX 为

\lstset{language=java}
\begin{lstlisting}
/** Comment comment comment
*
* blah blah blah
* @return comment
*/
public void foo() {
return;
}
\end{lstlisting}

我不太确定为什么当您在示例中使用 #+begin_latex...#+end_latex block 时,事情会被奇怪地解析。原则上,人们希望将 LaTeX block 中的任何内容按原样传递给 .tex 文件。

关于latex - 防止 org-mode 将评论翻译为 itemize 环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9664648/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com