10.07.2015 Views

The microtype package

The microtype package

The microtype package

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

IMPLEMENTATION: Configuration 113\MT@declare@char@inh\MT@inh@do\MT@inh@split3533 \MT@map@clist@c\MT@features{{\MT@declare@char@inh{##1}{#1}{#2}}}%3534 }{%3535 \MT@map@clist@c\MT@inh@feat{{%3536 \KV@@sp@def\@tempa{##1}%3537 \MT@ifempty\@tempa\relax{%3538 \MT@exp@one@n\MT@declare@char@inh3539 {\csname MT@rbba@\@tempa\endcsname}{#1}{#2}%3540 }%3541 }}%3542 }%3543 \MT@end@catcodes3544 }<strong>The</strong> keys for the optional argument.3545 \MT@map@clist@c\MT@features@long{%3546 \define@key{MT@inh@}{#1}[]{\edef\MT@inh@feat{\MT@inh@feat#1,}}}3547 \define@key{MT@inh@}{inputenc}{\def\MT@extra@inputenc{#1}}<strong>The</strong> lists cannot be given a name by the user.3548 \def\MT@declare@char@inh#1#2#3{%3549 \MT@edef@n{MT@#1@inh@name}%3550 {\MT@curr@file/\the\inputlineno (\@nameuse{MT@abbr@#1})}%3551 \MT@let@cn\MT@curr@set@name{MT@#1@inh@name}%3552 \MT@ifdefined@c@T\MT@extra@inputenc{%3553 \MT@xdef@n{MT@#1@inh@\MT@curr@set@name @inputenc}{\MT@extra@inputenc}}%3554 \MT@dinfo{1}{creating inheritance list `\@nameuse{MT@#1@inh@name}’}%3555 \MT@gdef@n{MT@#1@inh@\csname MT@#1@inh@name\endcsname}{#3}%3556 \def\MT@permutelist{#1@inh}%3557 \setkeys{MT@inh}{#2}%3558 \MT@permute3559 }Parse the second argument. \DeclareCharacterInheritance may also be set upfor various combinations. We can reuse the key setup from the configuration lists(\Set...).3560 \MT@define@code@key{encoding}{inh}3561 \MT@define@code@key@family {inh}3562 \MT@define@code@key{series} {inh}3563 \MT@define@code@key{shape} {inh}3564 \MT@define@code@key@size {inh}3565 \MT@define@code@key@font {inh}Now parse the third argument, the inheritance lists. We define the commands\MT@inh@〈name〉@〈slot〉@, containing the inheriting characters. <strong>The</strong>y will also betranslated to slot numbers here, to save some time. <strong>The</strong> following will be executedonly once, namely the first time this inheritance list is encountered (in\MT@set@〈feature〉@codes).3566 \def\MT@inh@do#1,{%3567 \ifx\relax#1\@empty \else3568 \MT@inh@split #1==\relax3569 \expandafter\MT@inh@do3570 \fi3571 }Only gather the inheriting characters here. <strong>The</strong>ir codes will actually be set in\MT@set@〈feature〉@codes.3572 3573 3574 \def\MT@inh@split#1=#2=#3\relax{%3575 \def\@tempa{#1}%3576 \ifx\@tempa\@empty \else3577 \MT@get@slot3578 \ifnum\MT@char > \m@ne

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

Saved successfully!

Ooh no, something went wrong!