Unterstreichen Sie den gesamten Text in der benutzerdefinierten Umgebung (oder formatieren Sie ihn anderweitig).

Unterstreichen Sie den gesamten Text in der benutzerdefinierten Umgebung (oder formatieren Sie ihn anderweitig).

Ich versuche, eine benutzerdefinierte Umgebung zu definieren, in der der gesamte Text unterstrichen ist. Ich weiß, dass der underlineBefehl seine Eingabe unterstreicht, aber ich kann nicht herausfinden, wie ich ihn nahtlos mit meiner Umgebung zum Laufen bringe:

\documentclass{article}
\newenvironment{myenvironment}{\underline}{}
\begin{document}
Not underlined
\begin{myenvironment}
Only first character is underlined
\end{myenvironment}
\underline{Underlined correctly}
\end{document}

Wie kann ich underline(oder andere Befehle) auf den gesamten Text innerhalb der Umgebung anwenden?

Falls das wichtig ist, verwende ich xelatex 2015.

Antwort1

Sie suchen nach soulutf8und environ. Aber denken Sie bitte noch einmal über das Unterstreichen nach.

\documentclass{article}
\usepackage{fontspec}
\usepackage{soulutf8,environ}

\NewEnviron{myenvironment}{\expandafter\ul\expandafter{\BODY}}

\begin{document}

Not underlined
\begin{myenvironment}
All words are underlined
All words are underlined
All words are underlined
All words are underlined
All words are underlined
\end{myenvironment}

\ul{Underlined correctly}

\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen