비머의 애니메이션: 중첩 목록

비머의 애니메이션: 중첩 목록

[<+->]Beamer에는 각 항목을 별도로 표시하는 목록 옵션이 있습니다 . 그러나 중첩된 목록의 항목도 별도로 표시됩니다. 중첩된 각 목록을 전체적으로 표시하려면 어떻게 해야 합니까?

예:

\begin{itemize}[<+->]
\item A 
  \begin{itemize}
    \item A1
    \item A2
  \end{itemize}
\item B
  \begin{itemize}
    \item B1
    \item B2
  \end{itemize}
\end{itemize}

각 항목이 별도로 나타납니다(IOW, 6개의 슬라이드가 생성됨). 나는 모든 As가 동시에 나타나고 모든 B가 동시에 나타나기를 원합니다(IOW, PDF의 두 슬라이드).

추신. 차라리 명시적인 주석을 피하고 싶습니다 <i->.

답변1

나는 당신이 할 수 있다고 믿지 않습니다. 문서에서 (비머 사용자 가이드, v.3.33, 110페이지 섹션 12.1)에는 "⟨기본 오버레이 사양⟩하위 환경에 상속됩니다. 당연히 하위 환경에서는 로 설정하여 로컬로 재설정할 수 있습니다 <1->." 제가 틀렸을 수도 있고 주변에 해킹이 있을 수도 있지만 이것이 의도된 동작인 것 같습니다.

자신만의 환경을 정의하는 것이 좋습니다 innerItemize.

\newenvironment{innerItemize}{%
  \begin{itemize}[<1->]%
}{%
  \end{itemize}%
}

\begin{itemize}[<+->]
\item A 
  \begin{innerItemize}
    \item A1
    \item A2
  \end{innerItemize}
\item B
  \begin{innerItemize}
    \item B1
    \item B2
  \end{innerItemize}
\end{itemize}

원본 코드를 고집한다면 itemize환경을 해킹하여 외부 수준에 대해 기본 코드를 사용하고 innerItemize내부 수준에 해당하는 코드로 전환할 수 있습니다. 나는 그런 해킹을 원하지 않을 것이라고 생각하지만 이것이 당신이 갈 방법입니다:

\let\oldItemize\itemize
\let\endoldItemize\enditemize
\newcommand{\myItemize}[1][<1->]{\oldItemize[#1]}
\def\endmyItemize{\endoldItemize}
\let\itemize\myItemize
\let\enditemize\endmyItemize

관련 정보