Hängende Einzüge / Textumbruch

Hängende Einzüge / Textumbruch

Ich versuche, einen Befehl zu implementieren, der anstelle der itemize/ enumerate-Umgebungen verwendet werden kann. Die Idee ist, dass ich einen Befehl ( \detail) haben möchte, mit dem eine detaillierte Liste erstellt werden kann, ohne in einer Umgebung enthalten zu sein. Das Problem, das ich habe, ist, dass ich anscheinend keine Kontrolle über die Einrückung des umbrochenen Textes habe, wenn eine Zeile länger als die Seitenbreite ist und daher in die nächste Zeile umbrochen wird. Ich habe das hangingPaket und ausprobiert \hangindent, aber nicht viel Glück gehabt.

Ich habe unten ein Minimalbeispiel und die Ausgabe eingefügt, die ich beim Kompilieren erhalte. Idealerweise möchte ich, dass der umbrochene Text so eingerückt wird, dass das erste Wort in der zweiten Zeile mit dem ersten Wort in der ersten Zeile übereinstimmt.

\documentclass{article}
\newcommand{\detail}[1]{-- {#1}}

\begin{document}
    \noindent\textbf{This is a header}\\
    \detail{This is a detail.}\\
    \detail{This is a detail that has too many words in it and consequently runs onto the next line of the page, and I want it to have a hanging indent.}
\end{document}

Bildbeschreibung hier eingeben

Antwort1

Eine Vereinfachung der bereits beantworteten Frage:

\documentclass{article}
\def\D{\par\noindent\makebox[1em][l]{-- }\hangindent1em}
\begin{document}
\subsubsection*{This is a header}
\D This is a detail
\D This is a detail that has too many words in it and consequently runs onto The next line of the page, and I want it to have a hanging indent.
\end{document}

MWE

Antwort2

\documentclass{article}
\newcommand{\detail}[1]{\par\noindent\hangindent=\mylen\hangafter1-- #1}
\newlength{\mylen}
\settowidth{\mylen}{-- }

\begin{document}
    \noindent\textbf{This is a header}
    \detail{This is a detail.}
    \detail{This is a detail that has too many words in it and consequently runs onto the next line of the page, and I want it to have a hanging indent.}
\end{document}

Bildbeschreibung hier eingeben

Antwort3

\documentclass{article}
\newcommand{\detail}[1]{\par\noindent\hangindent=\mylen\hangafter1--\,\,#1}
\newlength{\mylen}
\settowidth{\mylen}{--\,\,}

\begin{document}
    \noindent\textbf{This is a header}
    \detail{This is a detail.}
    \detail{This is a detail that has too many words in it and consequently runs onto the next line of the page, and I want it to have a hanging indent.}
\end{document}

Wollte dies als Kommentar zu Harish Kumars Antwort schreiben, aber ich habe nicht genug Ruf dafür. Da Leerzeichen Gummi sind, ist es sowieso besser, eine feste Länge zu verwenden. Da \ etwas eng erscheint, habe ich es zweimal verwendet, Sie können es nach Geschmack anpassen.

verwandte Informationen