如何在 Beamer 文档的描述中的标签内使用数学?

如何在 Beamer 文档的描述中的标签内使用数学?

我正在描述正则表达式,并且我希望有如下项目:

\documentclass[10pt,hyperref={pdfpagelabels=false}]{beamer}
\usepackage[utf8x]{inputenc}
\usepackage{default}

\mode<presentation>
{
 \usetheme{Warsaw}
 \setbeamertemplate{background canvas}[vertical shading][bottom=white!10,top=blue!10]
 \setbeamercovered{transparent}
}

\usepackage[brazil]{babel}
\usepackage[T1]{fontenc}
\usepackage[scaled=.80]{helvet}
\usepackage{graphicx}
\setbeamertemplate{caption}[numbered]   

\begin{document}
\section{Search}
\subsection{Regular Exp}
 \begin{frame}[allowframebreaks]{\texttt{Regular Expressions} Operators}{Powerfull}
  \texttt{Regular Expressions} (\texttt{RE}) are good:
  \begin{description}
   \item[\textasciicircum]  Matches the beginning of the line
   \item[\textbackslash] Escape character
   \item[[]] Group characters
   \item[\textbackslash( \textbackslash)] Hell
   \item[$\textbackslash< \textbackslash> $] Hey.
%   \item[{$[:\mathtt{upper}:]$}] Same as $[A-Z]$.
  \end{description}
 \end{frame}
\end{document}

但有些方法似乎不起作用。我尝试过的一些变体(使用]外部数学)让我一半的项目具有正确的字体/颜色,最后一个字符]为黑色,就像它是普通文本一样。

请问,我该如何完成这个任务?

-- 编辑:添加了最小工作示例。

答案1

我得到了预期的结果

\begin{description}
\item[\textasciicircum]  Matches the beginning of the line
\item[\textbackslash] Escape character
\item[{[]}] Group characters
\item[\textbackslash( \textbackslash)] Hell
\item[$\textbackslash< \textbackslash> $] Hey.
\item[{$[:\mathtt{upper}:]$}] Same as $[A-Z]$.
\end{description}

但是,在第 5 项和第 6 项中数学模式不是必需的(甚至是错误的)。还请注意第四项中的括号。

以下是我输入描述列表的方法:

\begin{description}
\item[\texttt{\textasciicircum}]  Matches the beginning of the line
\item[\texttt{\textbackslash}] Escape character
\item[\texttt{[]}] Group characters
\item[\texttt{\textbackslash( \textbackslash)}] Hell
\item[\texttt{\textbackslash< \textbackslash>}] Hey.
\item[\texttt{[:upper:]}] Same as \texttt{[A-Z]}.
\end{description}

它将使用打字机类型作为正则表达式样本。

如果要用打字机类型排版框架中的所有描述标签,那么 Marco Daniel 的建议很好,但必须隐藏括号:

\setbeamerfont{description item}{family=\ttfamily} % this will hold until \end{frame}
\begin{description}
\item[\textasciicircum]  Matches the beginning of the line
\item[\textbackslash] Escape character
\item[{[]}] Group characters
\item[\textbackslash( \textbackslash)] Hell
\item[\textbackslash< \textbackslash>] Hey.
\item[{[:upper:]}] Same as \texttt{[A-Z]}.
\end{description}

答案2

更新答案

上面的评论显示@DrBeco 使用 TeX Live 2009。我猜它是由 unix 系统的默认存储库安装的。但是这个版本不是最新的。我真的建议安装 TeX Live 2011。这样你就可以使用更新管理器閱讀器获取几乎所有软件包的最新版本。如果您正在使用TeX Live 2011你的例子会很好用。

我想提供另一个提示。不要使用utf8x。可以在这里找到一些解释:

原始答案

为什么在数学模式下使用\textasciicircum或这样的命令\textbackslash?命令的第一部分表示文本而不是数学。

\documentclass{article}
\begin{document}
  \begin{description}
   \item[\textasciicircum] Matches the beginning of the line
   \item[\textbackslash] Escape character
   \item[{[]}] Group characters
   \item[\textbackslash( \textbackslash) ] Save to a buffer
   \item[{$[:\mathtt{upper}:]$}] Same as $[A-Z]$.
  \end{description}
\end{document}

与以下结果相同beamer

\documentclass[10pt,hyperref={pdfpagelabels=false}]{beamer}
\begin{document}
\begin{frame}
\setbeamerfont{description item}{family=\ttfamily}
  \begin{description}
   \item[\textasciicircum]  Matches the beginning of the line
   \item[\textbackslash] Escape character
   \item[{[]}] Group characters
   \item[\textbackslash( \textbackslash) ] Save to a buffer
   \item[{$[:\mathtt{upper}:]$}] Same as $[A-Z]$.
  \end{description}
\end{frame}
\end{document}

在此处输入图片描述

相关内容