
今後数週間で、古い本(18世紀後半のもの)を再タイプセットする予定ですが、そのうちのいくつかは、引用に古風な印刷慣例を使用しているほど古いものです。複数行の引用の各行は、開いた引用符で始まります。これは、装飾されたブロック引用(http://en.wikipedia.org/wiki/Quotation_mark#歴史) は、各行の左側が装飾されている以外、余白の変更やその他のインジケーターがないため、
実際にこれを実行するパッケージを見たことがあるような気がしますが、検索用語ではなかなか見つかりません。この動作を再現するためのアドバイスをお持ちの方はいらっしゃいますか? 実際、プロジェクトの一部としてこれをキャプチャしたいと思っています。
以下は 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
行末(先頭の引用符の後に続くもの)を入力します。