Відстеження помилок експорту Org LaTeX


9

Як ви відстежуєте помилки, повідомлені під час експорту? Я пишу Org-документ і експортую його в PDF. (Я не знаю LaTeX).

Я отримую наступне повідомлення про помилку: org-latex-compile: PDF file ./myfile.pdf wasn't produced: [undefined control sequence] [package error] Runaway argument. За допомогою спроб і помилок я звузив його до цього розділу документа:

* Prefix key
  * ~M-p~ (currently unassigned)
  * ~H-c~ (currently unassigned)
  * ~H-;~ (currently unassigned)

Після довгого пошуку в Інтернеті я виявив, що обмеженням LaTeX є те, що дослівний текст не може бути використаний у підзаголовку. LaTeX, згенерований з вищевказаного фрагмента, включав рядки типу:

\subsubsection{\verb~M-p~ (currently unassigned)}

Зміна підзаголовків на не упорядкований список вирішила проблему:

* Prefix key
  - ~M-p~ (currently unassigned)
  - ~H-c~ (currently unassigned)
  - ~H-;~ (currently unassigned)

тому що ці генеровані лінії виглядали приблизно так:

\item \verb~M-p~ (currently unassigned)

Тепер, нарешті, ось моє запитання: чи є кращий спосіб відстеження, діагностування та вирішення таких помилок, ніж мій пошук проб і помилок плюс-веб (якщо, скажімо, витратити кілька тижнів на вивчення LaTeX) ?

В даний час мій файл виробляє , здавалося б, невеликий PDF ... але процес експорту робить видає повідомлення про помилку: Process completed with errors: [package error]. Я поняття не маю, чи це серйозно, чи вплинуло це на моє виведення PDF таким чином, якого я ще не помітив, чи це банально і слід ігнорувати. Будь-яка допомога вдячна.


6
Існує буфер, куди Org записує вихід з tex2pdfбудь-якої іншої команди, яку ви використовуєте для створення PDF. Переключіться, щоб *Org PDF LaTeX Output*побачити це. Помилка пакету зазвичай означає, що ви використовували якийсь пакет, який ви не встановили (у вас відсутній якийсь файл STY).
wvxvw

Ага! Дуже цікаво, я цього не помічав. Звичайно ж, є error- не є членом будь відсутнім пакетом, але генеруються з допомогою пакета. inputencПоскаржився, бо я використав UTF-символ, який LaTeX, мабуть, не представляє. Дякую!
Сью Д. Німма

Відповіді:


8

Як @wvxvw запропонував у коментарях, перегляд *Org PDF LaTeX Output*буфера - це місце для перевірки помилок. З деяким базовим ознайомленням з LaTeX, ви зможете відслідковувати порівняно прості помилки на кшталт цих (які, на мій досвід, майже завжди виходять з \verbкоманди. Однак, здається, ви не зможете безпосередньо відстежити помилку назад до оригінальний файл Org.


Немає способу безпосередньо перейти до ряду порушень у файлі .org?
бекко

1

Я вважаю, що прив'язка макросу, як описана нижче, дуже корисна:

(local-set-key (kbd "C-c m o")
               (kbd "C-x b org SPC output RET M-< C-s fatal SPC error"))

Це просто:

  • Переключається на буфер за допомогою ido
  • Шукає рядок "фатальна помилка"

Звичайно, ви можете зробити те ж саме більш програмно, але я думаю, що цього достатньо для такого базового використання. Крім того, це приємний приклад потужності палітур emacs та макросів, спеціально для людей, що походять від vim, які звикли до noremapстилю прив’язки.

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