Jeśli chcemy zmienić parametry należy zmienić definicję odpowiedniej makroinstrukcji, ustawianie lokalnie wartości parametru nie spowoduje pożądanych efektów. Ze względu na nieco pokrętny sposób definiowania parametrów możemy mieć kłopoty z ustawieniem wartości nam odpowiadających.
Zdefiniowana makroinstrukcja \@listi jest zapamiętywana (makropodstawienie) pod nazwą \@listI.
\def\normalsize{%
.
.
.
\let\@listi=\@listI
}
\def\@listi{%
.
.
.
}
\let\@listI=\@listi
Każdorazowa
zmiana fontu na \normalsize powoduje nadanie makroinstrukcji
\@listi wartości zapamiętanej w \@listI;
następuje odtworzenie ciała pierwotnie zdefiniowanej makroinstrukcji
(w której są definiowane parametry opisujące skład listy)
\@listi -- należy
zmienić definicję makroinstrukcji \@listI, a nie \@listi
. W przypadku wywołania
makroinstrukcji \small lub \footnotesize jest jeszcze gorzej:
makroinstrukcja \@listi jest definiowana wewnątrz ww.
makroinstrukcji;
\def\small{%
.
.
\def\@listi{%
.
.
.
}
}
tzn. każde użycie \small lub footnotesize
spowoduje ponowne zdefiniowanie \@listi definiującej
parametry składu list.
Jeśli chcemy mieć wpływ na parametry składu należy utworzyć własną makroinstrukcję \@listI oraz \small i \footnotesize -- będziemy mieli wpływ na skład listy na pierwszym poziomie oraz zdefiniowaă wěasne \@listii, \@listiii ..., aby nadać własne wartości składu na wyższych stopniach zagnieżdzenia.