[cstex] Problém s \csname

Jan Sustek Jan.Sustek at seznam.cz
Tue Aug 25 14:19:36 CEST 2009


Dobry den,

\UUU! nebude fungovat, vykricnik neni pismeno a nacitani nazvu makra skonci u \UUU. Makro musite volat jako \csname UUU!\endcsname. Dalsi moznost by byla na zacatku nastavit \catcode'\!=11, potom se bude vykricnik chovat jako pismeno a TeX spravne nacte nazev makra i pri pouziti \UUU!. Toto reseni ale obecne nedoporucuji, zejmena v pripade, ze se v nazvech maker budou vyskytovat znaky kategorie 0-8.

Zdravi
Jan Sustek

> ------------ Původní zpráva ------------
> Od: "Procházka Lukáš Ing. - Pontex s. r. o." <LPr na pontex.cz>
> Předmět: [cstex] Problém s \csname
> Datum: 25.8.2009 14:10:47
> ----------------------------------------
> Zdravím v konferenci,
> 
> asi jeden z dalších problémů začátečníka - potřeboval implementovat 
> "vytvářeč maker" tak, aby ve jménu mohl být i nepísmenový znak, např "!" 
> nebo "/".
> 
> Toto mi nefunguje:
> 
> \def\MkIndexed#1#2{\expandafter\def\csname #1\endcsname{#2}}
> 
> \MkIndexed{UUU!}{uuu}
> \MkIndexed{VVV!}{vvv}
> 
> \UUU!
> \VVV!
> 
> S chybou:
> 
> ! Undefined control sequence.
> l.56 \UUU
>          !
> ?
> 
> Kdybych se obešel bez vykřičníku ve jménu "UUU!", bylo by vše OK. Jak 
> jej vnutit do jména?
> 
> Předem děkuji a zdravím.
> 
> Lukáš Procházka
> 
> 
> 
> 


More information about the csTeX mailing list