Style Menu Behavior Inconsistent with Industry


Just a note. If a paragraph has been assigned a style and you select the paragraph and assign the same style there should be no change to the paragraph. This is the industry norm.

At this time Scrivener acts incorrectly in the above scenario. If you select a paragraph with a style and then pull the menu down to the same style Scrivener sets the paragraph to “No Style”. But styles are not toggles (as with boldface for example. Styles switch to whatever style the user chooses and if the user chooses the same style there is no change.

This Scrivener behavior creates a problem when you try to make all the styles in a document consistent. If you have a document in which most of the document has a style, but (perhaps due to pasting) one or two paragraphs done, you want to fix the problem by selecting all and setting the style. That seems obvious, but it won’t work. Instead it toggles some paragraphs to No Style and others to the style.

The work around is to select the entire document, set the entire document to a third style and then set it to the style you want. This is obviously not normal behavior in the industry.

The normal situation in Scrivener is for the text to have “no style”. Scrivener isn’t Word, where everything has a style. You shouldn’t give everything a style in Scrivener as that will make it much harder to compile the output.

Let’s be a little bit more accurate about why the default is for Scrivener to have “no style” as the default and it is recommended to use project defaults as your base formatting, only applying styles to the bits that are different, lest incorrect information gets repeated.

My understanding is that if you’re always compiling to a single target type – you’re always and ever only compiling to Word docs, etc. – then there is no downside to using styles for everything. It’s when you set up compile options and re-use them in multiple projects and are compiling the same project to multiple different targets that using styles for everything including a “default style” will run you into trouble and create more work for you than you need.

It’s not a blanket “it makes compile harder.”

I guess we’ll have to wait for Katherine or someone else from L&L to give a definite answer, but I do think compiling gets more complicated if everything has a style. Scrivener is not a wysiwyg editor so the text in the editor doesn’t look exactly as it will look when you compile it. It means you will have to tweak the way the style looks in the editor to get a specific compiled output, and it means that you override the look of the ordinary text but not of titles. Tweaking Scrivener to function as Word is a bad idea. If one wants Word, it’s better to use Word.

[size=80]Confession: I sometimes use Word, and Pages… [/size]

A Style acts as a limited Preserve Formatting command: everything with that style will be passed through the Compile command unchanged unless the Compile Format explicitly changes it. For that reason, applying a style to your body text makes one of Compile’s core functions – using different formatting in your output document – unnecessarily complicated.

Moreover, applying a style to your body text means that maintaining consistent formatting throughout the project is your responsibility. Scrivener won’t catch or fix the one section on page 42 where you accidentally un-styled the paragraph after the block quote.


I cannot reproduce this - can you please post a reproduction example? If I have a paragraph with no style, then a paragraph set to block quote, a third set to no style, a fourth set to block quote and a fifth set to no style, and then I select the whole document and set it “Block Quote”, all paragraphs are set to “Block Quote” as expected.

The expected behaviour is that you should be able to use styles as toggles, though - this was a feature requested during beta-testing and is handy for keyboard shortcuts assigned to styles, meaning you can use the keyboard shortcuts as toggles. The toggle is based on the text at the start of the selection.

As for using “No Style” as the default, yes, this makes compiling much easier. If you use styles for everything, then the formatting you set up in Compile’s “Section Layouts” becomes meaningless, or at least opaque, because it then just becomes a sort of base formatting for all of your styles. Users who used styles for everything became confused as to why their text wasn’t turning out as it appeared in their Section Layouts.

For users who want styles set to everything for, say, their Word documents, its’ better just to assign a style during the Compile process, applying a style in the Section Layouts.

All the best,