2

is it possible to "hook" an environment inside the beamer frame? I am thinking something like

\newenvironment{iframe}{\begin{frame}[*]{*} \begin{itemize}}{\end{itemize} \end{frame}}

the problem are the two stars---options and frame title propagation. I want to use this sometimes as

\begin{iframe}[shrink=10}{mytitle}
  \item my point
\end{iframe}

I need a sort of hook into beginframe and endframe.

regards, /iaw


Edit: The page 62 example gives LaTeX Error: Something's wrong--perhaps a missing \item:

\documentclass{beamer}
\usepackage[english]{babel}  %% necessary for beamer
 \newenvironment{itemizeframe}{\begin{frame}\startitemizeframe}{\stopitemizeframe\end{frame}}
\newcommand\startitemizeframe{\begin{bfseries}\begin{itemize}}
\newcommand\stopitemizeframe{\end{itemize}\end{bfseries}}

\begin{document}

\begin{itemizeframe}{Test 1}
  \item Hello 1
\end{itemizeframe}

\begin{itemizeframe}[shrink=10]{Test 2}
  \item Hello 2
 \end{itemizeframe}

\end{document}

don't have enough points to comment, so I need to add this as a clarification of the question itself. yes, indeed, the key problem are the arguments. ideally, I would like itemizeframe to be transparent---same exact behavior as frame, with optional arguments and (optional) title argument. I need to pass my slides onto others, so keeping with the same syntax would be nice.

migrated from stackoverflow.com Dec 23 '13 at 20:41

This question came from our site for professional and enthusiast programmers.

  • Have you had a look at the manual? The end of Section 8.1 (The Frame Environment) on p62--63 seems to cover exactly this example. – Loop Space Dec 23 '13 at 21:36
  • Ah, the problem is the arguments. Will you always give the frametitle as you do in your test code, or do you want that handled as beamer does (in that it is actually optional)? – Loop Space Dec 23 '13 at 22:28
  • Incidentally, there appear to be two accounts associated with this question. Presumably, they should be merged. If so, you should flag for moderator attention. – Loop Space Dec 23 '13 at 22:30
  • @ivoWelch: It looks like you've got two separate accounts, which means you cannot edit your original post or leave comments. The StackExchange staff can merge them together for you. – Werner Dec 24 '13 at 1:49
  • Have you looked at how beamer defines the frame environment? Could you not just replicate and modify that? The trouble is partly that you want multiple optional arguments and partly that you want to have some of them specified with {}. The high level LaTeX commands aren't really designed for that kind of thing as far as I know... – cfr Dec 24 '13 at 4:33
3

I think the answer to this one is that there is no easy way to do this. beamer is not designed for this sort of extension.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.