
我將在接下來的幾週內重新排版一些舊書(來自 18 世紀末),其中一些已經足夠舊,以至於它們使用古老的印刷慣例進行引用:多行引用的每一行以左引號開頭。這與修飾的區塊引用略有不同(請參閱http://en.wikipedia.org/wiki/Quotation_mark#History),因為沒有邊距變化或其他指示符,除了每行都裝飾在左側。
我有一種揮之不去的感覺,我看到了一個實際上可以做到這一點的包,但搜尋字詞使它很難找到。有人對重現這種行為有什麼建議嗎?我實際上想將其作為項目的一部分。
這是我在 Google 圖書中找到的一個範例:http://books.google.com/books?id=nY8FAAAAQAAJ&dq=review&pg=PA190#v=onepage&q&f=false。
如您所看到的,引號的開頭由內聯指示‘
,但每個後續行的第一個字元集也是‘
直到引號結束為止。換句話說,引號出現在創建的每個換行符的開頭(實際上有一些後續空格),在報價打開之後,並且僅直到報價關閉。
答案1
\documentclass{article}
\usepackage{lineno,kantlipsum}
\newcommand{\leftquotes}{\def\makeLineNumber{%
\ifnum\value{linenumber}=1 \else\hskip\leftmargin\llap{``}\hss\fi}}
\newenvironment{quotedquotation}
{\quotation\linenumbers\leftquotes}
{\endquotation}
\begin{document}
\begin{quotedquotation}
``\kant*[1]\unskip''
\end{quotedquotation}
\end{document}
(\unskip
僅出於技術原因而存在。)
萊諾\hbox
在左邊距設定零寬度,並用於\makeLineNumber
決定在其中排版什麼。在quotation
環境中,左邊距是相同的,但行向右移動\leftmargin
,所以我們必須覆蓋這個空間。然後我們排版另一個零寬度框,內容在其左側(\llap{x}
與 相同,\makebox[0pt][r]{x}
但效率更高),然後我們發出\hss
命令告訴 TeX 這整個業務不會佔用任何空間(因此它可以保留在零寬度框中)不會裝得太滿)。
段落模式的“解決方案”
恐怕複製那種書需要大量的人工幹預。這是部分解決方案:
\documentclass{article}
\usepackage{lineno,kantlipsum}
\newenvironment{quotedlines}[1]{\leavevmode\rlap{`}\kern.5em#1{\parfillskip=0pt\par}%
\begingroup\leftskip=.5em
\def\makeLineNumber{\rlap{`}}\linenumbers\noindent\ignorespaces}
{\par\endgroup}
\begin{document}
\kant*[1]
\begin{quotedlines}{Here starts}
\kant*[2]
\end{quotedlines}
\kant[3]
\end{document}
在您的參數中quotedlines
放置行尾(開頭引號後面的內容)。