Pregunta

Yo tengo un org-mode documento que quiero exportar como PDF.Estoy usando el paquete de listados de LaTeX para generar listados de código con un formato agradable, que se ven así en org:

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

La organización está traduciendo el comentario de Javadoc como LaTeX. itemize ambiente, así:

\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}

¿Cómo puedo evitar que esto suceda y mantener el Javadoc como lo escribí originalmente?si uso #+BEGIN_SRC en vez de #+BEGIN_LaTeX lo que recibo es un verbatim entorno, pero quiero seguir con los listados en lugar de verbatim o acuñado ya que ya hice el esfuerzo de armar un buen conjunto de estilos para él.

¿Fue útil?

Solución

Lo que en definitiva deseas es una ejemplo literal.Básicamente, desea que el código se exporte, pero con fuentes.necesitas decir org-mode para utilizar listados (o acuñados) al exportar.Esto se puede hacer en su .emacs archivo:

;; 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"))

Además, con esto no es necesario especificar el listings paquete en un argumento de encabezado de su documento.Ahora, los bloques de código fuente se exportarán en el formato apropiado. lstlistings ambiente:

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

se exporta a LaTeX como

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

No estoy muy seguro de por qué, cuando usas el #+begin_latex...#+end_latex bloquee en su ejemplo, que las cosas se están analizando de manera extraña.En principio, a uno le gustaría que todo lo que esté en el bloque LaTeX se pase tal cual al .Texas archivo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top