如何从按字母顺序排序的列表中删除项目符号

如何从按字母顺序排序的列表中删除项目符号

考虑一下代码

\documentclass{book}
\usepackage{datatool}
\usepackage{enumitem}

\newcommand{\sortitem}[2][\relax]{%
  \DTLnewrow{list}% Create a new entry
  \ifx#1\relax
    \DTLnewdbentry{list}{sortlabel}{#2}% Add entry sortlabel (no optional argument)
  \else
    \DTLnewdbentry{list}{sortlabel}{#1}% Add entry sortlabel (optional argument)
  \fi%
  \DTLnewdbentry{list}{description}{#2}% Add entry description
}
\newenvironment{sortedlist}{%
  \DTLifdbexists{list}{\DTLcleardb{list}}{\DTLnewdb{list}}% Create new/discard old list
}{%
  \DTLsort{sortlabel}{list}% Sort list
  \begin{itemize}%
    \DTLforeach*{list}{\theDesc=description}{%
      \item \theDesc}% Print each item
  \end{itemize}%
}

\setlist[itemize]{leftmargin=*} % Global noindent

\begin{document}
\thispagestyle{empty}

\begin{sortedlist} %[label={}]
  \sortitem[ZGROUP]{\textbf{ZGROUP}}
  \sortitem[DGROUP]{\textbf{DGROUP}}
  \sortitem[BGROUP]{\textbf{BGROUP}}
  \sortitem[CGROUP]{\textbf{CGROUP}}
  \sortitem[AGROUP]{\textbf{AGROUP}}
\end{sortedlist}
\end{document}

生成排序列表:

在此处输入图片描述

问题:如何从此排序列表中删除默认项目符号?此外,如果有更简单的方法来生成此列表,请提供建议。

评论:我尝试使用[label={}],它适用于itemize,但对于自定义的则无效sortedlist。不过,命令 `\setlist[itemize]{leftmargin=*} 确实可以防止项目缩进。

谢谢。

答案1

由于您的sortedlist环境不是自定义列表,而只是包含一个 itemize环境,因此您需要[label={}]在定义中添加sortedlist。由于您可能不想要全局定义,因此itemize我已注释掉该行,并leftmargin=*在定义中添加了。

\documentclass{book}
\usepackage{datatool}
\usepackage{enumitem}

\newcommand{\sortitem}[2][\relax]{%
  \DTLnewrow{list}% Create a new entry
  \ifx#1\relax
    \DTLnewdbentry{list}{sortlabel}{#2}% Add entry sortlabel (no optional argument)
  \else
    \DTLnewdbentry{list}{sortlabel}{#1}% Add entry sortlabel (optional argument)
  \fi%
  \DTLnewdbentry{list}{description}{#2}% Add entry description
}
\newenvironment{sortedlist}{%
  \DTLifdbexists{list}{\DTLcleardb{list}}{\DTLnewdb{list}}% Create new/discard old list
}{%
  \DTLsort{sortlabel}{list}% Sort list
  \begin{itemize}[label={},leftmargin=*]
    \DTLforeach*{list}{\theDesc=description}{%
      \item \theDesc}% Print each item
  \end{itemize}%
}

%\setlist[itemize]{leftmargin=*} % Global noindent

\begin{document}
\thispagestyle{empty}

\begin{sortedlist}
  \sortitem[ZGROUP]{\textbf{ZGROUP}}
  \sortitem[DGROUP]{\textbf{DGROUP}}
  \sortitem[BGROUP]{\textbf{BGROUP}}
  \sortitem[CGROUP]{\textbf{CGROUP}}
  \sortitem[AGROUP]{\textbf{AGROUP}}
\end{sortedlist}
\end{document}

代码输出

相关内容