我想使用 KOMA-Script 文章類將文件從 org-mode 匯出到 Latex scrartcl
。我認為這就像從 切換article
到 一樣簡單book
。因此,我在我的組織文件中新增了以下配置(該文件是較大文件的子樹):
:EXPORT_LATEX_CLASS: koma-article
:EXPORT_LATEX_CLASS_OPTIONS: [11pt,twoside,a4paper]
但是,在執行匯出命令後,我收到錯誤訊息:
Unknown latex class `koma-article'
我無法想像 org-mode 不會自動辨識 koma 類別。我在網上做了一些研究並嘗試過這個解決方案但沒有成功。
怎麼了 ?有什麼明顯我沒有做的事情嗎?
感謝您的幫助。
評論後新增資訊:正確的類別名稱是 ,scrartcl
而不是koma-article
。實際上我嘗試了 namekoma-article
和scrartcl
,但在這兩種情況下我都收到相同的錯誤訊息。
答案1
從組織手冊:
預設情況下,LaTeX 輸出使用類別
article
.您可以透過設定不同的值來全域變更此值 ,也可以透過在檔案中
org-latex-default-class
新增選項(如 在檔案中)或 使用匯出僅包含此(子)樹的區域時套用的屬性來本機變更此值。該類別必須列在 中。此變數為每個類別定義一個標頭模板,並允許您為每個類別定義分段結構。您也可以在那裡定義自己的類別。#+LATEX_CLASS: myclass
EXPORT_LATEX_CLASS
org-latex-classes
org-latex-classes
是一個包含 LaTeX 類別以及關聯頭和結構的關聯清單。因此,您必須將您的添加koma-article
到此清單中。我建議你在初始化檔案中加入這樣的內容:
(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}"))))
如果您使用的是 Emacs 24.4。或稍後,您可以使用:
(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}"))))