
Me senté esta noche para intentar definir una lista simple que se parece a esta:
1:23
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
commodo ligula eget dolor. Aenean massa. Cum sociis natoque
penatibus et magnis dis parturient montes, nascetur ridiculus
mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis,
sem.
Nulla consequat massa quis enim. Donec pede justo, fringilla vel,
aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut,
imperdiet a, venenatis vitae, justo.
Como puede ver, los requisitos son bastante simples. La etiqueta del artículo no debe tener ninguna sangría, sino que debe comenzar precisamente en el margen izquierdo. Debería ir seguido de un salto de línea. Después del salto de línea viene el cuerpo del artículo. Esto se sangrará (es decir, todo el párrafo) y todos los párrafos siguientes con la misma sangría. Sin embargo, no debe haber ningún párrafo que comience con sangría; todos los párrafos deben comenzar con una línea en blanco. En el ejemplo, la sangría es de dos espacios, pero creo que un cuádruple funcionaría bien.
Como posibles complicaciones, mi documento en su conjunto sigue el estilo de párrafo anterior, con una línea en blanco entre los párrafos y sin sangría inicial. En segundo lugar, me gustaría formatear la etiqueta del artículo en texto de máquina de escribir.
Así que claramente pensé que necesito un list
entorno.
\documentclass[12pt]{article}
\pagestyle{plain}
\usepackage[margin=1.8cm]{geometry}
\geometry{a4paper}
\usepackage[parfill]{parskip}
\begin{document}
\begin{list}{}{}
\item[1:23]
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
commodo ligula eget dolor. Aenean massa. Cum sociis natoque
penatibus et magnis dis parturient montes, nascetur ridiculus
mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis,
sem.
Nulla consequat massa quis enim. Donec pede justo, fringilla vel,
aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut,
imperdiet a, venenatis vitae, justo.
\end{list}
\end{document}
Pero quedé totalmente confundido al intentar decidir qué poner como segundo argumento porque la sangría real de la etiqueta no parece estar definida en sí misma. En cambio \leftmargin
, está definido, con la etiqueta del elemento desviada en relación con él por otros parámetros relevantes que no pude descifrar cómo modificar.
Cualquier explicación adicional sería muy apreciada.
Respuesta1
Túhacerquiero una lista.
\documentclass[12pt]{article}
\pagestyle{plain}
\usepackage[margin=1.8cm]{geometry}
\geometry{a4paper,showframe} % showframe just for the example
\usepackage[parfill]{parskip}
\newenvironment{points}
{\begin{list}{}{\leftmargin=1em\labelwidth=\leftmargin\labelsep=0pt}%
\newcommand{\point}[1]{\item[##1]\mbox{}\\*\ignorespaces}}
{\end{list}}
\begin{document}
\begin{points}
\point{1:23}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
commodo ligula eget dolor. Aenean massa. Cum sociis natoque
penatibus et magnis dis parturient montes, nascetur ridiculus
mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis,
sem.
Nulla consequat massa quis enim. Donec pede justo, fringilla vel,
aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut,
imperdiet a, venenatis vitae, justo.
\point{22:333}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
commodo ligula eget dolor. Aenean massa. Cum sociis natoque
penatibus et magnis dis parturient montes, nascetur ridiculus
mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis,
sem.
\end{points}
\end{document}
Respuesta2
Esto parece estar bastante cerca de lo que desea:
\documentclass[12pt]{article}
\pagestyle{plain}
\usepackage[a4paper,margin=1.8cm]{geometry}
\usepackage{enumitem}
\usepackage{lipsum}
\usepackage{showframe}
\newlist{simple}{description}{1}
\setlist[simple]{leftmargin=4mm, % indentation of paragraphs
font=\texttt, % typewritter text for labels
style=nextline, % start new line for "wide" labels
labelindent=0pt, % the remaining settings make the
itemindent=-1.5mm,% width of the labels, with a small hack
% to drag the label back to the margin
listparindent=0pt,
labelwidth=0pt,
}
\begin{document}
\begin{simple}
\item[1:23]\lipsum[1-2]
\item[1:24]\lipsum[1-2]
\end{simple}
\end{document}
He usadomarco de exposiciónpara mostrar dónde están los márgenes. Tenga en cuenta el pequeño truco itemindent=-1.5mm
que, por alguna razón, es necesario para que la etiqueta vuelva al margen.
Respuesta3
Al final, dejé de usar un list
entorno y en su lugar definí un nuevo comando usando cuadros. Esto funciona para mí, pero parece un truco.
\newlength{\currentparskip}
\setlength{\currentparskip}{\parskip}
\newcommand{\point}[2]{\texttt{#1} \\
\makebox[1em]{}\begin{minipage}[t]{\dimexpr\textwidth-1em}%
\setlength{\parskip}{\currentparskip}%
#2%
\end{minipage}%
}
Descubrí que estaba usando una caja de 1 em de ancho antes de lo minipage
necesario, porque \hfill
no parecía hacer nada.
Sin embargo, parece hacer el trabajo:
\documentclass[12pt]{article}
\pagestyle{plain}
\usepackage[margin=1.8cm]{geometry}
\geometry{a4paper}
\usepackage[parfill]{parskip}
\usepackage{showframe}
\newlength{\currentparskip}
\setlength{\currentparskip}{\parskip}
\newcommand{\point}[2]{\texttt{#1} \\
\makebox[1em]{}\begin{minipage}[t]{\dimexpr\textwidth-1em}%
\setlength{\parskip}{\currentparskip}%
#2%
\end{minipage}%
}
\begin{document}
\point{1:23}{%
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
commodo ligula eget dolor. Aenean massa. Cum sociis natoque
penatibus et magnis dis parturient montes, nascetur ridiculus
mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis,
sem.
Nulla consequat massa quis enim. Donec pede justo, fringilla vel,
aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut,
imperdiet a, venenatis vitae, justo.
}
\point{1:24}{%
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
commodo ligula eget dolor. Aenean massa. Cum sociis natoque
penatibus et magnis dis parturient montes, nascetur ridiculus
mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis,
sem.
Nulla consequat massa quis enim. Donec pede justo, fringilla vel,
aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut,
imperdiet a, venenatis vitae, justo.
}
\end{document}
Eso sí, lo entiendo
Overfull \hbox (30.0pt too wide) in paragraph at lines 29--30
advertencias.