[Tex/LaTex] Leading (vertical space) before and after block quotes

csquotesgrid-typesettingquotingspacing

I'm trying to re-define the quote environment (triggered by csquote's \blockquote) to remove the entire (!) additional leading before and after the quote, to make sure the quotes stays in sync with the baseline grid (I'm also re-introducing quotation marks, to compensate for the loss of distinction caused by removing the white space, but that's no part of the problem).

I do know how to modify the quote environment, and I've managed to reduce the white space, but what I'm looking for is a way to completely remove it. This solution, for example, inspired by Herbert's reply to a similar question, still yields a distance of 13.8pt (a surplus of 1.8pt) between the text's last and the quote's first baseline, even though \raggedbottom is on. Any hints are appreciated!

\documentclass{article}
\usepackage{csquotes,lipsum,lmodern}

\makeatletter
\renewenvironment{quote}
               {\list{}{\listparindent=0em
                        \itemindent=\listparindent
                        \leftmargin=\parindent
                        \rightmargin=\parindent
                        \topsep=0em
                        \parsep\z@\@plus\p@}%
                \item\relax}
               {\endlist}
\makeatother

\renewcommand{\mkblockquote}[4]{\enquote{#1}#2#3#4}
\raggedbottom

\begin{document}
\lipsum[2-3]
\blockquote{\lipsum*[2]}
\lipsum[3-4]
\blockquote{\lipsum*[3]}
\lipsum[4-5]
\blockquote{\lipsum*[4]}
\lipsum
\blockquote{\lipsum*[5]}
\end{document}

Best Answer

\raggedbottom is the default for article. Your various \lipsum commands (the non-starred versions) do end paragraphs, though, and a list environment starting a new paragraph will also add \partopsep before and after it. Therefore, add the following to your redefinition of the quote environment:

\partopsep=0em

As an alternative, you could use my quoting package:

\documentclass{article}

\usepackage{csquotes}

\usepackage[vskip=0pt,begintext=\textooquote,endtext=\textcoquote]{quoting}

\SetBlockEnvironment{quoting}

\newcommand*{\sometext}{%
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus elit,
    vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur
    dictum gravida mauris. Nam arcu libero, nonummy eget, consectetuer
    id, vulputate a, magna. Donec vehicula augue eu neque.}

\begin{document}

\sometext
% <-- No indentation at the start of `quoting`
\blockquote{\sometext}
% <-- No indentation after `quoting`
\sometext

\end{document}

enter image description here