|
\makeatletter
\if@twocolumn \let\strip\relax \let\endstrip\relax \fi
\makeatother
----- Original Message ----- From: "regonly.noreply" <CyrTeX-ru@vsu.ru>
To: "Cyrillic TeX Users Group" <CyrTeX-ru@vsu.ru>
Sent: Wednesday, April 01, 2009 11:00 PM
Subject: Как запрограммировать \if...\onecolumn...?
Здравствуйте!
У меня задача: использовать один и тот же документ для обычной и для
двухколоночной вёрстки. Двухколоночнсть я задаю командой \twocolumn в
начале документа. Подключены также пакеты:
\usepackage{fixltx2e} % Устраняет проблемы двухколоночного набора LaTeX
\usepackage{dblfloatfix} % Устраняет проблемы двухколоночного набора
LaTeX. Требует fixltx2e. ЗАМЕНЯЕТ stfloats и fix2col!
\usepackage{cuted} % Набор sttools — даёт окружение strip для
переключения на одну колонку.
Окружение strip можно использовать для оглавления
\begin{strip}
\tableofcontents
\end{strip}
или для заголовков и т. д.
Проблема в том, что если верстать тот же документ в одну колонку,
задав \onecolumn вместо \twocolumn, то окружение strip всё портит ---
исчезает текст и т. д. То есть в одноколоночной версии его надо
«выключить» сразу во всём документе, чтобы оно «ничего не делало».
Иначе придётся выискивать и править каждое место, где его
использовали.
Я пытаюсь запрограммировать что-то вроде:
\iftrue\onecolumn \let\strip=\empty\fi
и т. п., но у меня ничего не выходит. Переопределяется, но от числа
колонок не зависит (можно проверить не на strip, а на чём-то
обыкновенном типа \let\quote=\empty или \let\emph=\empty). То есть,
как я понимаю, система не может отличить, где \twocolumn, а где
\onecolumn?
Может кто-нибудь помочь разобраться?
С уважением, neGODnick
================================================
CyrTeX-ru mailing list Archives and Information:
https://info.vsu.ru/Lists/CyrTeX-ru/List.html
|
|