使用类似 \item 语法和新环境的 easylist 小型包装器

使用类似 \item 语法和新环境的 easylist 小型包装器

我正在尝试创建一个使用该包的新环境easylist,以便一些不习惯的用户LaTeX可以轻松使用它。目前,环境及其自定义命令定义如下:

\usepackage[at]{easylist}
\ListProperties(Style*=,Numbers=a,FinalMark={.})

\newenvironment{objectives}
{ 
    \newcommand{\spobj}{@}
    \newcommand{\goal}{@@}
    \newcommand{\ind}{@@@}
    \begin{easylist}
}
{
    \end{easylist}
}

这有效:

\begin{objectives}
@ Objective 1
@@ Goal 1
@@@ Indicator 1
@@@ Indicator 2
@@@ Indicator 3
@@ Goal 2
@@@ Indicator 1
@@@ Indicator 2
\end{objectives}

结果如下:

enter image description here

我想使用特定的命令来添加所需的数量,@如下所示:

\begin{objectives}
    \spobj Objective 1
    \goal Goal 1
    \ind Indicator 1
    \ind Indicator 2
    \ind Indicator 3
    \goal Goal 2
    \ind Indicator 1
    \ind Indicator 2
\end{objectives}

结果如下:

enter image description here

我不知道实现此目的的正确方法。也许问题出在 LaTeX 翻译命令的过程中,或者命令不知道它在环境中easylist

有人能告诉我如何正确地做到这一点吗?也许能给我指明正确的方向。

谢谢

答案1

您必须@使用 创建一个活动角色,\Activate然后稍后使用 关闭此功能\Deactivate。这可以通过使用或\spobj之外的命令来完成。objectives\Activate\newenvironment{objectives}...\end{objectives}\Deactivate

此外,@等字符后面必须跟一个空格字符(如文档中所述)才能显示数字/标签(这很可能是枚举所需要的)

在我看来,easylist这是一个奇怪的包,它虽然功能不错,但却很难理解。

\documentclass{article}

\usepackage[at]{easylist}
\ListProperties(Style*=,Numbers=a,FinalMark={.})

\Activate
\newcommand{\spobj}{@ } % Explicit space after @ needed!!!!!
\newcommand{\goal}{@@ }
\newcommand{\ind}{@@@ }
\Deactivate

\newenvironment{objectives}
{%
  \begin{easylist}
  }
  {
  \end{easylist}
}



\begin{document}

\begin{objectives}
    \spobj Objective 1 

    \goal Goal 1

    \ind Indicator 1

    \ind Indicator 2

    \ind Indicator 3

    \goal Goal 2

    \ind Indicator 1

    \ind Indicator 2
\end{objectives}

\end{document}

enter image description here

相关内容