Disable babel's shorthands
Babel 3.9 now provides a package option to deactive shorthands at once:
\usepackage[shorthands=off,ngerman]{babel}
Their functionality are still available with \babelshorthand
.
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\let\LanguageShortHands\languageshorthands
\def\languageshorthands#1{}
\begin{document}
"`foo"'
\LanguageShortHands{ngerman}
"`foo"'
\end{document}
There is a beta package babeltools
, to be loaded before babel
, that plans to allow this, with the addition of selectively enabling some shorthands.