Pfad mit abschließendem Backslash neu definieren

Pfad mit abschließendem Backslash neu definieren

Das folgende MWE funktioniert einwandfrei:

\documentclass{article}
\usepackage{url}
\renewcommand{\path}[1]{hidden for privacy}
\begin{document}
\path{C:\User\John Doe}
\end{document}

Mit einem abschließenden Backslash ( \path{C:\User\John Doe\}) wird es nicht kompiliert. Ich habe

Runaway argument?
{C:\User \John Doe\} \end {document} 
! File ended while scanning use of \path.

Wie kann ich neu definieren \path, dass es auch mit abschließenden Backslashes funktioniert?

Antwort1

Sie können xparseund seinen vTypargumentbezeichner verwenden. Wenn Ihre LaTeX-Installation 100% aktuell ist, xparseist bereits in Latex integriert

\RenewDocumentCommand\path{v}{hidden for privacy}

Vollständiges MWE:

\documentclass{article}
\usepackage{url}
%\renewcommand{\path}[1]{hidden for privacy}
\RenewDocumentCommand\path{v}{hidden for privacy}
\begin{document}
\path{C:\User\John Doe\}
\end{document}

Ähnlich wie bei xparseexplizit geladenen

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{xparse}
\usepackage{url}
%\renewcommand{\path}[1]{hidden for privacy}
\RenewDocumentCommand\path{v}{»Path hidden for privacy«}
\begin{document}
\path{C:\User\John Doe\}
\end{document}

verwandte Informationen