Emacs preview-latex - PullRequest
       23

Emacs preview-latex

0 голосов
/ 01 декабря 2011

Я использую preview-latex для отображения результатов LaTeX в окне Emacs. Я использую предварительный просмотр для переключения между кодом и выводом. Однако, если я не использую латексный код (по ошибке, может быть, я пропустил намеченную строку на одну или две), тогда предварительный просмотр пытается скомпилировать все, вызывает «другое» окно и завершается неудачей. Весь этот процесс замедляет вещи.

У меня вопрос, как я могу отключить эту компиляцию (попытку)? Если переключение невозможно, предварительный просмотр ничего не должен делать. Есть ли для этого предварительный просмотр латекса? Или, может быть, функцию, которую я могу переопределить?

error in process sentinel: LaTeX found no preview images

Спасибо

Ответы [ 2 ]

1 голос
/ 04 декабря 2011

Реальная работа выполняется preview-region, поэтому мы можем посоветовать, чтобы в некоторых случаях это было преуменьшением. Следующее не является идеальным, так как я не думаю, что есть способ узнать заранее, что будет предварительно просматриваться - пользователь может указать любую среду или макрос для предварительного просмотра. Например, если вас интересуют только предварительные просмотры математики, вы можете удалить previewable-environments фрагментов.

(defvar previewable-environments
  "List of environments that should be previewed."
  '("tabular" "tabular*" "tikzpicture" "..."))

(defadvice preview-region (around preview-at-point-no-long-pauses activate)
  "Make `preview-at-point' a no-op if mark is inactive and point is not on a preview."
  (when (or (not (eq this-command 'preview-at-point))
            (TeX-active-mark)
            (texmathp)
            (member (LaTeX-current-environment) previewable-environments))
    ad-do-it))
0 голосов
/ 14 августа 2012

Вариант принятого ответа: код вызовет переключение предварительного просмотра, если оно находится в уравнении, но я также хотел бы, чтобы весь документ был предварительно просмотрен, когда я не нахожусь ни в одном математическом фрагменте.Код для этого

(defvar previewable-environments
  "List of environments that should be previewed."
  '("tabular" "tabular*" "tikzpicture" "..."))

(defadvice preview-region (around preview-at-point-no-long-pauses activate)
  "Make `preview-at-point' a no-op if mark is inactive and point is not on a preview."
  (message "preview-region")
  (if (or (not (eq this-command 'preview-at-point))
            (TeX-active-mark)
            (texmathp)
            (member (LaTeX-current-environment) previewable-environments))
    ad-do-it
    (preview-section)
    )
  )
...