Is there a modal command for MakeLowercase?
Really there is no such command.
If you have a command that acts as a switch, such as a font change like \bfseries
then it is easy to make a command that takes an argument and applies the original command in a local group, so \textbf
is (simplified a bit) just
\def\textbf#1{{\bfseries #1}}
However going the other way is harder. \MakeUppercase
is a wrapper around \edef
and \uppercase
and both of these primitives require a {}
delimited list of tokens on which to act.
You can get caps and small caps as a modal switch \scshape
as that font shape is commonly available, however an all-caps font is not available in most font sets. \uppercase
(and so \MakeUppercase
) does not work as a font change but as a token level transformation replacing each token in the argument by a specified replacement a
to A
for example. Conversely with an all caps font then a
would still be a
(ASCII/Unicode hex 61) but would use a glyph that looked like A when rendered.
You can define such control sequence as macro, if you need it. The following code defines \lowc
.
\def\lowc{\expandafter\lowercaseA\expandafter{\iffalse}\fi}
\long\def\lowercaseA#1{\lowercase{#1}\egroup}
Test: {\bf TEXT \lowc AHA UFF}
\bye