列表就是將所要表達的內容分為若干個條目並按一定的順序排列,達到簡明、直觀的效果。在論文的寫作中會經常使用到列表。LaTeX 中常見的列表環境有 enumerate、itemize 和 description。這三種列表環境的主要區別是列表項標簽的不同:
1. enumerate 是有序的列表。例如:
1 \begin{enumerate} 2 \item This is the first item 3 \item This is the second item 4 \item This is the third item 5 \end{enumerate}
生成效果如下:

2. itemize 以圓點作為標簽。例如:
1 \begin{itemize} 2 \item This is the first item 3 \item This is the second item 4 \item This is the third item 5 \end{itemize}
生成效果如下:

3. description 是解說列表,可以指定標簽。例如:
1 %\usepackage{pifont} 2 \begin{description} 3 \item[\ding{47}] This is the first item 4 \item[\ding{47}] This is the second item 5 \item[\ding{47}] This is the third item 6 \end{description}
生成效果如下:

列表環境也可以互相嵌套,默認情況下不同層級的標簽不同,以體現分級層次。
上述三種列表都是基於 list 列表環境定制的,也就是說 list 環境是功能最強大的列表環境,只是由於它使用起來比較麻煩,所以很少被使用。其實上述的三種列表在通過一定的擴展后可以產生許多樣式的列表,這些基本就可以滿足平時的需要了。下面說一下怎么進行功能擴展。enumitem 宏包可以對 enumerate、itemize 和 description 環境進行功能擴展,並且提供了簡便的語法。enumitem 宏包允許用戶在上述三種列表中通過 key=value 的鍵值方式進行設置。可選的設置項包括:
• 垂直距離
– topsep
– partopsep
– parsep
– itemsep
• 水平距離
– leftmargin
– rightmargin
– listparindent
– labelwidth
– labelsep
– itemindent
這些距離的含義可以從圖示中清楚的反映出來,更詳細的說明可以參看 enumitem 宏包的說明文檔。

下面是我在論文中對 enumerate 環境做的設置:
1 \usepackage{enumerate} 2 \usepackage{enumitem} 3 \setlist[enumerate,1]{label=(\arabic*).,font=\textup, 4 leftmargin=7mm,labelsep=1.5mm,topsep=0mm,itemsep=-0.8mm} 5 \setlist[enumerate,2]{label=(\alph*).,font=\textup, 6 leftmargin=7mm,labelsep=1.5mm,topsep=-0.8mm,itemsep=-0.8mm}
\setlist[enumerate,1] 表示對一級列表進行設置,\setlist[enumerate,1] 表示對二級列表進行設置。這樣一級列表的標簽就是括號加阿拉伯數字加點,二級標簽是括號加小寫英文字母加點。話不多說,看一下效果。
1 \begin{enumerate} 2 \item 春花秋月何時了, 往事知多少? 小樓昨夜又東風, 故國不堪回首月明中。
3 雕欄玉砌應猶在, 只是朱顏改。問君能有幾多愁?恰似一江春水向東流。 4 \item 春花秋月何時了, 往事知多少? 小樓昨夜又東風, 故國不堪回首月明中。 5 \begin{enumerate} 6 \item 雕欄玉砌應猶在, 只是朱顏改。問君能有幾多愁? 恰似一江春水向東流。 7 \item 春花秋月何時了, 往事知多少? 小樓昨夜又東風, 故國不堪回首月明中。 8 \end{enumerate} 9 \item 雕欄玉砌應猶在, 只是朱顏改。問君能有幾多愁?恰似一江春水向東流。 10 \end{enumerate}
編譯后的效果如下:

