语法环境和有色关键词

语法环境和有色关键词

我确实定义了一个新命令:

\newcommand{\keyword}[1]{\textbf{\textcolor{red}{#1}}}

并尝试过

\begin{grammar}
   stepsScript ::= \keyword{steps} \synt{steps} \keyword{steps}
\end{grammar}

我收到消息:

@declaredcolor 的参数有一个额外的 }

我的\keyword命令在 之外运行良好grammar。正如预期的那样,省略环境内的\textcolor命令会导致粗体显示。但是,我必须做什么才能获得粗体红色关键字?\keywordgrammar

答案1

该类beamer重新定义了颜色命令\textcolor\color。这会导致软件包出现问题。作为一种解决方法,您可以在新命令中直接syntax使用原始定义。由于包含符号,因此您需要用和将定义括起来。\@declaredcolor\@declaredcolor@\makeatletter\makeatother

梅威瑟:

\documentclass{beamer}
\usepackage{syntax}
\makeatletter
\newcommand{\keyword}[1]{\textbf{\@declaredcolor{red}#1}}
\makeatother
\begin{document}
\begin{frame}{Syntax with color in beamer}
\begin{grammar}
<stepsScript> ::= \keyword{steps} \synt{steps} \keyword{steps}
\end{grammar}
\end{frame}
\end{document}

结果:

在此处输入图片描述

相关内容