Dica LaTeX: Alinhamento ambiente enumerate

pedras de diferentes tamanhos em equilíbrio sobre um joelho. Vê-se o mar azul ao fundo.

Seguindo o post anterior com Dicas sobre o uso de números romanos no ambiente enumerate do LaTeX, segue uma dica adicional sobre o alinhamento.

Vamos usar como exemplo uma lista com tópicos e sub-tópicos em três níveis utilizando o ambiente enumerate:

\begin{enumerate}
    \item Primeiro nível da lista;
    \begin{enumerate}
        \item Segundo nível da lista;
        \begin{enumerate}
            \item Terceiro nível da lista;
            \item No mesmo nível só para conferir o alinhamento;
        \end{enumerate}
        \item outro item para conferir alinhamento;
    \end{enumerate}
    \item De volta ao primeiro nível;
\end{enumerate}

Que gera a seguinte saída utilizando por padão arábicos para o primeiro nível, letra minúscula para o segundo e romanos para o terceiro:

Obs: se quiser usar só os algarismos romanos volte ao post anterior.

Para que a lista seja alinhada à esquerda, deve-se adicionar dois comandos antes do início do documento:

\SetLabelAlign{fixedwidth}{\hss\llap{\makebox[2.5em][l]{#1}}}
\setlist[enumerate]{label=\arabic.,leftmargin=0pt,align=fixedwidth}

Que gera a seguinte lista com os números alinhados à esquerda:

O comando setlist define o rótulo a ser usado, e, no exemplo, está definido “arabic”. Caso queira usar os algarismos romanos, basta trocar esse rótulo para \roman (que gera romanos com letra minúscula: i, ii, iii…) ou \Roman (que gera romanos com letra maiúscula: I, II, III…).

Exemplo:

Obs: O rótulo que for adicionado no ambiente conforme visto no outro post, será sobrescrito por esse comando.

Referência:

  1. Pergunta do Stack Exchange (em inglês): https://tex.stackexchange.com/questions/236367/left-aligning-nested-labels-in-enumerate

Dica LaTeX: Listas com números romanos

ruínas romanas com placa escrita lungo corridoio

Da série comecei a escrever isso há anos e deixei como rascunho. Como tive essa dúvida hoje de novo! resolvi salvar por aqui os exemplos que achei. Ao final incluí as principais referências que me ajudaram. Caso tenha dúvidas ou dicas deixe um comentário ao final!

Para fazer uma numeração simples no LaTeX existe o ambiente “enumerate” (lembrando que para listas simples existe o “itemize”).

Exemplo de uso do Enumerate simples:

\begin{enumerate}
    \item primeiro item da lista;
    \item segundo item da lista;
    \item assim por diante \ldots
\end{enumerate}
Screen Shot 2020-09-25 at 13.39.50

No entando, quando precisa, ou prefere, usar números romanos para criar as listas é necessário incluir um pacote para configurar o item da enumeração:

\usepackage{enumitem}

E adicionar um comando opcional com um rótulo ao final da primeira linha (do ambiente enumerate):

\begin{enumerate}[label=\Roman*.]
    \item primeiro item da lista com números romanos;
    \item segundo item da lista com números romanos;
    \item assim por diante \ldots
\end{enumerate}

Resultado:

O rótulo “\Roman” iniciando com a primeira letra maiúscula cria uma lista com romanos maiúsculos. Caso deseje minúsculos use “\roman”. O resto do comando é igual.

Outra coisa que eu precisei, foi criar uma enumeração dentro de outra, exemplo: 1.1, 1.2 ou, no caso, em romanos, I.i, I.ii, etc.

Para isso, é preciso adicionar duas linhas antes do início do documento para indicar que quer usar os rótulos nesse formato:

\renewcommand{\labelenumii}{\theenumii}
\renewcommand{\theenumii}{\theenumi\roman{enumii}.}

Nesse exemplo eu quis usar as numerações em romanos. Mas caso precise fazer o mesmo para números arábicos basta trocar o rótulo para \arabic:

\renewcommand{\labelenumii}{\theenumii}
\renewcommand{\theenumii}{\theenumi\arabic{enumii}.}

Esses exemplos mostram os números alinhados à direita por padrão. Caso queira alinhar à esquerda consulte o próximo post 😉

Referências:

  1. Referência em português para inúmeras questões sobre LaTeX: https://latex.net.br/faq/FAQ-enumerate.html
  2. Referência (em inglês) com exemplos: http://tex.stackexchange.com/questions/26882/roman-numerals-for-sections-and-subsections
  3. Referência (em inglês) com vários exemplos de como usar listas itemize e enumerate no LaTeX https://www.latex-tutorial.com/tutorials/lists/