考虑以下最小示例:
\documentclass{article}
\setlength{\parindent}{0mm}
\usepackage{paralist}
\usepackage{tabto}
\begin{document}
\NumTabs{3}
\begin{inparaenum}
\item text
\tab\item text
\tab\item text
\tab\item text
\tab\item text
\tab\item text
\end{inparaenum}
\end{document}
其结果是:
它确实满足了我的要求,但我想知道是否有可能创建一个环境,这样tabbedEnum
我们就可以消除 的使用\tab
,特别是,第一种情况不需要制表符,但所有其他情况都需要。形式如下:
\begin{tabbedEnum}[3]
\item text
\item text
\item text
\item text
\item text
\item text
\end{tabbedEnum}
答案1
只需重新定义\item
即可完成您想要的操作,但在第一次使用后:
\documentclass{article}
\setlength{\parindent}{0mm}
\usepackage{paralist}
\usepackage{tabto}
\newenvironment{tabbedenum}[1]
{\NumTabs{#1}\inparaenum\let\latexitem\item
\def\item{\def\item{\tab\latexitem}\latexitem}}
{\endinparaenum}
\begin{document}
\begin{tabbedenum}{3}
\item text
\item text
\item text
\item text
\item text
\item text
\end{tabbedenum}
\bigskip
\NumTabs{3}
\begin{inparaenum}
\item text
\tab\item text
\tab\item text
\tab\item text
\tab\item text
\tab\item text
\end{inparaenum}
\end{document}
\item
由于我们在最后使用原始命令,因此您也可以在之后使用可选参数\item
。
答案2
好吧,你可以定义自己的环境,使用一些\inner@tab
在第一次使用时重新定义为调用\tab
并在发出之前重新定义\item
为调用的环境\inner@tab
真实的 \item
:
\documentclass{article}
\usepackage{paralist}
\usepackage{tabto}
\usepackage{etoolbox}
\makeatletter
\newenvironment{tabbedEnum}[1][3]{%
\ifblank{#1}{\NumTabs{3}}{\NumTabs{#1}}%
\inparaenum
\let\orig@item\item
\def\inner@tab{\let\inner@tab\tab}%
\renewcommand\item[1][]{%
\inner@tab\ifblank{##1}{\orig@item}{\orig@item[##1]}}%
\ignorespaces
}{%
\endinparaenum
}
\makeatother
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\noindent
\begin{tabbedEnum}
\item text
\item text
\item text
\item text
\item text
\item text
\end{tabbedEnum}
\lipsum[2]
\end{document}
或者你可以使用exsheets
'{tasks}
环境。不过,它看起来并不完全一样。无论如何,它在这里:
\documentclass{article}
\usepackage{exsheets}
% \NewTasks[options]{name}[separator](default number of columns)
% all arguments except {name} are optional
\NewTasks[label=tsk.]{tabbedEnum}[\item](3)
\usepackage{lipsum}% for dummy text
\begin{document}
\lipsum[1]
\begin{tabbedEnum}
\item text
\item text
\item text
\item text
\item text
\item text
\end{tabbedEnum}
\lipsum[2]
\end{document}