是否可以使用 LyX 而不必每次都使用 ERT 来抑制标准文本中的缩进后(短)块引用?(类似问题) 当 quote 环境使用间距环境时,LyX 会添加一个空白行,从而开始一个新段落。我重新定义了环境,如下所示:
\let\oldquote\quote
\let\oldendquote\endquote
\renewenvironment{quote}
{\vspace{\dimexpr-12pt-\topsep+\baselineskip\relax}\begin{spacing}{1.2}\oldquote}
{\oldendquote\end{spacing}\vspace{\dimexpr-12pt-\topsep+\baselineskip\relax}}
当我在序言中使用以下内容时,引用后的缩进变得更小,但仍然有一个:
\let\oldquote\quote
\let\oldendquote\endquote
\renewenvironment{quote}
{\begin{spacing}{1.2}\oldquote}
{\oldendquote\end{spacing}\noindent}
是否可以在序言中进行调整以删除每个引用后的缩进?
答案1
您可以使用该noindentafter
包。\NoIndentAfterEnv{quote}
应该导致所请求的行为。
答案2
默认情况下,LyX 不会\par
在引文后缩进任何额外的黑线(即),也不会缩进以下文本。如果您强制这样做,请在环境中引用spacing
。
因此你至少有三个选择:
1) 保持简单。删除序言中的所有代码。
2)将spacing
嵌套放在里面quote
,而不是放在相反的位置。
3) 不要使用spacing
环境。如果您想要具有不同行间空间的引号,但后面没有太多的垂直间距,也许只需更改\baselineskip
,如下所示:
\documentclass{book}
\let\oldquote\quote
\let\oldendquote\endquote
\renewenvironment{quote}{%
\oldquote\baselineskip14pt%
}{%
\oldendquote}
\begin{document}
Bah bah bah bah bah bah bah bah bah
bah bah bah bah bah bah bah bah bah
bah bah bah bah bah bah bah bah bah:
\begin{quote}
Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo.
Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo. Foo foo foo.
\end{quote}
Bah bah bah bah bah bah bah bah bah
bah bah bah bah bah bah bah bah bah
bah bah bah bah bah bah bah bah bah:
\end{document}