Выполненный pdflatex бесшумно [закрывается]

Вы можете использовать целый набор команд для изменения текста в скобках / скобках / кавычках / тегах. Очень полезно избегать необходимости искать начало и конец группы. Попробуйте ci(, ci{, ci<, ci", ci', ct в зависимости от того, какой объект вы хотите изменить. И варианты ca(, ca{, ... удаляют также квадратные / кавычки.

Легко запомнить: изменить внутри выражения в скобках / изменить выражение в скобках.

54
задан Kevin Reid 26 January 2011 в 02:36
поделиться

2 ответа

Чтобы просто игнорировать весь вывод, перенаправьте stdout pdflatex на / dev / null :

system("pdflatex yourdocument >/dev/null");

Вы можете добавить \ nonstopmode в начало вашего документа, чтобы указать tex продолжать работу даже при обнаружении ошибок.

Чтобы получить сообщения об ошибках, направьте вывод pdflatex в вашу программу и ищите ошибки в строках, начинающихся с ! , например,

FILE *outputf = popen("pdflatex yourdocument", "r");

// ... read and analyze output from outputf ...

pclose(outputf);
23
ответ дан 7 November 2019 в 08:03
поделиться

К сожалению (La) TeX на самом деле не соблюдает правила stdout и sterr из-за (я полагаю) своего происхождения в начало 80-х. Но есть некоторые переключатели, которые вы можете активировать, чтобы изменить объем отображаемой информации.

Выполните latex с помощью -interaction = nonstopmode или -interaction = batchmode переключается на режим без остановки даже в случае синтаксической ошибки. nonstopmode напечатает все обычные строки, он просто не остановится. пакетный режим подавит все, кроме нескольких декларативных строк («это pdfTeX v3.14 ...»).

Их также можно вызвать из документа с помощью \ batchmode ] и \ nonstopmode ,

62
ответ дан 7 November 2019 в 08:03
поделиться
Другие вопросы по тегам:

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