Czasami chcę, aby listy wyliczeniowe w LaTeX zaczynały się od innej wartości niż pierwsza wartość (1, a, i itd.). Jak mogę utworzyć lista wyliczeniowa zaczyna się od dowolnej wartości?
Odpowiedź
Możesz zmienić licznik o nazwie enumi
na przykład:
\begin{enumerate} \setcounter{enumi}{4} \item fifth element \end{enumerate}
(Jeśli masz listy na głębszych poziomach zagnieżdżenia, odpowiednie liczniki to enumii
, enumiii
i enumiv
.)
Komentarze
Odpowiedź
Pakiet enumitem
zapewnia proste rozwiązanie bardzo wielu typowych problemów, które są związane z drobnymi poprawkami wyliczania / określania /opis. W takim przypadku możesz użyć parametru start
. Spójrz także na parametr resume
.
Komentarze
- Chciałbym tylko wyraźnie że parametr " wznowienie " powoduje, że licznik kontynuuje liczenie od poprzedniego " wyliczenia " środowisko.
- Bardziej jednoznacznie " wznowić " parametr powoduje, że licznik kontynuuje pracę z poprzedniego " środowiska " w bieżącym bloku. Na przykład \ begin {enumerate} \ item 1 \ end {enumerate} \ begin {defn} \ begin {enumerate} \ item 1 \ item 2 \ end {enumerate} \ end {defn} \ begin {enumerate} \ item To będzie be 2 \ end {enumerate}
- Dla osób szukających MWE korzystających z
resume
możesz znaleźć jeden tutaj - FYI:
enumitem
z\begin{enumerate}[resume]
jest fajne, ale nie jest zgodne zparalist
pakiet ' scompactenum
środowisko.
Odpowiedź
Jeśli chcesz zmienić tylko wartość początkową, najłatwiej jest:
\documentclass{article} \begin{document} \begin{enumerate}\addtocounter{enumi}{41} \item This item is numbered `42." \begin{enumerate}\addtocounter{enumii}{5}% This cannot be more than 25 \item This one is ``numbered"" `(f)" \end{enumerate} \end{enumerate} \end{document}
Chociaż możesz mieć sześć warstw zagnieżdżonych środowisk list (wyszczególnienie, opis, wyliczenie), możesz mieć nie więcej niż 4 z jednego typu. Liczniki od enumi do enumiv kontrolują indeks etykiety każdego elementu. Możesz zwiększać (jak pokazano) lub zmniejszać (dodawać wartość ujemną) na wszystkich 4 poziomach.
Pamiętaj jednak, że to nie być całkowicie arbitralne. Poziomy wyliczone alfabetycznie nie mogą mieć elementów po elemencie oznaczonym „z”. (Możesz jednak dodać ujemną kwotę do odpowiedniego licznika, aby wrócić do etykiety „a”).
(Teraz, gdy widzę drugą odpowiedź, zastanawiam się, dlaczego zawsze wybieram opcję względne \addtocounter
zamiast bezwzględnych \settocounter
?)
Komentarze
-
\addtocounter
jest bezpieczniejsze, ponieważ zapewnia monotoniczność, gdy jest używane w połowie listy. - Nie ' t pracuj z 0.
- +1: działa również z rzutnikiem.
Odpowiedź
\addtocounter
działa również z 0
:
\documentclass{article} \begin{document} \begin{enumerate}\addtocounter{enumi}{-1} \item % starts with `0.` \item % starts with `1.` .. \end{enumerate} \end{document}
Komentarze
- Witamy w TeX.SE!
\usepackage{enumerate}
na górze i użyj\begin{enumerate}[(a)]
itd. W każdym razie ' s do ty. To pytanie dotyczyło rozpoczęcia czegoś innego niż pierwszy indeks, np. zaczynając od(e)
zamiast(a)
, ale widzę, że tytuł jest niejednoznaczny.\setcounter{enumi}{N}
ustawi następny element ' s do N + 1. Więc jeśli zdarzy się, że zakończysz kolejne wyliczenie, gdzie N jest ostatnim elementem, i rozpoczniesz kolejne wyliczanie z N + 1, zamiast tego chcesz ustawić licznik na N-1.