Используя чеканивший (исходный код ЛАТЕКСНЫЙ пакет) с emacs/auctex

В как объясняют здесь, я нахожу, что чеканивший пакет довольно прохладен для листинга исходного кода.

Мой вопрос состоит в том, как использовать чеканивший пакет с AucTeX/emacs? Для командной строки я могу использовать pdflatex -shell-escape SOURCE, но

  • Q1: Как я могу изменить AucTeX для вставки -shell-escape? Я имею в виду, как изменить действие для C-c+C-c?
  • Q2: Сделайте мне нужен специальный ключ кроме C-c+C-c для -shell-escape опция? Или, это просто в порядке для использования его без какой-либо проблемы?
  • Q3: Что -shell-escape для?

11
задан Community 23 May 2017 в 11:43
поделиться

2 ответа

Q1: Вам нужно изменить способ вызова LaTeX в AucTeX. Один из способов сделать это - добавить в файл .emacs следующее:

(eval-after-load "tex" 
  '(setcdr (assoc "LaTeX" TeX-command-list)
          '("%`%l%(mode) -shell-escape%' %t"
          TeX-run-TeX nil (latex-mode doctex-mode) :help "Run LaTeX")
    )
  )

Q2: После внесения изменений все вызовы LaTeX с помощью C-c C-c будут использовать опцию -shell-escape.

Q3: См. ответ Конрада. Обратите внимание, что этот метод включит -shell-escape для всех файлов, редактируемых в AucTeX, поэтому может представлять потенциальную угрозу безопасности при использовании чужих пакетов или файлов.

15
ответ дан 3 December 2019 в 03:17
поделиться

Я могу ответить только на вопрос 3:

Для чего нужен '-shell-escape'?

minted использует стороннее приложение, pygmentize, для обработки исходного кода. LaTeX обычно не позволяет вызывать другие приложения по соображениям безопасности (неавторизованный пакет может вызвать арибтрийный код). Чтобы явно разрешить вызов внешних приложений, нужно включить так называемый выход в оболочку - что в большинстве установок LaTeX делается с помощью ключа -shell-escape.

7
ответ дан 3 December 2019 в 03:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: