15.07.2013 Views

newclude.pdf. - CTAN

newclude.pdf. - CTAN

newclude.pdf. - CTAN

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

\InitWheel<br />

\Roll<br />

\IfTop<br />

\Top<br />

\AddSpokes<br />

15.0.7 Wheels<br />

A wheel is implemented as a macro. The tokens of its first-level expansion are the<br />

spokes, the top being the first.<br />

626 \newcommand\InitWheel [1] {% args: wheel<br />

627 \InitCS#1%<br />

628 }<br />

629 \newcommand\Roll [1] {% args: wheel<br />

630 \edef #1{%<br />

631 \expandafter\nc@roll #1\nc@llor<br />

632 }%<br />

633 }<br />

634 \ReserveCS\nc@llor<br />

635 \NewNameDef{nc@roll} {#1\nc@llor} {%<br />

636 \@cdr#1\@nil\@car#1\@nil<br />

637 }<br />

638 \newcommand\Top [1] {% args: wheel<br />

639 \E@car #1\@nil<br />

640 }<br />

641 \newcommand\IfTop [4] {% args: wheel token true false<br />

642 \EExpand#1\In {%<br />

643 \edef\nc@t@b {%<br />

644 \expandafter\noexpand\@car##1\@nil<br />

645 }%<br />

646 }%<br />

At this point, the first-level expansion of \nc@t@b is a single token, the top of the<br />

wheel. We \let \nc@t@a to this token.<br />

647 \Elet\nc@t@a\nc@t@b<br />

648 \let\nc@t@b #2%<br />

649 \ifx\nc@t@a\nc@t@b<br />

650 \expandafter\@firstoftwo<br />

651 \else<br />

652 \expandafter\@secondoftwo<br />

653 \fi<br />

654 }<br />

655 \newcommand\AddSpokes [2] {% args: wheel spokes<br />

656 \EExpand#1\In {%<br />

657 \def #1{#2##1}%<br />

658 }%<br />

659 }<br />

16 Benign packages<br />

\DeclareFormattingPackage<br />

\nc@formatting@packages 660 \newcommand\DeclareFormattingPackage [1] {%<br />

661 \addto@macro\nc@formatting@packages{,#1}%<br />

662 }<br />

663 \newcommand\nc@formatting@packages {times,helvetic}<br />

30

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!