组织模式LaTeX导出 - 使TODO变红

时间:2016-03-24 10:05:47

标签: emacs latex org-mode

我在Emacs中使用Org模式,我正在使用Export to LaTeX选项。输出很好,但我想表现出来:

  • TODO为红色
  • DONE为绿色

所以他们脱颖而出。

有办法吗?

1 个答案:

答案 0 :(得分:4)

从ox-latex.el

中调整相应的功能

我将ox-latex.el中的org-latex-format-h​​eadline-default-function复制到我的.emacs中,并添加了两个案例TODO和DONE。我建议不要更换原始功能,而是将其放在.emacs中。

它将使任何" TODO"包含字符串红色,任何" DONE"导出到LaTeX时为绿色。确保你把

#+ Latex_header:\ usepackage {xcolor}

在您的组织标题中。 你可以在"格式"之后编辑字符串。定制它。 如果您有其他待办事项关键字,也可以添加更多案例。

(defun org-latex-format-headline-colored-keywords-function
    (todo todo-type priority text tags info)
        (concat
           (cond ((string= todo "TODO")(and todo (format "{\\color{red}\\bfseries\\sffamily %s} " todo)))
   ((string= todo "DONE")(and todo (format "{\\color{green}\\bfseries\\sffamily %s} " todo))))
            (and priority (format "\\framebox{\\#%c} " priority))
            text
            (and tags
            (format "\\hfill{}\\textsc{%s}"
    (mapconcat (lambda (tag) (org-latex-plain-text tag info))
           tags ":")))))

(setq org-latex-format-headline-function 'org-latex-format-headline-colored-keywords-function)