Greetings to the distinguished gathering of TeXperts!
My problem is: if a macro is defined with a babel shorthand containing the quote mark (") as an active character, it does not expand when invoked.
MWE (TeXLive 2014 with the latest updates):
\documentclass[11pt]{article}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}
\newcommand{\myname}{А.",С.",Пушкин "--- самый"=самый известный русский поэт.}
\newcommand{\mynamea}{\shorthandon{"}А.",С.",Пушкин "--- самый"=самый известный русский поэт.}
\begin{document}
\myname \par
\expandafter\myname \par
\mynamea \par
\expandafter\mynamea \par
Benchmark: \par
А.",С.",Пушкин "--- самый"=самый известный русский поэт.
\end{document}
For your information, in [russian]{babel}, the following definitions are present:
\declare@shorthand{russian}{",}{\nobreak\hskip.2em\ignorespaces}
\declare@shorthand{russian}{"=}{\nobreak-\hskip\z@skip}
The "--- is a shorthand for Cyrillic text dash, \cdash---.

For some reasons, LaTeX did not expand any of these four (!) commands despite the fact he had been explicitly ordered to. What is the best practice for such occasions?
