Налаштування шаблону експорту в org-mode?


8

Зв'язане з цим питанням: Як визначити шаблон для експорту HTML в режим org?

Я хотів би налаштувати шаблон, що вставляється, натиснувши C-c C-e tтакий, що я отримаю кілька налаштувань і навіть кілька довідкових записок у коментарях щодо того, що потрібно поставити.

Можливо, було б краще використовувати якийсь інший спосіб Emacs, щоб вставити фрагмент тексту? Або використовувати розширення шаблону org-mode?

Відповіді:


4

Короткий відповідь : Не може бути легко досягти кардинальної модифікації структури. Є такі варіанти експорту, як, org-export-plist-varsале я особисто не грав з ними.

Копання відповіді : Коли ви телефонуєте C-c C-e t, ви викликаєте функцію org-mode org-insert-export-options-template. Я швидко скористався функцією ( C-h f) і не побачив жодного допоміжного тексту чи параметрів для переходу до неї, тому мені довелося подивитися джерело функції ( M-x find-function ENTER org-insert-export-options-template ENTER>).

Читаючи через org-insert-export-options-templateфункцію, я бачу, що це текст, який потрібно вставити через org-get-current-options. Немає допомоги в налаштуванні його поведінки в своєму описі, тож перегляньте і його джерело. Там ви побачите знайомий повний абзац інформації про шаблон, який вставляється в текст під час дзвінка org-insert-export-options-template. Наповнення значень походить від різних інших змінних org, назви буфера тощо.

Рекомендація : Що я особисто зробив, я витратив деякий час на вирішення параметрів, які б мені хотілося, і скопіював їх з інших файлів org, коли я запускаю новий. Я також думав про використання AutoInsertMode для автоматичного заповнення нового файлу org для мене, але відклав його.


0

Окрім опції "вставити фрагмент", вас також може зацікавити # + SETUPFILE: /path/to/template.org. Це корисно, якщо ви бажаєте встановити заздалегідь задані настройки для експорту. Ви можете створити стільки, скільки вам потрібно. Я поєдную це з yasnippet todo з наступним:

# -*- mode: snippet; require-final-newline: nil -*-
# name: blogtemplate
# key: <bl
# --
#+SETUPFILE: ~/.emacs.d/org-templates/level-$1.org
#+DATE: $2
#+KEYWORDS: $3 

#+BEGIN_HTML
<h1 class="title">$0</h1>
#+END_HTML

Вкладки $ 1, $ 2 і так далі визначають вкладки, щоб ви могли заповнити її як веб-форму.

Редагувати:

Детальніше про написання ясніппетів та зупинок вкладок можна знайти тут: http://capitaomorte.github.io/yasnippet/snippet-development.html#sec-3-3

Але по суті, після того, як ви вставите фрагмент, він розмістить вас у розмірі 1 долара, після натискання вкладки ви отримаєте 2 долари тощо. Таким чином ви зможете швидко заповнити те, що вам потрібно.


Будь ласка, уточніть деталі в розмірі $ 1, $ 2. Будь-який документ? Дякую!!
justingordon
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.