gpt4 book ai didi

emacs - 在 emacs 批处理模式下运行 `org-export-as-html'

转载 作者:行者123 更新时间:2023-12-04 14:22:16 25 4
gpt4 key购买 nike

在批处理模式下使用 `org-export-as-html' 时,代码块生成的 html 没有语法着色。

如何在批处理模式下启用语法着色?

编辑:

我从终端运行 emacs --script make.el .
在 make.el 中,我包含 org 和 org-html 并最终调用 (org-export-as-html 3)
以下将加粗/下划线关键字,但仍然没有颜色:

    (add-to-list 'load-path "~/elisp/org/contrib/lisp")
(require 'htmlize)
(setq c-standard-font-lock-fontify-region-function 'font-lock-default-fontify-region) ;; fixes bug
(org-export-as-html 3)

编辑2:

我尝试过的另外几件事 - 它们没有区别:
    (setq org-src-fontify-natively t)
(org-babel-do-load-languages 'org-babel-load-languages '((java .t)))

我也试过加载我的整个 .emacs

我使用的是 GNU Emacs 24.3.1 和 Org 7.9.2

最佳答案

显然,如果您使用 color-theme图书馆,然后(出于我尚不知道的神秘原因)您可以通过 htmlize 获得彩色输出以批处理模式导出时。

例如,评估组织缓冲区中的以下代码以导出 htmlize使用通过主题定义的颜色,并且在以批处理模式和交互方式导出时都有效(通过创建临时框架并设置适当的颜色主题以避免弄乱包含要导出的组织缓冲区的框架):

(require 'cl)                           ;for `lexical-let'

(add-hook
;; This is for org 8.x (use `org-export-first-hook' for earlier versions).
(make-local-variable 'org-export-before-processing-hook)
(lambda (backend)
(add-to-list (make-local-variable 'load-path) (expand-file-name "./etc"))
(require 'color-theme)
(color-theme-initialize)

(when (display-graphic-p) ;Are we running in interactive mode?
;; If so, create a temporary frame to install the color theme used by
;; htmlize:
(lexical-let ((buff (switch-to-buffer-other-frame (current-buffer)))
(frame (selected-frame)))
(setq color-theme-is-global nil)
(make-frame-invisible frame)
;; Schedule deletion of temporary frame:
(add-to-list
;; The following is for org 8.x (earlier versions use other hooks like
;; `org-latex-final-hook').
(make-local-variable 'org-export-filter-final-output-functions)
(lambda (string backend info) (delete-frame frame)))))

;; Install color theme.
(color-theme-blippblopp)))

关于emacs - 在 emacs 批处理模式下运行 `org-export-as-html',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22123382/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com