3

I've faced with very weird behavior of LibreOffice when opening C# Language Specification version 5.0 in it. When I open this specification in Microsoft Word 2013 on the title page it's written "C# Language Specification Version 5.0", but when I open it in LibreOffice Writer 4.0.3.3, I see "C# Language Specification Version 4.0".

I've recorded my screen and uploaded video to YouTube showing this: http://www.youtube.com/watch?v=kpWc9becFtc

Why LibreOffice Writer behave like this?

4
  • Convert the document into a .doc file. My guess LibreOffice does not like the Word 2013 .docx format.
    – Ramhound
    Jun 20, 2013 at 20:18
  • I was wondering why did it say 4.0 too, I had no idea Word displays it “correctly”.
    – svick
    Jun 20, 2013 at 20:50
  • @svick I've written that in comment for accepted answer. There is a reference on the custom field in document markup, but there is also a text element, containing value 5.0. MS Word uses this text while LO Writer ignores it and shows value of document property, which is 4.0
    – rpeshkov
    Jun 20, 2013 at 20:54
  • Also, if you update the field in Word, it will display "4.0" just like LO. Jul 16, 2013 at 22:35

1 Answer 1

5

It's not really weird behaviour.

In Word, this version number is stored in a "Custom Document Property " whose value is inserted using a DOCPROPERTY field, like this { DOCPROPERTY Version *Mergeformat }. You can see these field codes in Word using Alt-F9. The result is displayed as 5.0. But these fields do not update automatically in Word - to update them, you can select the field and press F9. If you do that, the value that is actually stored in the Document Property is displayed. In other words, at some point, someone has probably updated the property value to 5.0, then updated the field code, then (for some reason) gone back and changed the document property value to 4.0, then not updated the { DOCPROPERTY } field.

In LibreOffice, things work a little differently - the value is updated when you open the document, and so 4.0 is displayed. (You don't get to see the field code in the same way as in Word, but if you right-click you may see Fields... on the drop-down menu. In there, you should see a Custom field called Version.)

2
  • That's correct answer. I've watched into the document.xml inside docx file and found that it's a field. But I've also found that there is a text element with 5.0 in it. It means that LO Writer use field value even if it was changed in text!
    – rpeshkov
    Jun 20, 2013 at 20:45
  • 2
    You are right - manual alteration is possible in this case and is the simplest explanation. The chances are that no-one documented the fact that this document uses fields for version info. and the editor probably didn't understand what on earth these fields did. In Word, updating fields generally overwrites typed results, but in some cases (e.g. { HYPERLINK } fields, that isn't the case.
    – user181946
    Jun 20, 2013 at 20:55

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .