我想全局禁用程序名称中的斜体样式。
我见过这个帖子这是关于一个类似的问题,建议使用\SetArgSty{upshape}
在 algorithm2e 的 if 条件中全局禁用斜体。我想做同样的事情,但针对程序名称。在algorithm2e 手册,我看到存在类似的\SetProgSty
命令,但它似乎不能解决我的问题:
\documentclass{article}
\usepackage[vlined,boxed,linesnumbered]{algorithm2e}
\SetProgSty{upshape}
\SetKwProg{Operation}{operation}{ is}{}
\begin{document}
\begin{algorithm}[ht]
\Operation{add\_one$(x)$}{\textsf{return} $x+1$}
\end{algorithm}
\end{document}
我得到的是:
我想要的是:
我尝试了所有其他\Set...Sty
命令,并且也尝试了relax
和textnormal
而不是upshape
,但似乎没有任何效果。
请问该怎么做?
答案1
\documentclass{article}
\usepackage[vlined,boxed,linesnumbered]{algorithm2e}
\SetProgSty{upshape}
\SetKwProg{Operation}{operation}{ is}{}
\renewcommand{\ProgSty}[1]{\textnormal{#1}\unskip} % removed \emph{}
\begin{document}
\begin{algorithm}[ht]
\Operation{add\_one$(x)$}{\textsf{return} $x+1$}
\end{algorithm}
\end{document}