假设我们有以下代码
\documentclass{article}
\begin{document}
$a=b=c=d=e=f=g=h=i=j=k=l=m=n=o=p=q=r=s=t=u=v=w=x=y=z$
\end{document}
产生以下结果
我想在符号前自动添加一个等号s
。
更新
\leq
关于和的相同问题
$a \leq b \leq c \leq d \leq e \leq f \leq g \leq h \leq i \leq j \leq k \leq l \leq m \leq n \leq o \leq p \leq q \leq r \leq s \leq t \leq u \leq v \leq w \leq x \leq y \leq z$
答案1
我不建议重复。但是,修改一下这个答案你可以得到你想要的:
\documentclass{article}
\usepackage{amsmath}
\mathchardef\mathequals=\mathcode`=
\begingroup\lccode`~=`=
\lowercase{\endgroup\def~}{\mathequals\discretionary{}{\the\textfont0=}{}}
\AtBeginDocument{\mathcode`=="8000 }
\begin{document}
$a=b=c=d=e=f=g=h=i=j=k=l=m=n=o=p=q=r=s=t=u=v=w=x=y=z$
\end{document}
是\AtBeginDocument
必需的,因为amsmath
使用符号进行一些初始化。不加载=
时不会造成影响。amsmath
其他数学符号
让我们看看如何重新定义\leq
以具有与 相同的属性=
。我采用了一个技巧,我相信这是已故的 Michael J. Downes( 的主要开发者amsmath
)的功劳:
\let\mathleq=\leq
\def\getmeaning#1"#2#3{\noexpand\the\textfont"#3\char"}
\begingroup\edef\x{\endgroup
\def\leq{\mathleq\discretionary{}{\expandafter\getmeaning\meaning\mathleq}{}}}\x
的展开\meaning\mathleq
是\mathchar"3214
,我们需要保存2
(作为的参数需要\textfont
)留14
在输入流中。之后\edef
我们得到
\def\leq{\mathleq\discretionary{}{\the\textfont"2\char"14}{}}
这与我以前使用过的类似=
。
答案2
从http://dxdy.ru/post82175.html
在序言中:
\def\?#1{#1\nobreak\discretionary{}{\hbox{$\mathsurround=0pt #1$}}{}}
然后你应该\?
在操作前添加:
\begin{document}
$a \?\leq b \?\leq c \?\leq d \?\leq e \?\leq f \?\leq g \?\leq h \?\leq i \?\leq j \?\leq k \?\leq l \?\leq m \?\leq n \?\leq o \?\leq p \?\leq q \?\leq r \?\leq s \?\leq t \?\leq u \?\leq v \?\leq w \?\leq x \?\leq y \?\leq z$
\end{document}