https://bugs.documentfoundation.org/show_bug.cgi?id=149271
--- Comment #5 from ajlittoz <[email protected]> --- Writer is base on a layered model: paragraph, character, Internet Link, direct (from bottom to top). You may be surprised to note I grant special status to "Internet Link" character style. It has a unique property that any link created by Insert>Hyperlink receives an extra character style above the standard style. Since paragraphs are the basic unit of writing, I don't see what a "combining" style application could do on paragraphs. Semantically, a paragraph is "atomic". A paragraph style is applied over the whole extent of the paragraph. If your goal is to override a few parameters, you can do this with style inheritance. A paragraph style also defines a default character style. This default can be overridden by applying an explicit character style. The parameters which are in "transparent state" won't change those in the paragraph style. Unfortunately, this "transparent state" is not highlighted in any way in the UI. You can force it by pressing "Reset to Parent" but few users understand the result of it. Multiple applications of character styles is surely a desirable enhancement. Presently, only a single style can be applied which necessitates to statically combine the attribute into separate styles leading to a combinatorial explosion. However one must be careful in defining "multiple application". It is rather straightforward if set attributes are not conflicting (IOW no same parameters are set to different values). Otherwise, as Mike Kaganski states it under the "last wins and overrides everything from previous ones" effect, formatting result will depend on the order of application. What is non-deterministic must be avoided. Technically, it may become extremely difficult to recombine the <span>…</span> when editing the document in order to avoid fragmenting these sequences (with the ultimate result of getting single character spans). You mention in another bug report the inconvenience for character styles to be unrelated to the default defined in the paragraph style. I understand the present simplicity in character style inheritance as an easy track for developers. Character styles inherit between themselves. Top-of-hierarchy styles inherit from defaults defined in Tools>Options, LO Writer>Basic Fonts. Unfortunately, all computations involving %-sizes are made at creation time leading to static immutable sizes. On the contrary, in paragraph styles, the default character parameters remain "dynamic" and are recomputed when their base changes. Surely a first improvement in character styles would be to keep this auto-recomputation feature so that changing something in the ancestor cascades down to the children. And if dynamic behaviour is accepted and implemented, nothing could prevent from considering that the top-of-hierarchy character style inherits from the paragraph default style. This enhancement would solve a blatant difficulty when using two different font faces in the same paragraph (e.g. a serif one and a monospace one to "quote" computer output). More than often the x-heights are not the same. The Source Text character style (as an example) bears the monospace font face and the size should be adjusted to say 80%. Presently, the font size is computed when the style is modified, full stop. This makes the character style usable in a single paragraph style, like Text Body, but not in footnotes where the font size is usually smaller than in the narrative. This a serious hindrance to semantic styling. The workaround is either to reconsider the face choice (difficult due the restricted choice in open & free type faces or for aesthetic reasons) or to create "context-dependent" character styles which goes against the principle of "generic" semantic styling. There is also a difficulty with character styles I have no solution for. In typography, a portion of text can be "emphasised". This translates as using a different font variant. E.g. if text is Roman, use Italic; if text is Italic, use Roman. This can't be done presently: 1 - there is no provision to "probe" the ancestor style and set a different value for an attribute (this goes beyond simply toggling a binary attribute as font variants are numerous) 2 - a character style is unaware of what is presently active in the paragraph default character style because a character style doesn't inherit from a paragraph one (see above). Regarding pages, the biggest shortcoming is the absence of inheritance between styles. Personally, I don't see what "composite page styles" would do. If the goal is to modify geometrical aspect of an area within the page, there are two ways to do this: a frame or a section. A frame creates a secondary text flow independent from the main flow, so this is probably not what you are looking for. A section can modify margins (through its indent parameters) and number of columns. A section has no header/footer of its own. If you need such, then this is a role for a page style. -- You are receiving this mail because: You are the assignee for the bug.
