Quels arguments de ligne de commande dois-je utiliser pour que Emacs exporte un fichier en mode organisation vers un fichier PDF Beamer? (Je veux créer un Makefile
fichier qui produit un PDF lorsque l'utilisateur s'exécute make
.)
J'ai essayé de suivre cette réponse, mais je n'ai pas réussi à la faire fonctionner:
$ emacs --batch foo.org -f org-beamer-export-to-pdf
Symbol's function definition is void: org-beamer-export-to-pdf
$ emacs --batch -l ox-beamer foo.org -f org-beamer-export-to-pdf
Cannot open load file: ox-beamer
L'erreur ci-dessus vient du fait que les fichiers en mode organisation sont dans un emplacement personnalisé et que my ~/.emacs.d/init.el
n'est pas chargé ( --batch
implique -q
aka --no-init-file
).
Si je dis à Emacs de charger mon fichier init, cela fonctionnera:
$ emacs --batch -l ~/.emacs.d/init.el foo.org -f org-beamer-export-to-pdf
Cependant, cela ne fonctionne pas pour les autres utilisateurs qui utilisent ~/.emacs
ou à la ~/.emacs.el
place de ~/.emacs.d/init.el
. J'ai essayé de dire à Emacs de charger user-init-file
mais cela n'a pas fonctionné:
$ emacs --batch --eval '(load user-init-file)' foo.org -f org-beamer-export-to-pdf
Wrong type argument: stringp, nil
En supposant que tous les utilisateurs peuvent appuyer avec succès C-x C-e l P
pour exporter un PDF Beamer lors de l'utilisation interactive d'Emacs, quelle commande non interactive produira un PDF?
la source
(require 'org)
ou quelque chose comme ça - votre fichier init effectue un chargement qui--batch
est prohibitif.emacs -u $USER --batch --eval '(message "-----> My user-init-file: "%s" user-init-file)'
. Si vous ne chargez pas votre fichier init, vous devrez probablement en avoir besoinox-beamer
.Réponses:
Ce qui suit a fonctionné pour moi:
Merci à @mutbuerger pour le conseil à passer
-u <username>
pour êtreuser-init-file
défini.la source
(load user-init-file)
et le remplacer par des(require 'blah)
expressions s spécifiques pour qu'il fonctionne (en utilisant emacs 24.5.1).