I was very happy to find that LO supported a textual file format, because it made LO documents compatible with git, and I could diff document versions.
When I actually tried putting fodt documents into git, I found that the diffs are practically useless because numerous arbitrary numeric identifiers are arbitrarily changed from one save to the next. I don't think this is a fault of the file format. Rather, it appears that LO randomly re-assigns the numbers for no outwardly visible reason.
This is a request to preserve "rsid" numbers and text:style-name assignments in fodt files across loads and saves in cases where there is no objectively sound reason not to.
It would help, too, to limit line lengths to some smallish multiple of 100 bytes where possible, broken preferentially at XML lexeme boundaries.
At some risk of disabling other potentially useful ODF extensions, you can disable the rsid feature by setting
Tools - Options - Load/Save - ODF format version
to "1.2" rather than the default of "1.2 extended (recommended)"
Pretty-printing the XML of FODT files (a la "xmllint --format") on save could potentially be a useful "Expert Configuration" flag
-> Importance: low, enhancement
-> Component: filters and storage
-> Updated title
Indeed that help but, not completely.
If i add a character and remove it after (same content than at the start). I have still diffs
- <text:list xml:id="list102257823223392" text:continue-numbering="true" text:style-name="L17">
+ <text:list xml:id="list102327319664572" text:continue-numbering="true" text:style-name="L17">
A cleaner xml could be very usefull when using SVC
"pretty printing" is an advanced setting: Tools > Options > Advanced. Click button "Open Expert Configuration". Search for "pretty". Double-click the result line to toggle true/false.
Preserve of xml:id when ever possible, is still an issue.
*** Bug 91098 has been marked as a duplicate of this bug. ***
*** Bug 88298 has been marked as a duplicate of this bug. ***
*** Bug 156428 has been marked as a duplicate of this bug. ***