emacs команди "Експрес" як "безголовий" експорт-команди?


7

Коли я використовую org-export-as-latexабо org-export-as-htmlorgmode, перетворює свій буфер у .texфайл чи .htmlфайл. Але я не хочу всіх зайвих непотріб, які він додає до файлу: я хочу сам обробляти documentclassі все, і лише \inputфайл, створений у режимі org. (Або аналогічні речі для html з php).

Тож якщо мій файл org просто має:

* Section
- Stuff
- Things

Я хочу, щоб команда в режимі org виводилася просто

\section{Section}
\begin{itemize}
\item Stuff
\item Things
\end{itemize}

Без жодного зайвого \tableofcontentsсміття, яке ORG додає до нього. Я знаю, що міг би визначити свій власний вид, #+LaTeX_CLASSякий міг би додавати потрібні мені пакунки тощо, але я не хочу робити такі речі (і це не видалить \maketitleабо помилкове, \vspace*що ORG наполягає на вставці.

Чи є команда зробити цей "безголовий" розбір і перетворення? Я подивився, але це не очевидно з документації. Імовірно, якась команда ORG низького рівня проводить розбір і перетворення, які я хочу, але я не зміг знайти те, що було викликано, переглянувши документи та C-hсторінки ...

Це не питання про HTML чи LaTeX, а про режим ORG emacs. Тому не кидайте його на якийсь інший сайт ...


Перевірте прототип та документацію на org-export-as-latex. Є прапор, body-onlyякий називається частиною роботи. Ви також можете передати список властивостей для переопределення параметрів за замовчуванням.
Хуанчо

Крім того , якщо вам потрібен реальний мінімалізм, поглянути на родовому експортера в orgmode.org/worg/org-contrib/org-export-generic.html
Juancho

@Juancho ви могли б пояснити, як передати прапор команді? Може, як частина відповіді на це питання?
Seamus

Просто для спроби, M-:тоді введіть (org-export-as-latex nil nil nil nil t)(останнє tозначає значення параметра "Тільки для тіла"). Ви отримаєте повідомлення із зазначенням створеного текстового буфера. Якщо результат вам подобається, ви можете скласти команду або прив'язку клавіш, щоб викликати це.
Хуанчо

@Juancho Я отримую "слідів сміття після виразу", і немає результатів ...
Seamus

Відповіді:


7

Для виходу LaTeX ось кілька варіантів отримання більш чистого виходу:

Функція org-export-as-latexнасправді приймає кілька параметрів, один з яких - прапор під назвою BODY-ONLY.

Прототип цієї функції призначений (org-export-as-latex ARG &optional HIDDEN EXT-PLIST TO-BUFFER BODY-ONLY PUB-DIR)для OrgMode 7.5.

Ви можете спробувати вихід, чітко оцінивши виклик LISP:

M-: (org-export-as-latex nil nil nil nil t) RET

де tсимвол позначає лише тіло. Це створить новий буфер з виходом LaTeX. (RET означає натискання клавіші повернення)

Ярлик для вищезазначеного - зателефонувати org-export-region-as-latex. Це інтерактивна функція, з якою можна телефонувати M-x. Єдиний його аргумент - це прапор, призначений лише для тіла.

Наприклад, ви можете вибрати весь буфер (через C-x h), а потім викликати цю функцію аргументом префікса (щоб надати ненульове значення лише тілу):

C-u M-x org-export-region-to-latex RET

Тепер у вас буде обраний новий буфер із виведенням LaTeX і не додано заголовка / колонтитула / заголовків / TOC.

Ця ідея працює і з org-export-region-as-html.

Існує також наданий пакет, org-export-genericякий дозволяє повністю визначити експортера: http://orgmode.org/worg/org-contrib/org-export-generic.html

PS Я використовую останню розробну версію OrgMode 7.5

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