[cstex] Znak # a výstup do indexu

"Procházka Lukáš Ing. - Pontex s. r. o." LPr at pontex.cz
Tue Sep 8 10:50:23 CEST 2009


Zdravím v konferenci,

mám dotaz. Snažím se vymyslet makro, které by přijalo parametr, ten 
vypsalo a zároveň zapsalo položku do indexu. Problém je, že parametr 
obsahuje znak(y) # - podobně jako např. v C direktiva #include. Makro se 
má jmenovat \DIREC a má se použít stylem \DIREC{#include}, tj. cílem je 
nepsat znak \ před # (tedy ne \DIREC{\#include}).

Pokud je # pouze na začátku, problém by se dal vyřešit tak, že bych 
předával parametr bez úvodního #, ten by si přidávalo až samo makro.

Ale pokud je uvnitř?

Zkouším něco v tomto duchu (hodně použit kód pana Wagnera z některé z 
minulých diskusí):

\documentclass{article}

\usepackage{index}

\newindex{default}{idx}{ind}{}

\begin{document}

  \def\DIREC{\bgroup\catcode`\#=12 \doDIREC}
  \def\doDIREC#1{\egroup\texttt{#1}\index{#1}}

  \DIREC{#include}

  \printindex

\end{document}

Výpis do .pdf je OK, ale zápis v .idx má zdvojený znak #:

\indexentry {##include}{1}

A to zdvojení # se snažím odstranit - to pak (samozřejmě) vadí při 
načtení indexu.

Zkoušel jsem nějaké "hry" s \catcode, např. nastavit znaku ^ kategorii 6 
a potom definovat předpis makra, aby přijal # jako text, ale bez valného 
účinku.

Prosím o radu; zdrojový soubor a .idx jsou v příloze mailu (WinXP, TL2007).

Lukáš Procházka


PS:

Jen na doplnění - v poslední době "zásobuji" konferenci podobně 
"obskurními" dotazy - v tématech figurují dolary, podrtžítka, mřížky, 
"at"... a jejich kombinace nebo vazby na balíčky. Důvodem je, že 
vytvářím manuál k nějakým programům, v něm se používají mj. jakási 
klíčová slova, direktivy a jiné významné znakové sekvence. A v nich se 
právě vyskytují tyto beletristicky nefrekventované znaky - $, _, #, @, 
&, % a jiné, které zde ovšem mají jistý význam.

Zároveň se má vytvářet několik rejstříků (klíčová slova / direktivy / 
...), do manuálu se vkládají výpisy zdrojových souborů a výstupů...

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: t-Pound.idx
URL: <http://lists.felk.cvut.cz/pipermail/cstex/attachments/20090908/7b3a7277/attachment-0004.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: t-Pound.tex
URL: <http://lists.felk.cvut.cz/pipermail/cstex/attachments/20090908/7b3a7277/attachment-0005.ksh>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: LPr.vcf
Type: text/x-vcard
Size: 363 bytes
Desc: not available
URL: <http://lists.felk.cvut.cz/pipermail/cstex/attachments/20090908/7b3a7277/attachment-0002.vcf>


More information about the csTeX mailing list