Есть ли способ получить вложенные блочные комментарии в LaTeX? Я использую пакет comment
для получения блочных комментариев, но вложение одного комментария в другой с помощью \begin{comment}...\begin{comment}...\end{comment}...\end{comment}
не работает. (Я получаю ошибку "\begin{document} ended by \end{comment}".)
При написании и редактировании статей мне было бы полезно иметь возможность комментировать произвольные блоки текста, даже если в них уже есть закомментированные блоки.
Я знаю, что есть решения на основе редактора. Я спрашиваю, есть ли способ сделать это в исходном коде моего документа LaTeX.
решение1
Я предлагаю команду-обертку, которая использует блок, который должен быть закомментирован, как аргумент и «помещает его в корзину».
\newcommand{\mycomment}[1]{% }%
\mycomment{%
Other stuff...
}%
Это работает до тех пор, пока закомментированный блок имеет правильный LaTeX
синтаксис, т.е. не имеет незакрытых правых строк }
или чего-то подобного. Однако в таких случаях без комментария компиляция в конечном итоге все равно завершится ошибкой.
решение2
Я использую \ifx
ended by \fi
. Он ищет токен, это то, что мне не нужно, поэтому я использую \ifx\relax
. Маленький пример иллюстрирует это, он набирает a e
.
\documentclass[a4paper]{article}
\begin{document}
a
\ifx\relax
b
\ifx\relax
c
\fi
d
\fi
e
\end{document}