Personalizar los entornos itemize y enumerate

El entorno itemize produce una lista de elementos sin numerar, estando cada uno de ellos marcado con un símbolo, que por defecto es una bola (para el primer nivel), un guión (para el segundo nivel de anidación) o una estrella (para el tercer nivel de anidación). En realidad, estos símbolos se corresponden con los valores \labelitemi, \labelitemii, \labelitemiii, ... para cada nivel sucesivo de iteración. Por lo tanto, para cambiar el símbolo, lo único que hay que hacer es redefinir (mediante \renewcommand) estos comandos, asignándoles un nuevo sámbolo. Por ejemplo:

Estilo por defecto
itemize normal
\begin{itemize}
 \item Item 1
 \item Item 2
  \begin{itemize}
   \item Item 2.1
   \item Item 2.2
    \begin{itemize}
     \item Item 2.2.1
     \item Item 2.2.2
     \item Item 2.2.3
    \end{itemize}
  \end{itemize}
 \item Item 3
 \item Item 4
\end{itemize}
 
Estilo personalizado
itemize personalizado

\renewcommand{\labelitemi}{\Laserbeam}
\renewcommand{\labelitemii}{\Radioactivity}
\renewcommand{\labelitemiii}{\Biohazard}


\begin{itemize}
 \item Item 1
 \item Item 2
  \begin{itemize}
   \item Item 2.1
   \item Item 2.2
    \begin{itemize}
     \item Item 2.2.1
     \item Item 2.2.2
     \item Item 2.2.3
    \end{itemize}
  \end{itemize}
 \item Item 3
 \item Item 4
\end{itemize}

NOTA: muchos símbolos requieren el uso del modo matemático; en estos casos, la definición será de la forma: \renewcommand{\labelitemi}{$...$}

El entorno enumerate, que produce listas numeradas, se puede personalizar de forma parecida a itemize. En lugar de \labelitemi, \labelitemii, ... (usará la forma \labelitemi...i o similar para referirme a cualquiera de ellos) aquí se dispone de los comandos \labelenumi...i, que especifican el formato de la etiqueta con la que LaTeX precede a cada elemento de la lista. El contador autómatico de cada nivel viene dado por los comandos \theenumi...i, que pueden ser redefinidos para que la numeración sea árabe (\arabic{enumi...i}), romana (\Roman{enumi...i} mayúsculas, \roman{enumi...i} minúsculas) o alfabática (\Alph{enumi...i} mayúsculas, \alph{enumi...i} minúsculas). De este modo,

% el contador de primer nivel usará números romanos en mayúsculas
\renewcommand{\theenumi}{\Roman{enumi}} 

% formato para primer nivel
\renewcommand{\labelenumi}{\textbf{Ejercicio} \theenumi.} 

Esto generará listas enumeradas con etiquetas de la forma: "Ejercicio I.", "Ejercicio II.", etc.

A continuación se muestra un ejemplo más elaborado:

Estilo por defecto
enumerate normal
\begin{enumerate}
 \item Item 1
 \item Item 2
  \begin{enumerate}
   \item Item 2.1
   \item Item 2.2
    \begin{enumerate}
     \item Item 2.2.1
     \item Item 2.2.2
     \item Item 2.2.3
    \end{enumerate}
  \end{enumerate}
 \item Item 3
 \item Item 4
\end{enumerate}
 
Estilo personalizado
enumerate personalizado

\renewcommand{\labelenumi}{%
 \textbf{\theenumi}.-
}

\renewcommand{\theenumii}{\arabic{enumii}}
\renewcommand{\labelenumii}{%
 \textbf{\theenumi}.\theenumii.-
}

\renewcommand{\theenumiii}{\arabic{enumiii}}
\renewcommand{\labelenumiii}{%
 \textbf{\theenumi}.\theenumii.\theenumiii.-
}


\begin{enumerate}
 \item Item 1
 \item Item 2
  \begin{enumerate}
   \item Item 2.1
   \item Item 2.2
    \begin{enumerate}
     \item Item 2.2.1
     \item Item 2.2.2
     \item Item 2.2.3
    \end{enumerate}
  \end{enumerate}
 \item Item 3
 \item Item 4
\end{enumerate}