-6

Introduction:

While writing a response to a question, I came to a situation where making a sublist improved readability of the post.

This works:

  1. topic
    1. subtopic
      1. subsubtopic
    2. subtopic
  2. topic

Although the indentation helps, this could present some confusion between topic and subtopic.
This works also works:

  1. topic
    • subtopic
      1. subsubtopic
    • subtopic
  2. topic

However, it doesn't fit a formal text style. Attempts to create an alternate numbering for the sublist failed.

Formal style:

Decimal List:

1. topic
   1.1 subtopic
       1.1.1 subsubtopic
   1.2 subtopic
2. topic

This style is probably most appropriate for the case I encountered but isn't supported by HTML. It could be done with CSS, but I don't think is would be as easy as the next style.

Outline style:

1. topic
   I. subtopic
      A. subsubtopic
   II. subtopic
2. topic

This style is supported by HTML by using the type= option in the ordered list tag. The above list can be produced with the following code:

<ol type="1">
   <li>topic</li>
   <ol type="I">
        <li>subtopic</li>
        <ol type="A">
             <li>subsubtopic</li>
        </ol>
        <li>subtopic</li>
   </ol>
   <li>topic</li>
</ol>

However, the page renderer here converts this to unordered lists.

Proposed Implementation:

It seems that a minor edit and replication of existing code would enable the outline format.

Typed Character| Converts to
-----------------------------------------
1.             | <ol type="1">
A.             | <ol type="A">
I.             | <ol type="I">
a.             | <ol type="a">
leading spaces | creates sublist #already implemented
blank line     | ends current list #already implemented

Reason for making the change:

The ability to create sublists greatly improves the readability of complex explanations or multi step processes. To help the reader distinguish sublist from main list, the sublist should have a different numbering system.

Example: https://askubuntu.com/a/985039/694267

Comparison:

Original Text:

  1. Kernel 4.0 and newer, the lazytime option reduces writes to disk by maintaining changes to inode timestamps (access, modification and creation times) only in memory. The on-disk timestamps are updated only when either (1) the file inode needs to be updated for some change unrelated to file timestamps, (2) a sync to disk occurs, (3) an undeleted inode is evicted from memory or (4) if more than 24 hours passed since the the last time the in-memory copy was written to disk.

Same Numbering:

  1. Kernel 4.0 and newer, the lazytime option reduces writes to disk by maintaining changes to inode timestamps (access, modification and creation times) only in memory. The on-disk timestamps are updated only when either:

    1. the file inode needs to be updated for some change unrelated to file timestamps,
    2. a sync to disk occurs,
    3. an undeleted inode is evicted from memory or
    4. if more than 24 hours passed since the the last time the in-memory copy was written to disk

Different numbering:

  1. Kernel 4.0 and newer, the lazytime option reduces writes to disk by maintaining changes to inode timestamps (access, modification and creation times) only in memory. The on-disk timestamps are updated only when either:

    a. the file inode needs to be updated for some change unrelated to file timestamps,
    b. a sync to disk occurs,
    c. an undeleted inode is evicted from memory or
    d. if more than 24 hours passed since the the last time the in-memory copy was written to disk

EDIT: Reply to Thomas Ward

I could easily just write my answer as done above; however, would that start another bashing for not using the system's ordered list function? Granted the need for dropping to a third level in an answer does not occur often, but there is some need to do so in a thorough explanation.

Outline vs Ordered List:

As shown by my examples of what works, the system already supports the needed elements except for differentiated numbering. A system enforced numbering scheme would be ok. Though, it seems that a user selected numbering would be easier to implement.

Formal Style References:

APA writing style - https://owl.english.purdue.edu/owl/resource/544/03/
MLA writing style - http://www.newarkhs.k12.il.us/_sr_project/portfolio_pdfs/HackerLevi-MLA-Out.pdf
Chicago writing style - https://www.cmich.edu/colleges/chsbs/Centers/WritingCenter/Documents/Quick

3
  • 2
    You're quoting some type of 'style guide', however you don't reference it. I can't find any reference to these "formal styles" you reference, and given the past, you have run into several problems when trying to enforce these so-called "formal" styles. You'll need to probably do more than say "Yeah we need to use more formal formatting". Also note that MarkDown is not designed to be used for 'formal' articles, either.
    – Thomas Ward Mod
    Dec 13, 2017 at 22:43
  • Let me make a note here: what you want is to create a formal outline format. MarkDown doesn't support formal outlines, it supports the bare minimum functionality of that - ordered lists. An outline and an ordered list are similar, but NOT the same thing.
    – Thomas Ward Mod
    Dec 13, 2017 at 22:46
  • @ThomasWard -- I've been bashed for not using the systems formatting, so I am formally asking for an update to that system. Note: as shown in the examples of what works, the system does support all elements of an outline except for differentiated numbering.
    – ravery
    Dec 14, 2017 at 1:03

3 Answers 3

8

Two points:

  1. I can see the merits to the style you are proposing.
  2. But we're not going to change our Markdown implementation to support them.

    • For one thing, most posts don't need (or benefit from) deeply nested outlines, so this is a rather rare edge case at best.

      a. We aren't writing U.S. Code here.

      b. Maybe use actual code blocks instead.

    • For another, Markdown has a pretty standard style of making lists. We'd rather move toward being more standard (perhaps by implementing CommonMark) than less standard.

It'd be awesome if Markdown had standardized on a list style that matches the writing manuals you linked to, but that's not really what it's designed to do. I don't think most Stack Exchange answers or questions benefit from deeply-nested lists either, so we ought not encourage them.

5
  • Writing actual code blocks does not work. For some reason, adding the <ol type=""> causes the output to be an unordered/bullet list.
    – ravery
    Dec 14, 2017 at 2:07
  • @ravery: I'm suggesting more along the lines of writing code/preformatted text if you really need to have text look a specific way. Dec 14, 2017 at 2:11
  • ahh. well it could be done with plain text, as shown in the post; however i have been bashed for not using a system feature. Thus, the request to update the feature. I do agree that the need is for small corner cases.
    – ravery
    Dec 14, 2017 at 2:14
  • 2
    If SE implemented CommonMark that would be awesome.
    – Seth
    Dec 14, 2017 at 15:50
  • 1
    @Seth: Yes. It was one of the things that made me so excited about Documentation, which was using CommonMark. We'd still love to do this, but it's hard to prioritize—our Markdown parser is "good enough". Dec 14, 2017 at 16:10
3

Doing something like this leads down a path I will (lovingly) refer to as formatting hell. In my personal opinion, not everything needs to be a list, and we shouldn't be encouraging sublists any more than necessary. We have better ways of splitting answers - those would (ideally) be better to use.

Compare the following:

In order to summon a unicorn, one must gather fifty orchids (blue or white, but purple may work depending on the season). Then, at a full moon, the orchids must be arranged in a semi-circle around a pure-white horse. Chant "Invocum Unicornus Etat!" while waving around a four leaf clover, and the horse will be transformed into a unicorn

with:

In order to summon a unicorn:

  1. Gather fifty orchids
    • You should use either blue or white orchids.
    • Purple may be used, but results may vary based on the season.
  2. Wait for a full moon, and place orchids in a semicircle
  3. At the center of the semicircle, place a pure-white horse.
  4. Wave around a four-leaf clover while chanting "Invocum Unicornus Etat!"

It can generally be assumed that users will read the entire post and be of sane mind. It's better (again, in my opinion) to make text and instructions smooth and simple rather than split things up into arbitrary steps.

Nesting (unfortunately) makes this issue worse:

  1. Get a unicorn to act as the magical catalyst.
    1. Gather fifty orchids
      • You should use either blue or white orchids.
      • Purple may be used, but results may vary based on the season.
    2. Wait for a full moon, and place orchids in a semicircle
    3. At the center of the semicircle, place a pure-white horse.
    4. Wave around a four-leaf clover while chanting "Invocum Unicornus Etat!"
  2. Make (or buy) the required elixir
    • Brands such as Magebright, Merlin's Exciting Elixir, and similar tend to work for purchasing
    • Or, you can make your own, though results may not be as good
      1. In a large bowl, mix together 50 grams of ground wormwood and 5 grams of dried oak leaves
      2. Add in 0.2 liters of water blessed by an Abrahamic priest
      3. Add in 0.1 liters of whole, unpasteurized cow's milk
      4. Mix together, and leave in cold kiln for 3 days
  3. Add elixir to the unicorn's food
  4. When the unicorn's horn begins to glow, pet the unicorn's mane while saying your wish.

Instead, why not just use headings for each distinct step? This separates things out more and makes things look cleaner for users:

Get a unicorn

I really don't want to write this again, forgive me.

Obtain magical elixir

Blah blah blah something about potion making...

Making your wish

Once the above two things are done, add the magical elixir to the unicorn's food. Wait for the unicorn's horn to start glowing. Once that happens, pet the unicorn's mane while reciting your wish.

And this answer has gotten long, so I'll just summarize: sub-lists lettering will only put a bandage on an organizational problem already solved by other things (such as headings and different post structuring). While they'd be theoretically nice to have, I'd feel that at the end of the day they'd actually reduce readability. The sublists we have are already enough (and are denoted by indentations) -- more differentiation is not necessary as they really shouldn't be used unless there's no other choice.

2
  • Thanks for the response. I agree less is more: unless writing a strict outline. It can be easily overdone, but there are some cases when it helps.
    – ravery
    Dec 11, 2017 at 18:56
  • 1
    +1 just for mentioning unicorns... :-)
    – Fabby
    Dec 13, 2017 at 23:47
1

This could be done using Stylish, say with CSS (in Mozilla-compatible format for Stylish) like so:

@-moz-document domain("askubuntu.com") {
ol ol li {
    list-style-type: upper-roman;
}
ol ol ol li {
    list-style-type: upper-alpha;
}
}

giving:

enter image description here

2
  • Note that this is end-user only specifically.
    – Thomas Ward Mod
    Dec 11, 2017 at 17:27
  • Of course, but it's a way for OP to get what they want quickly.
    – Olorin
    Dec 13, 2017 at 3:26

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .