Description-like environment with fixed labels width
You can use the enumitem
package to customize the description
environment, e.g.
\documentclass{article}
\usepackage{enumitem}
\begin{document}
\begin{description}[leftmargin=8em,style=nextline]
\item[Something] Text. More text.More text.More text. More text. More text. More text. More text. More text. More text. More text. More text. More text.
\item[Ought else] More text.
\end{description}
\end{document}
You can set this for all description
environments (probably not desirable) with
\setlist[description]{leftmargin=8em,style=nextline}
or you can define your own list environment e.g.
\newlist{NewDesc}{description}{2}
\setlist[NewDesc]{leftmargin=8em,style=nextline}
and use as
\begin{NewDesc}
\item[Something] Text. More text.More text.More text. More text. More text. More text. More text. More text. More text. More text. More text. More text.
\item[Ought else] More text.
\end{NewDesc}
The KOMA-Script
classes and the scrextend
package (part of KOMA-Script
) provide the labeling
list environment. It takes the length of the longest label as mandatory argument.
\documentclass{article}
\usepackage{scrextend}
\addtokomafont{labelinglabel}{\sffamily\bfseries}
\begin{document}
\begin{labeling}{Longer label\quad}
\item[Label] Some text.
\item[Longer label] Some text.
\end{labeling}
\end{document}
Another way, far less elegant to what enumitem
is to use a tabular
-related structure.
\documentclass{article}
\usepackage{array}% http://ctan.org/pkg/array
\usepackage{tabularx}% http://ctan.org/pkg/tabularx
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\begin{document}
\newcolumntype{L}{@{}>{\bfseries}p{8em}<{:}}% Item label
\newcolumntype{I}{X@{}}% Item contents
\noindent\begin{tabularx}{\textwidth}{LI}
Label & \lipsum[1] \\
Longer label & \lipsum[2]
\end{tabularx}
\end{document}
In the above example, tabularx
was used to have a table with flexible columns to the maximum text block width (\textwidth
). Additionally, the array
package provides a means to insert code before/after column entries. This way it is possible to format the first column entries #1
as \bfseries#1:
(automatically prepending a bold format and appending a colon :
). Finally, the outer column spacing was removed using a @{}
column specifier.
The drawbacks are:
- The
tabular
does not flow across page breaks; and - It's interface is not as easy as list with special sequences required to distinguish item labels and contents (
&
) and "new items" (\\
).
lipsum
merely provided some dummy text.