[NTG-pdftex] [ pdftex-Patches-469 ] \currentexpansionmode +
\ifalignscanning - \ifinedef
noreply at sarovar.org
noreply at sarovar.org
Fri Jan 13 05:50:04 CET 2006
Patches item #469, was opened at 2006-01-12 02:39
You can respond by visiting:
http://sarovar.org/tracker/?func=detail&atid=495&aid=469&group_id=106
Category: None
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Morten Høgholm (morten)
Assigned to: Nobody (None)
Summary: \currentexpansionmode + \ifalignscanning - \ifinedef
Initial Comment:
Here's a patch made against pdftex-1.40.0-alpha-20060111. It
removes the \ifinedef primitive for a different primitive, namely
\currentexpansionmode. This read-only register is 0 when doing
regular typesetting, 1 when inside \edef or \xdef and 2 in other
cases of full expansion with scan_toks. It could possibly be
extended to distinguish between \marks and \write etc. Comments
more than welcome on this one!
I have also added an \ifalignscanning test. It is true whenever TeX
is looking for \noalign etc. so is most useful for a
\stopalignscanning function defined as
\def\stopalignscanning{\ifalignscanning\relax\fi}
----------------------------------------------------------------------
>Comment By: Morten Høgholm (morten)
Date: 2006-01-13 05:50
Message:
Logged In: YES
user_id=3333
Yes, just ideas here, which is why I asked for comments. We can discuss
this on the list (once my subscription is accepted).
----------------------------------------------------------------------
Comment By: Taco Hoekwater (taco)
Date: 2006-01-12 11:22
Message:
Logged In: YES
user_id=1608
Like Hans, I also prefer separate if primitives, mainly
because I do not want to have to remember the meanings
of the possible integer values (for that reason, I'm not
too happy about \currentgrouptype either).
Taco
----------------------------------------------------------------------
Comment By: Nobody (None)
Date: 2006-01-12 10:14
Message:
Logged In: NO
i wonder why we need \ifalignscanning or \stopalignscanner
at all when
eTeX already has this feature - any \protected macro stops the
scanning.
----------------------------------------------------------------------
Comment By: Hans Hagen (hagen)
Date: 2006-01-12 09:08
Message:
Logged In: YES
user_id=927
somehow i think that if's are a better idea than a register
because in your case the register only registers one case at
the same time
(when i saw this patch the first time, i wondered why not a
complete set was implemented)
- ifincsname
- ifinedef
- ifinwrite
- ifinspecial
- ifinpdfliteral
- ifinannotbody
- ifinmessage (special case of write)
- ifinalign
- ifinmark
probably some more (ok, normally all those conditions can
comfortably be catched in a macro package but if we add
them, we should be complete
in addition to this there can be a register which keeps
track of the innermost one (we can have ifcsname inside an
edef inside an align
concerning the \stopalignscanner i think it's better to have
something primitive like \crcr, say \endalign because using
if's can have its own problem
(we should not worry to much about a name clash, since one
can always let it to another one); so, we should wait with
adding this patches till (1) we agree and (2) it is complete
remark: also, it's dangerous to add patched before a decent
decission/interface is dediced upon; once it's in, we cannot
change it any more
Hans
----------------------------------------------------------------------
You can respond by visiting:
http://sarovar.org/tracker/?func=detail&atid=495&aid=469&group_id=106
More information about the ntg-pdftex
mailing list