\makeatletter \begingroup \catcode`\_=\active \protected\gdef_{\@ifnextchar|\subtextup\sb} \endgroup \def\subtextup|#1|{\sb{\textup{#1}}} \AtBeginDocument{\catcode`\_=12 \mathcode`\_=32768 } \makeatother