
假設我想重新定義quotation
環境,將文字設為斜體並將其插入引號之間。我在調整引號開啟之後和結束之前的空格時遇到一些問題。
透過這段程式碼我得到:
\documentclass{article}
\newenvironment{itquote}
{\begin{quotation}\itshape``}
{''\end{quotation}}
\begin{document}
\begin{itquote}
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.
\end{itquote}
\end{document}
為了修復間距,我顯然必須%
以這種方式放置兩個:
\begin{itquote}%
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.%
\end{itquote}
但我想在序言中的環境定義中修復它,而沒有%
文檔中的兩個符號,我該怎麼做?
我也嘗試過,\unskip
但它只適用於最後:
\newenvironment{itquote}
{\begin{quotation}\itshape``}
{\unskip''\end{quotation}}
答案1
在\begin
您可以使用的部分\ignorespaces
(參見艾格格的評論),在該\end
部分中,可以透過以下方式撤銷先前的空格\unskip
:
\documentclass{article}
\newenvironment{itquote}
{\begin{quotation}\itshape``\ignorespaces}
{\unskip''\end{quotation}}
\begin{document}
\begin{itquote}
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.
\end{itquote}
\end{document}
評論:
\unskip
刪除最後一個跳過空間,也可以是垂直跳過空間。這可以透過 來防止\ifhmode\unskip\fi
。這裡不需要它,因為如果環境內容以垂直空間結束,則會出現更大的問題。無論如何,引號都會不合適。