答案1
答案2
答案3
采用原始实现\@ifnextchar
(我猜,采用其中的一个latex.ltx
会更好):
\catcode`\@=11
\long\def\@firstoftwo#1#2{#1}%
\long\def\@secondoftwo#1#2{#2}%
\long\def\@ifnextchar#1#2#3#4{%
\ifx#1#4%
\expandafter\@firstoftwo
\else
\expandafter\@secondoftwo
\fi
{#2}{#3}#4}%
\def\stile{\@ifnextchar[{\stile@i}{\stile@ii}}%
\def\stile@i[#1]{{|\kern-.225em-}_{\rm #1}}%
\def\stile@ii{{|\kern-.225em-}}%
\catcode`\@=12
$$\stile \alpha$$
$$\stile[K] \alpha$$
\bye
更稳定的版本\@ifnextchar
(类似于latex.ltx
但不完全相同):
\long\def\@ifnextchar#1#2#3{%
\let\@tmpa=#1%
\def\@tmpb{#2}%
\def\@tmpc{#3}%
\futurelet\@future\@ifnextchar@i}%
\def\@ifnextchar@i{%
\ifx\@tmpa\@future%
\expandafter\@tmpb
\else
\expandafter\@tmpc
\fi}%
答案4
我知道你标记了这个{plain-tex}
,但这确实是使用 LaTeX 的一个例子,旋转闸门包,将会有很大的帮助。
然后,您可以简单地使用$\sststile{\mathrm{K}}{} \alpha$
。此包还可以提高旋转闸门的整体排版质量(请参阅下图,来自turnstile
文章),并提供大量附加选项。