Yeah I might be a little confused about the precise implementation, as this is in response to a thread about enumerated lists in the text editor, but all of your examples seem to be relating to chapter and section numbering?
Well that aside, as it may not be terribly important to know exactly how it is being used, one such improvement I would suggest is to use named auto-numbering streams instead of the $n and $sn pair, which is a pretty limited tool. Using named streams means you can reset them as needed, similar to how some of the built-in formats reset section numbering at each chapter. It means you can use whatever lettering/numbering style you need at each level, and can have more than two levels.
Here is a demonstration compile Format you can import into your compiler sidebar, via the gear button at the bottom of it, to see the idea in action. Everything will be taking place in the Title Options tab, using the prefix and suffix fields.
simple_list_output.scrformat (32.8 KB)
Assign styles to each section name especially indent level. (I’m not sure if I should do more than indent levels in the editor. For compile I would use the styles given by the publisher.)
You could go to that trouble, but if this is really book structure you’re talking about, a far better tool for that would be the “Default Types by Structure” tab, in the Project Settings: Section Types pane. Then if you move a grandchild up to the top, it automatically becomes a ‘chapter’, rather than having open the inspector and muck around. What things are is driven by where they are nested to.
And if you do mean lists, like creating numbered text lists meant to print in the flow of the normal body text, you could still use that same concept there. An idea would be to have all such lists one level below the main text body level, such as in this example (which integrates with the above compile settings):
nested_listing_in_outliner_levels.zip (158.7 KB)
What I haven’t figured out yet is the proper placeholder format to link to the doc, but only print the associated placeholder number, but I know it can be done… Somehow
Type in <$p>
into the editor, select the placeholder, and drop the item you want to print the page number for onto the selection, creating an internal link to it. That’s a special case, but most document placeholders will work that way as well. For example, <$title>
linked to another item will do just what you expect, so would <$status>
or <$custom:NameOfFile>
.
Compile that, and the only people that will notice you used something other than lists to generate a body text list are those with access to the word processing file.