我有一个包含许多环境的文档\description
。它们全部定义如下:
\begin{description}[leftmargin=2.5cm,style=sameline]
\item[\texttt{foo}] bar
\item[\hspace{7mm}\texttt{sub}] inner
\end{description}
我怎样才能使用\renewcommand
(或类似的东西)而不总是必须写,并且还具有自动存在[leftmargin=2.5cm,style=sameline]
的参数并且可以选择在前面加上一些空格?\item
\texttt
\hspace{7mm}
我们也非常感谢其他解决方案。
答案1
您可以使用newlist
使用这enumitem
定义您的自定义样式。
代码:
\documentclass{article}
\usepackage{enumitem}
\newlist{MyDescription}{description}{1}
\setlist[MyDescription]{leftmargin=2.5cm,style=sameline, font=\texttt}
\newcommand*{\IndentedItem}[1][]{\item[\hspace{7mm}#1]}%
\begin{document}\noindent
Manually specified:
\begin{description}[leftmargin=2.5cm,style=sameline]
\item[\texttt{foo}] bar
\item[\hspace{7mm}\texttt{sub}] inner
\end{description}
\noindent
Using \verb|MyDescription|:
\begin{MyDescription}
\item[foo] bar
\IndentedItem[sub] inner
\end{MyDescription}
\end{document}
答案2
您可以定义一个新的环境:
\newenvironment{mydescription}{\begin{description}[leftmargin=2.5cm,style=sameline]}
{\end{description}