2
\documentclass[xcolor=dvipsnames,professionalfont,french]{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{fourier,tikz,ifthen}
\usetikzlibrary{calc} 
\usepackage[french]{babel}

\usetheme{Madrid}               % thème
\setbeamertemplate{footline}{}

\setbeamercolor{palette primary}{fg=white, bg=MidnightBlue!90}
\setbeamercolor{background canvas}{bg=MidnightBlue!15}

\setbeamersize{text margin left=1 mm}
\setbeamersize{text margin right=1 mm}

\beamertemplatenavigationsymbolsempty

\makeatletter
\def\c@slideinframe{\beamer@slideinframe}
\def\beamerslideinframe{\beamer@slideinframe}
\makeatother

\newcommand{\MyLabel}[1]{%
\expandafter\newcommand\csname Step#1\endcsname{\arabic{slideinframe}}
}


\begin{document}
\begin{frame}[label=bob]{Title}
\begin{enumerate}[<+->]
\item \only<.>{\MyLabel{a}}\arabic{slideinframe}

    \Stepa

\item \begin{itemize}[<+->]
    \item
    \item 
    \end{itemize}

\end{enumerate}
\end{frame}
\end{document}
Tarass
  • 16,912
  • I didn't get what this should do but is it what you want if you change \newcommand to \edef ? – percusse Jul 04 '15 at 08:58
  • My point is to store some slide numbers in \Stepx to use them in further overlay specifications. See http://tex.stackexchange.com/questions/253502/beamer-how-to-show-together-separated-things-using-overlay?noredirect=1#comment605707_253502. Apparently it continues to increment that I don't want. – Tarass Jul 04 '15 at 09:08

1 Answers1

6

You just make the definition inside a local group so it is undefined by the end of frame, you are also missing a %

\documentclass[xcolor=dvipsnames,professionalfont,french]{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{fourier,tikz,ifthen}
\usetikzlibrary{calc} 
\usepackage[french]{babel}

\usetheme{Madrid}               % thème
\setbeamertemplate{footline}{}

\setbeamercolor{palette primary}{fg=white, bg=MidnightBlue!90}
\setbeamercolor{background canvas}{bg=MidnightBlue!15}

\setbeamersize{text margin left=1 mm}
\setbeamersize{text margin right=1 mm}

\beamertemplatenavigationsymbolsempty

\makeatletter
\def\c@slideinframe{\beamer@slideinframe}
\def\beamerslideinframe{\beamer@slideinframe}
\makeatother

\newcommand{\MyLabel}[1]{%
\expandafter\gdef\csname Step#1\endcsname{\arabic{slideinframe}}%
}


\begin{document}
\begin{frame}[label=bob]{Title}
\begin{enumerate}[<+->]
\item \only<.>{\MyLabel{a}}\arabic{slideinframe}

    \Stepa

\item \begin{itemize}[<+->]
    \item
    \item 
    \end{itemize}

\end{enumerate}
\end{frame}
\end{document}
David Carlisle
  • 757,742