J'écris souvent des notes en mode org et les exporte au latex. Cependant, parce que certains documents sont complexes, je dois inclure de nombreux packages latex en haut comme ceci:
#+LATEX_HEADER: \usepackage[margin=1.15in]{geometry}
#+LATEX_HEADER: \usepackage{parskip}
#+LATEX_HEADER_EXTRA: \usepackage{graphicx}
#+LATEX_HEADER_EXTRA: \usepackage{mdframed}
#+LATEX_HEADER_EXTRA: \usepackage{needspace}
#+LATEX_HEADER_EXTRA: \usepackage{hyperref}
#+LATEX_HEADER_EXTRA: \usepackage{titling}
#+LATEX_HEADER_EXTRA: \usepackage{enumitem}
#+LATEX_HEADER_EXTRA: \usepackage{etoolbox}
#+LATEX_HEADER_EXTRA: \usepackage{color}
#+LATEX_HEADER_EXTRA: \usepackage{underscore}...
Est-il possible de stocker toutes les commandes d'en-tête latex (\ usepackage, définitions de macros, etc.) dans un fichier tex séparé afin que je puisse juste avoir une seule ligne à inclure en haut du fichier org? Cela réduira beaucoup l'encombrement et me facilitera l'ajout de packages.
Une autre solution consiste à vérifier / personnaliser la variable
org-latex-packages-alist
- ajoutez-y tout ce dont vous avez besoin\usepackage{...}
.Cette variable est déclarée et utilisée par le
ox-latex
, donc la configuration de votre organisation doit avoir une déclaration(require 'os-latex)
. De cette façon, aucune ligne à ajouter aux documents de l'organisation, sauf le titre.En ce qui concerne les macros, un endroit habituel pour stocker est le paquet yasnippet, si vous l'utilisez.
la source
Une solution alternative consiste à utiliser un titre non exporté pour encapsuler la configuration:
L'avantage de cette solution par rapport aux tiroirs est que vous pouvez facilement inclure une configuration sophistiquée, comme des blocs LaTeX
qui ne sont pas lus (par défaut) dans les tiroirs.
L'avantage de cette solution par rapport aux fichiers de configuration (fichier d'installation ou inclus) est que vous pouvez facilement modifier la configuration car elle est incluse dans le fichier actuel.
Enfin, si vous souhaitez que ce titre reste fermé par défaut lors de l'ouverture de votre fichier org, vous pouvez utiliser la syntaxe suivante:
la source
Plutôt que d'utiliser
#+SETUPFILE:
selon la réponse acceptée, si vous êtes simplement intéressé par la sortie LaTeX, vous pouvez ajouter ce qui suit à la place:Dans
header.tex
(ou comme vous voulez l'appeler), vous pouvez ensuite mettre tout votre préambule LaTeX sans avoir besoin de tout un tas d'#+LATEX_HEADER:
arguments. Pour être super meta, vous pouvez également avoir cette#+LATEX_HEADER
option dans votre#+SETUPFILE
.la source