Alterar o comportamento de um comando personalizado

Alterar o comportamento de um comando personalizado

Eu tenho um comando personalizado para discriminar:

\newcommand{\CVItem}[1]{
    \item\small{#1\vspace{-2pt}}
}

Como posso personalizar este comando para alterar o tipo de rótulo/marcador, digamos asterisco/traço em diferentes casos. É possível passar o tipo de rótulo como argumento?

E se eu tiver um determinado tipo de rótulo no comando itemize circundante, que é novamente personalizado como o mostrado abaixo, posso alterar o tipo de marcador/rótulo.

\newcommand{\CVItemListStart}{\begin{itemize}[label=$\bullet$]}
    \newcommand{\CVItemListEnd}{\end{itemize}\vspace{2pt}}

Responder1

Você pode fazer sua construção semelhante a uma lista \CVItemListStart... \CVItemListEndagir comoenumitem's label-ambiente controlado da seguinte maneira:

insira a descrição da imagem aqui

\documentclass{article}

\usepackage{enumitem}

\newcommand{\CVItem}[2][\defaultbullet]{%
  \item[#1] {\small #2\par}
}

\newcommand{\defaultbullet}{\textbullet}
\newcommand{\CVItemListStart}[1][\textbullet]{%
  \begingroup
  \renewcommand{\defaultbullet}{#1}%
  \begin{itemize}[label=#1]}
\newcommand{\CVItemListEnd}{%
  \end{itemize}
  \endgroup
}

\begin{document}

First list:
\CVItemListStart
  \CVItem{First}
  \CVItem[$\ast$]{Second}
  \CVItem{Third}
  \CVItem[--]{Final}
\CVItemListEnd

Second list:
\CVItemListStart[$\ast$]
  \CVItem{First}
  \CVItem{Second}
  \CVItem{Third}
  \CVItem{Final}
\CVItemListEnd

Third list:
\CVItemListStart
  \CVItem{First}
  \CVItem{Second}
  \CVItem{Third}
  \CVItem{Final}
\CVItemListEnd

\end{document}

Responder2

Não acho que você precise definir um novo comando. O código a seguir fará o trabalho.

\begin{itemize}
    \item [$\ast$] Point 1
    \item [$\bullet$] Point 2
\end{itemize}

Escreva o símbolo que deseja usar para o tipo de rótulo/marcador entre colchetes depois de \item. Isso fará o trabalho.

informação relacionada