Bug: List formatting damaged by changing paragraph style alignment

Summary: Changing the alignment of a paragraph style from flush left to justified or vice versa damages list indent and bullet/number formatting for lists set in that style.

Manually changing the list’s alignment using the Format Bar doesn’t damage the list’s formatting.

What I expect to happen: Changing the alignment of a paragraph style from flush left to justified or vice versa should have the same effect on lists’ indenting as changing alignment by selecting the list text and clicking the alignment box in the Format Bar: none. Only the text alignment on the right side of the page should change.

What actually happens: Changing the alignment of the paragraph style of list damages list display and visually flattens nested lists to one level.

It looks to me like the special formatting that positions each number or bullet and indents list items gets removed, and the displayed formatting defaults to the underlying paragraph style. The lists still act like lists; if I put the cursor at the end of an item and hit Return, I get a new (wrongly formatted) list item. Nested lists get visually flattened to one level; however, entering a line return produces the correct next-in-series bullet, number, or letter. And tabbing deeper and shallower a level in a nested list can restore correct list indentation to that list paragraph, so the correct formatting is still “there,” just not displaying.

How to reproduce the bug:

  1. Copy or create a Scrivener 3 project that contains at least one paragraph style set either flush left or justified. (I created a new Blank project, and used Block Quote style.)
  2. Create several paragraphs in your chosen style.
  3. Style most of your styled paragraphs as a list. To see the effect more clearly, create a nested list by further indenting at least one list item.
  4. Change the alignment of that paragraph style from flush left to justified, or vice versa. (I changed Block Quote from flush left to justified.) The problem occurs whether you manually update the paragraph style using “Redefine Paragraph Style from Selection…”, or import an identically-named style with the other alignment.
  5. Every list set in the paragraph style whose alignment you just changed will display damage, and nested lists will get flattened. Even if you first manually change their alignment using the Format Bar.

I found this bug importing styles from project to project. Importing styles trashed every list set in any paragraph style whose alignment changed. (The bug doesn’t affect lists set No Style. Even switching the project’s default text alignment between flush left and justified doesn’t trash No Style list formatting.)

Workaround: Drag-and-drop Scrivenings containing lists into another project whose paragraph styles have different alignment produces the same correct result as using the Format Bar.

Console log didn’t report anything that looked like a Scrivener-relevant error.

I use Scrivener 3.3.6 (16305) running on macOS 10.13.6 High Sierra.

Keith, thank you enormously for Scrivener. It has improved my life in so many ways, and I love that it keeps getting better! I use it for writing (over 2 million words of research notes alone), for project management, and for many other things. As a style sheet power-user since roughly 1995 (WriteNow, FrameMaker, CSS) I’m having fun putting Scrivener’s styles through their paces. The support and community here at Literature and Latte are outstanding. I wish ALL my software was like Scrivener!

1 Like