Table of Contents - suggestion

The only thing I hate about Scrivener is … The table of contents - and for one reason, I can’t format the entire table easily.

Can I suggest that instead of setting the left-hand margin to give the indented ToC, you insert tabs instead? That would allow us to simply set up a style in the compile options that have the indents, fonts and settings as we’d like.

At the moment, I have to select each ToC line in turn to apply a “ToC-1”, “ToC-2”, “ToC-3” style to indented level1, 2, and 3 respectively. It’s a pain and it takes forever!

The problem with using tabs is that longer titles that wrap from one line to the next would then wrap all the way back to the beginning of the line, instead of being block indented at the level.

That said, it sounds like you’re going about this the hard way. Try this:

  1. Put your cursor into the text of a level 2 entry (Option-click will position the cursor without activating the link).
  2. If you’re in the Styles panel already, click the gear button and, “Select Similar Formatting”. Otherwise use the Edit ▸ Select ▸ Select Similar Formatting menu command.
  3. Click on your style for level two ToC entries.
  4. Repeat for each level that needs adjustment.

Another reason tabs wouldn’t be good here is that, for you to be able to customise the tab widths by selecting all of the text, every item in the list would need the maximum number of tab stops required for the deepest item, and if you had a short title at the top level this could result in the page number appearing at one of those other tab stop positions rather than the desired right tab.

However, I do hear you that there is currently no easy way to change the indent level for table of contents. (There is a hidden preference that can be set via the command line, but that is another matter…) For 3.0.4, therefore, I have made it so that when you paste in a ToC, a panel appears asking you to confirm the indent width and right margin.