Incluir un archivo personalizado en el encabezado con el modo org

Incluir un archivo personalizado en el encabezado con el modo org

Tengo un archivo LaTeX con algunas directivas para mis documentos TeX ( \usepackagey cosas así). Ahora quiero reutilizar este archivo en diferentes archivos en modo organización. Sé que puedo incluir archivos con #+include: 'path/to/some/file.tex', pero esto coloca el contenido del archivo después \begin{document}.

¿Puedo incluir de alguna manera un archivo en el encabezado?

Como se sugiere, aquí un ejemplo:

Aplantilla.texarchivo que contiene el encabezado:

\documentclass[a4paper]{customClass}
\usepackage{etex}
\title{Some Title}
\supervisor{Someone}

Como también se muestra aquí, esto utiliza una clase de documento personalizada, que es una de las razones por las que solo quiero poder incluirla.

Luego tengo un archivo que contiene todo el contenido (contenido.org):

#+INCLUDE: template.tex

* Chapter 1
** Subchapter 1
   Some content
** Subchapter 2
   More content

Que actualmente genera (contenido.tex):

\documentclass[11pt]{article}
\usepackage[latin1]{inputenc}
% a lot more org-mode standard header stuff
% ...

\begin{document}

\maketitle

\setcounter{tocdepth}{3}
\tableofcontents
\vspace*{1cm}

% my template.tex file
% not where I wanted it
\documentclass[a4paper]{customClass}
\usepackage{etex}
\title{Some Title}
\supervisor{Someone}


\section{Chapter 1}
% rest of the document
% ...

\end{document}

En resumen: quiero reutilizar mi template.texarchivo en algunos documentos de la organización para tener un formato consistente. es posible?

Respuesta1

Si bien no conozco una manera de hacer esto con un archivo LaTeX, puedes usar #+SETUPFILE: file(http://orgmode.org/manual/In_002dbuffer-settings.html) para incluir un archivo de organización externo en la exportación. Luego puede usarlo #+LaTeX_HEADER:en el archivo de organización externo.

Por ejemplo, con lo siguiente en content.org:

#+SETUPFILE: template.org

y con lo siguiente en template.org:

#+LaTeX_CLASS: customClass
#+LaTeX_CLASS_OPTIONS: [a4paper]
#+LaTeX_HEADER: \usepackage{etex}
#+LaTeX_HEADER: \title{Some Title}
#+LaTeX_HEADER: \supervisor{Someone}

Cuando exportes content.org, se incluirán como parte del preámbulo de content.tex.

Respuesta2

El encabezado de látex que la organización utiliza para la exportación se almacena en org-format-latex-header, que puede modificar como desee. Según la ayuda:

Es imperativo que este encabezado asegure que no aparezca ningún número de página en la página. El paquete definido en las variables org-latex-default-packages-alist' andorg-latex-packages-alist' reemplazará el marcador de posición "[PAQUETES]" en este encabezado o se agregará.

Respuesta3

Puede crear una variable local de archivo en su archivo de organización para deshabilitar el encabezado predeterminado, entonces no habrá salidas de encabezado propias que confundan el código látex que desea.

# Local Variables:
# org-latex-default-packages-alist: nil
# org-latex-with-hyperref: nil
# org-latex-packages-alist: nil
# End:

información relacionada