1 \newcommand{\textntt}[1]{\begin{no@hyphens}\texttt{#1}\end{no@hyphens}} 2 \let\nhtttfamily=\ttfamily 3 \newenvironment{no@hyphens}{\@style{hyphens:none}}{} 4 \newcommand{\nohyphens}[1]{\no@hyphens #1} 5 % 6 \newcommand{\shyp}{\ifmmode\relax\else\soft@hyphen\fi} 7 \def\_{\char95\shyp} 8 % 9 \newcommand{\breakable@backslash}{\textbackslash\soft@hyphen} 10 \newcommand{\breakable@colon}{:\soft@hyphen} 11 \newcommand{\breakable@dot}{.\soft@hyphen} 12 \newcommand{\breakable@slash}{/\soft@hyphen} 13 % 14 \newcommand{\bshyp}{\ifmmode\backslash\else\breakable@backslash\fi} 15 \newcommand{\fshyp}{\ifmmode/\else\breakable@slash\fi} 16 \newcommand{\dothyp}{\ifmmode.\else\breakable@dot\fi} 17 \newcommand{\colonhyp}{\ifmmode:\else\breakable@colon\fi} 18 \newcommand{\BreakableHyphen}{\breakable@hyphen} 19 \newcommand{\hyp}{\ifmmode-\else\BreakableHyphen\fi}