質問

私はPDFとしてエクスポートしたいorg-mode文書を持っています。私はLaTeX Listingsパッケージを使用してきたフォーマットのコードリストを作成しています。org:

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

javadocコメントraTex 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ではなくリストをスティッキしたり、素晴らしいスタイルのセットをまとめるための努力をしましょう。

役に立ちましたか?

解決

あなたが最終的に欲しいものはリテラルの例です。本質的にコードをエクスポートしたいが修正されている。エクスポート時にリスト(またはミントリング)を使用するように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"))
.

また、これにより、listingsパッケージをあなたの文書にheader引数に指定する必要はありません。現在、ソースコードブロックは適切なlstlistings環境でエクスポートされます。

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

ラテックスとしてエクスポートされます

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

あなたがあなたの例で#+begin_latex ... #+end_latexブロックを使用するとき、なぜ私はまったくわかりません。そのことは奇妙に解析されています。原則として、ラテックスブロック内にあるものは、 .tex ファイルに渡されるものは何でも望ましいです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top