From: "Alexander I Rozhenko" Received: by relay1.vsu.ru (CommuniGate Pro PIPE 5.3.7) with PIPE id 258487843; Sat, 15 May 2010 05:47:01 +0400 X-drweb-hash: Received: from mx.sscc.ru ([194.226.182.62] verified) by relay1.vsu.ru (CommuniGate Pro SMTP 5.3.7) with ESMTP id 258487840 for CyrTeX-ru@vsu.ru; Sat, 15 May 2010 05:46:52 +0400 Received-SPF: none receiver=relay1.vsu.ru; client-ip=194.226.182.62; envelope-from=rozhenko@oapmg.sscc.ru Received: from localhost.sscc.ru ([127.0.0.1]:60159 helo=mx.sscc.ru) by mx.sscc.ru with esmtp (Exim 4.71 #0 (Debian)) id 1OD6Sl-000PrG-MF for ; Sat, 15 May 2010 08:46:47 +0700 Received: from 89.31.118.161 (SquirrelMail authenticated user rozhenko@oapmg.sscc.ru) by mx.sscc.ru with HTTP; Sat, 15 May 2010 08:46:47 +0700 Message-ID: <99465579e84a06032758752dcaeeea06.squirrel@mx.sscc.ru> In-Reply-To: References: Date: Sat, 15 May 2010 08:46:47 +0700 Subject: =?utf-8?B?UmU6INCi0LXRgdGCINGB0YPRidC10YHRgtCy0L7QstCw0L3QuNGPINC80LA=?= =?utf-8?B?0LrRgNC+0LrQvtC80LDQvdC00Ysg0LjQu9C4INC30LDQs9GA0YPQt9C60Lgg?= =?utf-8?B?0L/QsNC60LXRgtCw?= To: "Cyrillic TeX Users Group" User-Agent: SquirrelMail/1.4.20 MIME-Version: 1.0 Content-Type: text/plain;charset=utf-8 Content-Transfer-Encoding: 8bit X-Priority: 3 (Normal) Importance: Normal X-DrWeb-FlyTrap-Class: NON-SPAM X-DrWeb-FlyTrap-CID: 2 X-DrWeb-FlyTrap-ID: 75260191 если пакет XXX.sty загружен, то команда \ver@XXX.sty будет определена. Проверку этого можно делать так: \expandafter\ifx \csname ver@XXX.sty\endcsname\relax код в случае незагруженного пакета \else код в случае загруженного пакета \fi Для надёжности вместо .sty лучше писать .\@pkgextension, т.е. \expandafter\ifx \csname ver@XXX.\@pkgextension\endcsname\relax код в случае незагруженного пакета \else код в случае загруженного пакета \fi Естественно, всё это надо делать внутри своего пакета. Я использовал трюк с проверкой загрузки пакета в пакете afterpackage. > Aleksander Gorohovski > Доброго времени суток Уважаемые TeXники! > > Подскажите, пожалуйста, > как можно узнать в преамбуле документа > существует ли уже макрокоманда (определенная некоторым пакетом) > > Вопрос возник в связи с тем, что надо переопределить некоторую > команду \com, но её появление (макроопределение) зависит от > некоторого пакета XXX.sty подключаемого в зависимости от внешних условий. > > Из-за чего > \renewcommand{\com}{ } > ругается > :( > > Конечно, можно было поступить через > \DeclareRobustCommand{\com}{ } > но мне кажется это не есть совсем хорошо. > > Или может существует подход проще --- узнать загружен пакет XXX.sty или > нет > > Спасибо. > > ================================================ > CyrTeX-ru mailing list Archives and Information: > https://info.vsu.ru/Lists/CyrTeX-ru/List.html > > -- Sincerely, Alexander I Rozhenko Leading Researcher Lab. AP&MG ICM&MG, Novosibirsk