Как определить шаблон для экспорта HTML в режиме org?

2951
Andrew-Dufresne

Я использую режим org для создания HTML-страниц из моих заметок. Я использовал публикацию файлов в режиме Org в HTML для настройки системы блогов.

Я определил шаблон экспорта. Но чтобы использовать его, я должен добавить следующую строку в верхней части каждого моего файла org внутри моего проекта заметок.

#+SETUPFILE: ~/.emacs.d/org-templates/level-0.org 

Есть ли способ установить это .emacsили настроить переменную режима org, чтобы мне не приходилось помещать эту строку в каждый файл?

Согласно руководству по режиму org, #+SETUPFILEэто настройка в буфере. Означает ли это, что я не могу определить его глобально для всех файлов org?

Эти два ответа на SU рассказывают, как настроить стиль для экспорта HTML. Но мой файл шаблона содержит другие настройки, кроме стиля CSS. Так что только индивидуальный стиль не сделает это для меня.

2

2 ответа на вопрос

2
Andrew-Dufresne

Это то, что я понимаю.

Если вам нужно определить параметры глобально, вы должны определить Параметры для HTML / LaTeX экспортеров в org-publish-project-alistвнутри .emacs.

#+SETUPFILEдолжен использоваться, когда вам нужно переопределить глобальные настройки и определить пользовательские настройки для нескольких или одного файла. Если эти настройки используются часто, вы можете определить шаблон и использовать SETUPFILE, чтобы указать режиму org использовать шаблон для экспорта этого файла org.

Поэтому я решил свою проблему, определив глобальные настройки, .emacsи отбросил идею использования глобального шаблона.

 :author "Andy" :email "abc@gmail.com" :language "en" :link_home "index.html" :style "<link rel=\"stylesheet\" type=\"text/css\" href=\"css/style.css\" /> 
1
mlt

Вы можете добавить ловушку org-publish-before-export-hook с помощью функции вроде

(defun my-add-setup () "Insert SETUPFILE statement in the beginning of the buffer for export ONLY." (interactive) ; for testing in scratch (goto-char (point-min)) (insert "#+SETUPFILE: ~/.emacs.d/org-templates/level-0.org\n") ) 

PS Я сам не пробовал.