
나는 오늘 밤 다음과 같은 간단한 목록을 정의하려고 자리에 앉았습니다.
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.
따라서 요구 사항이 매우 간단하다는 것을 알 수 있습니다. 항목 라벨은 전혀 들여쓰기되어서는 안 되며 정확하게 왼쪽 여백에서 시작되어야 합니다. 그 뒤에는 줄 바꿈이 와야 합니다. 줄 바꿈 뒤에는 항목 본문이 옵니다. 이는 전체 단락과 다음 모든 단락을 같은 양만큼 들여쓰기해야 합니다. 그러나 들여쓰기로 시작하는 단락이 있어서는 안 되며, 모든 단락은 빈 줄에서 시작되어야 합니다. 예제에서는 들여쓰기가 공백 두 개이지만 쿼드가 좋을 것 같습니다.
문제가 발생할 수 있으므로 내 문서는 전체적으로 위의 단락 스타일을 따르며 단락 사이에 빈 줄이 있고 초기 들여쓰기가 없습니다. 둘째, 항목 라벨의 형식을 타자기 텍스트로 지정하고 싶습니다.
그래서 분명히 list
환경이 필요하다고 생각했습니다.
\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}
그러나 레이블의 실제 들여쓰기가 자체적으로 정의되지 않은 것 같기 때문에 두 번째 인수로 무엇을 입력할지 고민하는 데 완전히 당황했습니다. 대신에 \leftmargin
항목 라벨이 내가 조정하는 방법을 해독할 수 없는 다른 관련 매개변수에 따라 분류되어 정의됩니다.
추가 설명을 주시면 감사하겠습니다.
답변1
너하다목록을 원해요.
\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}
답변2
이것은 당신이 원하는 것에 상당히 가까운 것 같습니다 :
\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}
나는 사용했다쇼프레임여백이 어디에 있는지 표시합니다. itemindent=-1.5mm
어떤 이유로 라벨을 여백으로 다시 가져오는 데 필요한 작은 해킹을 사용하는 것에 유의하세요 .
답변3
결국 list
환경 사용을 포기하고 대신 상자를 사용하여 새 명령을 정의했습니다. 이것은 나에게 효과적이지만 해킹 된 느낌입니다.
\newlength{\currentparskip}
\setlength{\currentparskip}{\parskip}
\newcommand{\point}[2]{\texttt{#1} \\
\makebox[1em]{}\begin{minipage}[t]{\dimexpr\textwidth-1em}%
\setlength{\parskip}{\currentparskip}%
#2%
\end{minipage}%
}
아무것도 하지 않는 것 같아서 minipage
필요하기 전에 1em 너비의 상자를 사용하는 것을 발견했습니다 .\hfill
그래도 작업을 수행하는 것 같습니다.
\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}
알아두세요.
Overfull \hbox (30.0pt too wide) in paragraph at lines 29--30
경고.