Advice on ~empty/do nothing styles (solely for identifying text)

I’m sure I recall reading in the manual (sorry; lost track of the precise ref) that one could create e.g. character styles that did nothing so that one could mark e.g. Inner Monologue without styling effect.

Can someone clarify how to do this? I can create a character style and uncheck Font Size and Font Family, but the style still seems to include bold, italic, etc.

Did I misunderstand, or am I missing a trick in creating a “do nothing” style?

(e.g. do I need to make sure to define my do nothing style as font “regular” so as not pick to up additional formatting that may have been applied within an existing paragraph. I believe that layered styling works by toggling, i.e. applying a style with italic to text already italicised leaves regular*)

* PS Now I think about it, why is it “regular” and not “roman”?

There is no such thing as a “do nothing” style. As things are currently, there will always be a little something. (It is a wish, but not in yet.)

I personally use paragraph formatting styles, everything else unchecked.
Indentation or color box as visual cue.

Note: the more you use of them, the more you make compiling with formatting changes a complex operation.

Ah, I was wrong then.

I found the manual reference again. Sect 17.4.4 “Styles That Do Nothing”

So “Styles do not necessarily have to perform a formatting function in Scrivener.” but always have formatting of some kind, even if that is not their “function”.

image

You basically have to fake “doing nothing” if using rich text based output. Add the style to your compile Format’s “Styles” list, and make it match the body formatting for that format.

They are entirely Scrivener-only markings in the Markdown and TXT-based outputs though, since in that case one must deliberately add text markings around any style that is meant to be functional, via the prefix/suffix fields in the compile format designer. If you don’t do that, they just vanish.

OK, thanks; I’m not entirely sure I understand that, but I do get the general drift and will study more when I need to.

I think I was confused by this (emphasis added):

When compiled [styles] can have their assigned text stripped from the output conditionally, used to pass through instructions to the output format (raw HTML to ePub for example) and a few other tasks—but even beyond that they can simply do nothing at all and leave the text in a state where your readers will never even know it was tagged in the first place.

Obviously the styles themselves don’t always do nothing (never do nothing?), but their effects can be negated.

I should clean up the wording of that a little bit, as it does leave one to deduce how that would be done, and in some cases it may not always be feasible. Being able to omit both the font size and family though does clear up a lot of the scenarios where the style might end up doing unwanted things. It is certainly more limited, what you can do with this, in a rich text context, as are the concept and implementation of styles in general (beyond Scrivener I mean to say).

Worst case, if you find they interfere it’s not a critical problem that will waste you lots of time:

  1. File ▸ Save As..., and call it “Compile Only - Discard.scriv”
  2. Go through the Styles panel in the project and delete all styles not meant to output.

Now the text they were assigned to becomes “No Style” and the compiler cleans it up.

1 Like