我正在写一篇数学论文,我想将定理陈述的样式改为\tt
。但是,我希望这会影响数学模式中的内容以及普通文本。有没有办法强制环境内的所有数学块更改样式?
答案1
以下是实现以下想法的一个可能的解决方案:马可·丹尼尔在评论中;解决方案使用:
- 这
amsthm
包定义一种新的定理样式,以生成具有等宽字体的标题和正文的定理类结构。此样式用于定义theo
环境。 这
etoolbox
要附加的包大卫·卡莱尔的回答到我可以将所有数学输出更改为使用等宽文本吗?\begin
到环境开始时命令 执行的钩子theo
。\documentclass{article} \usepackage{amsthm} \usepackage{etoolbox} \newtheoremstyle{monosp} {\topsep}{\topsep} {\ttfamily}{} {\ttfamily}{.\mbox{$ $}} {.5em}{} \theoremstyle{monosp} \newtheorem{theo}{Theorem} \AtBeginEnvironment{theo}{% \everymath{\mathtt{\xdef\tmp{\fam\the\fam\relax}\aftergroup\tmp}} \everydisplay{\mathtt{\xdef\tmp{\fam\the\fam\relax}\aftergroup\tmp}} } \begin{document} Some test text $a=b$ and some in-line math $c=d$ and a displayed expression \[a=b\] just to test. \begin{theo} Some test text $a=b$ and some in-line math $c=d$ and a displayed expression \[a=b\] just to test. \end{theo} Some test text $a=b$ and some in-line math $c=d$ and a displayed expression \[a=b\] just to test. \end{document}