Bug 128553 - Shouldn't it be possible to apply multiple styles simultaneously?
Summary: Shouldn't it be possible to apply multiple styles simultaneously?
Status: RESOLVED DUPLICATE of bug 115311
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: LibreOffice (show other bugs)
(earliest affected) release
Hardware: All All
: medium enhancement
Assignee: Not Assigned
Keywords: needsUXEval
Depends on:
Reported: 2019-11-02 15:48 UTC by mrodent33
Modified: 2020-06-22 06:06 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:
Regression By:


Note You need to log in before you can comment on or make changes to this bug.
Description mrodent33 2019-11-02 15:48:37 UTC
I'm told this is the place to make a feature request.

I'm aware this suggestion would no doubt mean a massive change to the way styles are implemented and the whole architecture of the apps! So it's really just an aspiration.

My thinking is just this: in Writer, for example, thinking about Character styles, say you create a style called "emphasis", which maybe applies italic.

Then you create another, called "strong", which maybe applies bold.

It's a perfectly normal thing to have some text which needs emphasising overlap with some text which needs to be strong. You shouldn't have to create a style called "strong-emphasis".

The same thinking could be extrapolated to Paragraph and Page styles, and no doubt also to other applications... 

Actual Results:

Expected Results:

Reproducible: Always

User Profile Reset: No

Additional Info:
Comment 1 Xisco Faulí 2019-11-25 15:24:43 UTC
You don't need to create a third style you can change the second style to inherit properties from the first style.
Comment 2 mrodent33 2019-12-04 20:34:35 UTC
@Xisco Faulí
OH wow... you have COMPLETELY failed to understand what I am suggesting.

Maybe English is not your first language.

I would try to explain again, but there is no point in doing that, as it is not (at all) difficult to understand.

Please do me the courtesy of re-reading my feature request.  

If there is something you still don't understand, please ask me a question but please do not re-close this feature request.
Comment 3 Regina Henschel 2019-12-05 00:06:18 UTC
When making any changes, it is important to consider how this can be written in file format. The file format is based on XML and this fact will certainly not be changed.
An XML file is a sequence of elements. Each element can have a sequence of child elements. But it is not possible to have overlapping elements. You can have
Start A...Start B ... End B ... End A
But you cannot have
Start A ... Start B ... EndA ... End B

A style is an attribute of an element and therefore overlapping styles are not possible.

For runs (text inside a paragraph) and the situation Start A...Start B ... End B ... End A, you can have 'italic' for A and 'bold' for B, and because B is inside A the text of B will be bold+italic. That is already possible as span-elements can be nested. Paragraphs and headings cannot be nested and nesting of them would make no sense.

It is possible in ODF to have a list of styles applied to an element. That is attribute "text:class-names" for headings, paragraphs and runs and attributes "draw:class-names" and "presentation:class-names" for graphical objects. For pages such "class-names" concept does not exist.

The concept "class-names" is not implemented in LibreOffice, but LibreOffice uses only the "style-name" attributes.

@mrodent33: Does the concept "class-names" reflect your proposal? To read more about it in the standard, you can get the standard from http://docs.oasis-open.org/office/v1.2/os/
Comment 4 mrodent33 2019-12-10 09:48:48 UTC

Thanks... yes, I know about XML and your "text:class-names" is very much the kind of thing (I went to that link but haven't yet found all the details of this proposal).

I'm a coder and have in the past analysed some OpenOffice or LibreOffice .odt files (by first expanding and then analysing content.xml)... I just looked at a content.xml from an .odt file: I find links in the preamble of the text to styles in styles.xml: these are automatically named "P1, P2, P3, ..." in the case of paragraph styles, and "T1, T2..." for character styles.  Basically a lot of work is done behind the scenes constructing "artificial" styles which are specific to that document and its elements.

I'm not sure that that's the same thing as "text:class-names" (although it seems quite similar).

Given the vast number of Pn and Tn styles found in the preamble of content.xml I'm now wondering whether my "aspiration"/"feature" might actually be quite feasible. Obviously I have no idea of what architectural changes to the *program* might be required, but it appears to me that the structure of content.xml and styles.xml should in theory be adequate to implement this.
Comment 5 mrodent33 2019-12-10 09:53:27 UTC
The XML element in the content.xml which contains all these styles is called, appropriately, "<office:automatic-styles>" ...
Comment 6 Xisco Faulí 2019-12-12 12:24:45 UTC
You can't confirm your own bugs. Moving it back to UNCONFIRMED until someone
else confirms it.
Comment 7 mrodent33 2019-12-22 14:01:08 UTC
@Xisco Faulí
Fair enough... except that, clearly, this is not a bug, it's a feature request.

If there was somewhere else to submit a feature request, that'd be more appropriate. But my understanding is that this is all there is.
Comment 8 ian 2020-04-01 13:56:59 UTC
Please note that I am setting the severity of this bug report to "enhancement" to reflect that this is a feature request.
Comment 9 Heiko Tietze 2020-06-22 05:56:27 UTC
Nested character styles are requested in bug 115311. IIRC, focus in the discussion is to have inheritance in CS as known from PS. But we also discussed the option to multi-select and -apply CS.

*** This bug has been marked as a duplicate of bug 115311 ***
Comment 10 Mike Kaganski 2020-06-22 06:06:43 UTC
(In reply to Heiko Tietze from comment #9)
> IIRC, focus in the discussion is to have inheritance in CS as known from PS.

CS inheritance is working OK AFAIK.

I agree that as far as I read the request, it's just about nested character styles, which are a feature in ODF, but not implemented in UI in LibreOffice.

Extrapolation of this concept to page styles/paragraph styles does not make sense IMO. However, for a "class-names" concept, a separate enhancement request is required, which would not be as limited as "The same thinking could be extrapolated to Paragraph and Page styles, and no doubt also to other applications...", but would go in depth into why would be useful (for a specific style group) - what would be a use case, and why existing feature set is not sufficient.