From: "Sergej V. Znamenskij" Received: by relay1.vsu.ru (CommuniGate Pro PIPE 5.2.6) with PIPE id 108718862; Mon, 11 Aug 2008 14:01:48 +0400 Received: from pier.botik.ru ([193.232.174.1] verified) by relay1.vsu.ru (CommuniGate Pro SMTP 5.2.6) with ESMTPS id 108717927 for CyrTeX-ru@vsu.ru; Mon, 11 Aug 2008 13:59:27 +0400 Received-SPF: none receiver=relay1.vsu.ru; client-ip=193.232.174.1; envelope-from=svz@latex.pereslavl.ru Received: from latex.pereslavl.ru ([192.168.164.14]:41634 ident=svz) by pier.botik.ru with esmtp (Exim 4.50) id 1KSUBP-0008NV-Qx for CyrTeX-ru@vsu.ru; Mon, 11 Aug 2008 13:59:23 +0400 Organization: PSI RAS To: "Cyrillic TeX Users Group" Subject: Re: endfloat =?koi8-r?b?0M8t0tXT08vJ?= Date: Mon, 11 Aug 2008 13:58:45 +0400 User-Agent: KMail/1.9.5 References: In-Reply-To: MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="koi8-r" Content-Transfer-Encoding: 8bit Message-Id: <200808111358.45474.svz@latex.pereslavl.ru> X-DrWeb-FlyTrap-Class: NON-SPAM X-DrWeb-FlyTrap-CID: 1 X-DrWeb-FlyTrap-ID: 1744479 Здравствуйте все! On Thursday 07 August 2008 09:40, Evgeny M. Baldin wrote: > Добрый день > > Может кто знает: а что делает команда \T2A? Я уже не первый раз на > неё натыкаюсь, в смысле когда возникают проблемы с поддержкой кириллицы. Нет такой команды. > endfloat для перемещения картинок создаёт файл с расширением fff и в > качестве подписи вместо скажем слова "проба" добавляет > > \T2A\cyrp \T2A\cyrr \T2A\cyro \T2A\cyrb \T2A\cyra Обратите внимание на пробелы между командами с непривычными именами: \T2A\cyrp \T2A\cyrr \T2A\cyro \T2A\cyrb \T2A\cyra > Причём если в caption написать > > \cyrp\cyrr\cyro\cyrb\cyra > > то проблем не возникает. То есть все проблемы возникают из-за лишнего > \T2A. Увы, но чтобы избавиться от лишнего \T2A нужно чтобы \efloat@iwrite было inputenc-совместимо переписано. > Код, который этим занимается в endfloat.sty: > > \def\figure{% > \efloat@condopen{fff} > \efloat@iwrite{fff}{\string\begin{figure*}}% > \if@domarkers% > \addtocounter{postfig}{1}% % bj > \figureplace% % bj > \fi% > \def\@currenvir{efloat@float}% > \begingroup% > \let\do\ef@makeinnocent \dospecials% > \ef@makeinnocent\^^L% and whatever other special cases > \endlinechar`\^^M \catcode`\^^M=12 \ef@xfigure}% > \def\efloat@foundend#1#2{\def\next{\endgroup\end{efloat@float}% > \efloat@iwrite{#1}{\string\end{#2}}% > \efloat@iwrite{#1}{\string\efloatseparator}% > \efloat@iwrite{#1}{ }}}% > {\catcode`\^^M=12 \endlinechar=-1 % > \gdef\ef@xfigure#1^^M{\def\test{#1}% > \ifx\test\ef@endfiguretest > \efloat@foundend{fff}{figure*} > \else\ifx\test\ef@enddblfiguretest > \efloat@foundend{fff}{figure*} > \else% > \efloat@iwrite{fff}{#1}% > \let\next\ef@xfigure% > \fi \fi \next}% > }% > > За запись текста, похоже отвечает вот это: > > \ef@makeinnocent\^^L% and whatever other special cases > \endlinechar`\^^M \catcode`\^^M=12 \ef@xfigure}% > > Может быть есть команда, которая кириллицу переводит в строку вида: > \cyrp\cyrr\cyro\cyrb\cyra? Тогда в подобных случаях можно было бы > поставить костыль. Есть и она используется в стандартном latex. Только ее сложно разыскать и подключить. Но может быть стоит просто записать в начало файла \def\T#1#2{} чтобы лишние \T2A исчезали бесследно? Разумеется, других определений \T в документе быть не должно. > С уважением > Евгений > > P.S. Пакетов, которые автоматически размещали картинке в конце статьи > кроме endfloat не встречал. > > On Thu, 7 Aug 2008, Андрей Панов wrote: > > On 7 августа 2008, Evgeny M. Baldin wrote: > >> Добрый день > >> > >> А можно чуть подробнее: что значит не работают с русским? > > > > Выдаются ошибки типа > > > > ! Undefined control sequence. > > l.5 \T > > 2A\cyra > > > > на этапе обработки файла с перечнем подписей рисунков. > > > >> Освежил в памяти как правила подготовки статей для издательства МАИК > >> Интерпериодика - там картинки в конце просто размещаются руками в > >> соответсвии с шаблоном. > > > > Да, только указанные пакеты делают это автоматически. -- С уважением, С.В. Знаменский --- Сергей Витальевич Знаменский