OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

office message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: LibreOffice settings.xml config-items


as requested in one of the last calls, for OFFICE-2072, i've tried to
dig up some documentation on what the various config-items that
LibreOffice writes into settings.xml do.

i've mostly looked at the "ooo:configuration-settings" items, as the
"ooo:view-settings" items looked more obvious and uncontroversial.

see attached spreadsheet.

in columns F/G, "from file" means that the filter can read the setting
value from the Microsoft Office file, "true"/"false" indicates a
hard-coded value.

i've tried to find references about the config-items, many are
documented in the API and/or in the online help, or in a public bug
report, but in some cases the only thing i could find was the git commit
that introduced the item.

* Writer:

Writer has lots of settings that affect document layout, either for
backward compatibility with old StarOffice/OpenOffice.org versions, or
for Microsoft Word compatibility.

one interesting finding was the function
SwXMLImport::SetConfigurationSettings() and the implications of it for
non-OOo-derived applications that want to set some of these items.

basically, the ODF import in OpenOffice.org Writer (and all derivatives)
*assumes* that if there is at least one config-item using the
"http://openoffice.org/2004/office"; namespace, then the document has
been written by an OOo derivative, and it *relies* on the temporal order
in which the various config items were introduced in releases.

in particular, if it finds that a known config item is missing in
settings.xml, it will assume that the cause is that the document was
created by an OOo version that did not support the "new" default value,
and therefore the "old" backward-compatible but often not ODF-conformant
value is set on the document.

this is, naturally, not what you want to happen if you're an independent
implementation that wants to set a single config-item and in return also
gets *all* SO6/OOo1 numbering and layout bugs.

column H "missing-default" in the attachment documents the items that
are affected by this.

the other LO applications don't appear to do anything like that.

* Calc:

Calc has a peculiar implementation where it stores most of its settings
once as view and once as document, no idea why.

otherwise, it doesn't seem to have anything to change document layout,
other than the 2 CJK text-layout items that every application has.

* Draw/Impress:

The items in Draw and Impress are mostly the same, with a few exceptions
that are specific to one application.

they have one setting that affects document layout, for Microsoft
PowerPoint compatibility.

* Math appears to store all formatting properties in settings.xml, which
strikes me as very surprising - is this usually done via CSS in MathML,
which we don't support, or what is going on here...

* Base writes an empty settings.xml

* Chart writes no settings.xml


-- 
Michael Stahl | Software Engineer
Platform Engineering - Desktop Team
Red Hat

Better technology. Faster innovation. Powered by community collaboration.
See how it works at redhat.com

Red Hat GmbH, http://www.de.redhat.com/, Sitz: Grasbrunn,
Handelsregister: Amtsgericht München, HRB 153243,
Geschäftsführer: Charles Cachera, Michael Cunningham, Michael O'Neill,
Eric Shander

Attachment: LibreOffice_setttings.xml_config-items.ods
Description: application/vnd.oasis.opendocument.spreadsheet



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]