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