在.sty
文件中定义:
\NewDocumentCommand{\comb}{m m}{\mathrm{C}_{#1}^{#2}}
% 这样写显示效果会有问题
但是.tex
文件中:
写$\comb{n}{i}$
会得到C\_n^i
的显示效果(下划线直接输出, 而不作为下标的标志), 然后这些命令放在.tex
文件中定义不会有这种问题.
.tex
代码和对应的编译效果见图.sty
代码见附件:MyTemplate.sty似乎 是因为.sty
中 会默认启用expl3
环境,因此_
会被转义...
% MyTemplate.sty
%============== MyTemplate.sty ==============%
\NeedsTeXFormat{LaTeX2e}[2020-10-01]
\ProvidesExplPackage{MyTemplate}{2025-09-21}{1.1}{My personal utility macros}
% \NewDocumentCommand{\comb}{m m}{\mathrm{C}_{#1}^{#2}}% 这样写显示效果会有问题
\NewDocumentCommand{\comb}{m m}{\mathrm{C}\sp{#2}\sb{#1}}
\endinput
% main.tex
\documentclass{article}
\usepackage{MyTemplate}
\begin{document}
before $\comb{n}{i}$ after
\end{document}
我对问题进行了完善, 大佬能否看下
@U160373 已回复😀
问题已解决, 感谢!