[Question posée sur developpez.net hier, le serveur de TeXnique étant bloqué — ou c'est moi qui débloquait…]

Je me heurte à un Unknown LaTeX class 'beamer' dans org-mode (fichier enregistré en .org)

Voici un extrait de mon fichier .emacs :

Ouvrir dans l'éditeur Overleaf
;;;;;;;;;;;;; CONFIGURATION POUR UTILISER LATEX ;;;;;;;;;;;;;;
;; Source : https://orgmode.org/worg/org-tutorials/org-latex-export.html

;; Pour pouvoir utiliser LaTeX dans un doc. org-mode
(require 'ox-latex)
(unless (boundp 'org-export-latex-classes)
  (setq org-export-latex-classes nil))

;; Pour configurer les subdivisions des articles
(add-to-list 'org-export-latex-classes
             '("article"
               "\\documentclass{article}"
               ("\\section{%s}" . "\\section*{%s}")
               ("\\subsection{%s}" . "\\subsection*{%s}")
               ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
               ("\\paragraph{%s}" . "\\paragraph*{%s}")
               ("\\subparagraph{%s}" . "\\subparagraph*{%s}")))

;;; Article koma (source : https://tex.stackovernet.com/fr/q/113129)

(with-eval-after-load "ox-latex" 
    (add-to-list 'org-latex-classes 
       '("koma-article" "\\documentclass{scrartcl}" 
       ("\\section{%s}" . "\\section*{%s}") 
       ("\\subsection{%s}" . "\\subsection*{%s}") 
       ("\\subsubsection{%s}" . "\\subsubsection*{%s}") 
       ("\\paragraph{%s}" . "\\paragraph*{%s}") 
       ("\\subparagraph{%s}" . "\\subparagraph*{%s}"))))

;;;  Beamer

(with-eval-after-load "ox-latex" 
    (add-to-list 'org-latex-classes 
       '("beamer" "\\documentclass{beamer}" 
       ("\\section{%s}" . "\\section*{%s}") 
       ("\\subsection{%s}" . "\\subsection*{%s}") 
       ("\\subsubsection{%s}" . "\\subsubsection*{%s}") 
       ("\\paragraph{%s}" . "\\paragraph*{%s}") 
       ("\\subparagraph{%s}" . "\\subparagraph*{%s}"))))

;; Pour configurer les subdivisions de la classe book (indiquer : #+LaTeX_CLASS: book)
(with-eval-after-load "ox-latex"
(add-to-list 'org-export-latex-classes
             '("book"
               "\\documentclass{book}"
               ("\\part{%s}" . "\\part*{%s}")
               ("\\chapter{%s}" . "\\chapter*{%s}")
               ("\\section{%s}" . "\\section*{%s}")
               ("\\subsection{%s}" . "\\subsection*{%s}")
               ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))))

;; Pour configurer les subdivisions de la classe book (indiquer : #+LaTeX_CLASS: book)
(with-eval-after-load "ox-latex"
(add-to-list 'org-export-latex-classes
             '("book"
               "\\documentclass{book}"
               ("\\part{%s}" . "\\part*{%s}")
               ("\\chapter{%s}" . "\\chapter*{%s}")
               ("\\section{%s}" . "\\section*{%s}")
               ("\\subsection{%s}" . "\\subsection*{%s}")
               ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))))

;; Pour utiliser la classe report. Indiquer : #+LaTeX_CLASS: report
(with-eval-after-load "ox-latex"
  (add-to-list 'org-export-latex-classes
               '("report" "\\documentclass{report}"
                 ("\\section{%s}" . "\\section*{%s}")
                 ("\\subsection{%s}" . "\\subsection*{%s}")
                 ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
                 ("\\paragraph{%s}" . "\\paragraph*{%s}")
                 ("\\subparagraph{%s}" . "\\subparagraph*{%s}"))))

;; Beamer. https://github.com/fniessen/refcard-org-beamer

(eval-after-load "ox-latex"

  ;; update the list of LaTeX classes and associated header (encoding, etc.)
  ;; and structure
  '(add-to-list 'org-latex-classes
                `("beamer"
                  ,(concat "\\documentclass[presentation]{beamer}\n"
                           "[DEFAULT-PACKAGES]"
                           "[PACKAGES]"
                           "[EXTRA]\n")
                  ("\\section{%s}" . "\\section*{%s}")
                  ("\\subsection{%s}" . "\\subsection*{%s}")
                  ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))))

;For nice code blocks, use Listings instead of Verbatim:
(setq org-latex-listings t)

Et un extrait de mon fichier beamer.org

Ouvrir dans l'éditeur Overleaf
#+LaTeX_CLASS: beamer
#+TITLE: Programme de Seconde
#+LaTeX_CLASS_OPTIONS: [french,10pt,presentation]
#+BEAMER_THEME: CambridgeUS 
#+BEAMER_FRAME_LEVEL: 2 
* Histoire. Grandes étapes de la formation du monde moderne (48 h)

** Introduction. La périodisation (2 h)

** Thème 1. Le monde méditerranéen : empreintes de l’Antiquité et du Moyen Âge (10-12 h)

*** La Méditerranée antique : les empreintes grecques et romaines

*** La Méditerranée médiévale : espace d’échanges et de conflits à la croisée de trois civilisations

Qu'est-ce qui coince ?

Une précision : la compilation d'un article, book, report et même d'un koma-article ne pose aucun problème.

Posée 10 Jui '19, 21:34

fred02840's gravatar image

fred02840
4.2k17153187
Taux d'acceptation : 16%


Tu ne donnes pas beaucoup de détails sur ta façon de compiler. J'ai essayé sur mon installation ton document org, après avoir évalué le code d'initialisation que tu fournis (donc qui surcharge le mien) Aucun message d'erreur et le fichier LaTeX produit compile sans souci.

La commande C-c C-e propose bien [l] export to LaTeX puis [B] As LaTeX buffer (Beamer) ? Si cette commande provoque une erreur, il va falloir tracer org-export-dispatch, autrement, je ne vois pas comment faire. Il y a peut-être un problème avec ton fichier d'initialisation. Pas de message d'erreur au démarrage d'Emacs (C-h e) ?

Lien permanent
Cette réponse est marquée comme « Wiki ».

Publiée 11 Jui '19, 12:47

Jean-jacques%20R%C3%A9torr%C3%A9's gravatar image

Jean-jacques Rétorré
55615
Taux d'acceptation : 44%

@Jean-jacques Rétorré. Je compile bien de cette façon (C-c C-e), mais la liste des possibilités ouvertes ne mentionne pas beamer. Le mieux serait que je t'envoie (mess. privé pour ne pas encombrer TeXnique) l'ensemble du fichier .emacs : il y a probablement qqch de pas très clair que je ne voie pas.

(12 Jui '19, 23:51) fred02840 fred02840's gravatar image

@Jean-jacques Rétorré. Petite vérification : org-mode 9.2.3 et auctex 12.1.1 sont installés

(13 Jui '19, 00:08) fred02840 fred02840's gravatar image
1

Charger l'extension ox-beamer devrait résoudre le problème.M-x load-library RET ox-beamer. Si le problème est résolu ajouter (use-package ox-beamer) =sans quoter ox-beamer= ou (require (quote ox-beamer)) dans le fichier d'initialisation d'Emacs.

(13 Jui '19, 00:32) Jean-jacques Rétorré Jean-jacques%20R%C3%A9torr%C3%A9's gravatar image
Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.