Проблема в латексе: «Здесь нет конца до конца» - PullRequest
4 голосов
/ 31 октября 2009

Я использую Lyx для создания документа Latex, и когда я пытаюсь конвертировать в pdf, он жалуется на ошибку: "нет конца до конца", а описание "//".

Мой латексный документ похож на 200 строк без множества разрывов строк. Как я должен отладить это и преобразовать этот проклятый pdf. Я буквально застрял на этом в течение нескольких часов, не могу представить этот PDF. И в течение 90% времени при написании этого документа конвертация в pdf работает нормально, я не знаю, с какого момента он начал давать сбой.

Кто-нибудь дал мне быстрый способ избавиться от этой ошибки? В противном случае этот латексный документ бесполезен.

Спасибо.

Ответы [ 6 ]

22 голосов
/ 31 октября 2009

Это может звучать глупо, но иногда латексу нужен знак перед \, поэтому:

~\\

Это очень сильно зависит от выбранного вами дистрибутива. LyX кстати. отчасти сумасшедший, когда дело доходит до экспорта LaTeX. Попробуйте auctex, если у вас есть месяц или два, чтобы сэкономить;)

4 голосов
/ 31 октября 2009

IMO это проблема с LyX; когда что-то идет не так, трудно понять, где искать решение проблемы. Это минимальный документ, который показывает пример ошибки:

\documentclass{article}
\begin{document}
\\ there
\end{document}

Я предлагаю экспортировать ваш документ LyX в LaTeX, затем скомпилировать его «вручную» (с pdflatex mydoc или любым другим) и посмотреть, где в документе появляется ошибка. После этого вы сможете сопоставить его с какой-то недостойной частью документа LyX.

1 голос
/ 11 октября 2011

Вы можете перейти к View -> View Source и нажимать вокруг, пока не найдете оскорбительную строку. В латексе разрыв строки составляет \\.

После этого я понял, что проблема в том, что вы не можете поставить разрыв строки ( Ctrl + Enter ) в начале строки (или ячейки). Вы можете обмануть, введя пробел ( Ctrl + Пробел ) до разрыва строки. :)

1 голос
/ 31 октября 2009

Сделайте бинарный поиск. Удалите половину документа, если он компилируется, то проблема была в той части, которую вы удалили. Если нет, то это в половине, которую вы держали. Повторите процедуру для части, вызывающей оскорбления, и вскоре вы обнаружите, какая строка вызывает ее.

1 голос
/ 31 октября 2009

Уважаемый Саоби, пожалуйста, опубликуйте оскорбительную строку. Вероятно, у вас есть "\" в однострочном математическом окружении. Если вы разместите код для полной среды, я могу попытаться указать, как предотвратить эту ошибку.

0 голосов
/ 31 октября 2009

Мой подход к поиску ошибок компиляции в документах LaTeX основан на подходе двоичного поиска. Я полагаю, что аналогичный подход может быть использован в LyX.

Основная идея - разделить ваш документ на две части примерно одинакового размера. На границе между этими двумя частями вставлена ​​строка, содержащая \ end {document}. Если документ теперь может быть скомпилирован без проблем, проблема находилась во второй половине документа (в противном случае это была первая часть документа).

\documentclass{article}
\begin{document}
% First half part of the document
\section{Hello}

% Location for inserting \end{document}

% Second half part of the document
% in which the error is located
\section{World
\end{document}
...