restructuredtext

How to use letters for restructured text lists with more than 26 items?


If I make a Restructured Text list with letters as the bullets, this works fine for the first 26 letters "a.".."z.". However, when I extend the list to 27 items or more, such as with "aa.", then the list stops rendering (see example screenshot). What can I do to make long lists render correctly?

Example input:

Lorem:
    a. ipsum
    b. dolor
    c. sit
    d. amet,
    e. consectetur
    f. adipiscing
    g. elit,
    h. sed
    i. do
    j. eiusmod
    k. tempor
    l. incididunt
    m. ut
    n. labore
    o. et
    p. dolore
    q. magna
    r. aliqua.
    s. Ut
    t. enim
    u. ad
    v. minim
    w. veniam,
    x. quis
    y. nostrud
    z. exercitation
    aa. ullamco
    ab. laboris
    ac. nisi
    ad. ut
    ae. aliquip
    af. ex
    ag. ea
    ah. commodo
    ai. consequat.
    aj. Duis
    ak. aute
    al. irure
    am. dolor
    an. in
    ao. reprehenderit
    ap. in
    aq. voluptate

Resulting output (screenshot):

enter image description here

Also, I'm aware that there's probably an explicit CSS option to make this work, but I'd prefer not to make my docstring harder to read in the code file just so that it renders correctly after processing with RST.


Solution

  • Only single characters are recognized as alphabetical list markers for an enumerated list in reStructuredText. Lines starting with two letters are interpreted as one ordinary paragraph — there should have been a (WARNING/2) Enumerated list ends without a blank line; unexpected unindent for your input example.

    But not everything is lost. You may set the list style with an alphbetic marker on the first item(s) and use the auto-enumerator (#) for subsequent items like:

    u. ad
    v. minim
    w. veniam,
    #. quis
    #. nostrud
    #. exercitation
    #. ullamco
    #. laboris
    #. nisi
    #. ut
    #. aliquip
    

    If you want to continue a long alphabetical list at some higher value, you may use numerical markers and precede the list with a "class" directive:

    .. class:: loweralpha
    
    27. ullamco
    28. laboris
    29. nisi
    

    Notes: