Mailing List CyrTeX-ru@vsu.ru Message #48
From: Alexander I Rozhenko <CyrTeX-ru@vsu.ru>
Subject: Re: Индексирование команд в исходных текстах пакетов
Date: Sun, 20 Apr 2008 12:00:30 +0700
To: Cyrillic TeX Users Group <CyrTeX-ru@vsu.ru>
Использование \verb при индексировании команд не слишком удачная идея.

Могу поделиться макросами (macro.sty), которые я использовал при оформлении книги по LaTeX'у. Индексирование команд выполняется командой \cmd{имя}, которая формирует текст "\имя комментарий" в индексном файле. В комментарии приводится название пакета, к которому принадлежит команда. Этот механизм реализован командой \InPackage, с помощью которой в преамбуле документа описывается принадлежность команд пакетам (пример в commands.sty).

Роженко

----- Original Message ----- From: "Stanislav Kruchinin" <CyrTeX-ru@vsu.ru>
To: "Cyrillic TeX Users Group" <CyrTeX-ru@vsu.ru>
Sent: Saturday, April 19, 2008 10:55 PM
Subject: Индексирование команд в исходных текстах пакетов


В целом мне уже ясно, как надо составлять индекс команд при документировании исходных текстов. Реализованное в пакете doc автоматическое индексирование абсолютно не работает, поэтому нужно использовать makeidx и делать все вручную.

Хотелось бы ввести команду, объединяющую функции \DescribeMacro из пакета doc и \index из makeidx, чтобы печатать на полях и вносить в индекс. Примерно так:

\def\IndexMacro#1{\DescribeMacro{#1}\index{Макросы!\verb+#1+}
\def\IndexEnv#1{\DescribeEnv{#1}\index{Окружения!\verb+#1+}

и потом использовать в dtx

% \IndexMacro{\section}

Проблема в том, что для добавления команд с @ внутри \index нужно явным образом экранировать символы \ и @ с помощью двойных кавычек.

\DescribeMacro{\@seccntformat}\index{Макросы!\verb+"\"@seccntformat+}

Вопрос: как средствами TeX реализовать подстановку этих двойных кавычек перед определенными символами аргумента?

================================================
CyrTeX-ru mailing list Archives and Information:
https://info.vsu.ru/Lists/CyrTeX-ru/List.html


Subscribe (FEED) Subscribe (DIGEST) Subscribe (INDEX) Unsubscribe Mail to Listmaster