Archive for June, 2009

notes on OOo and ARM

Monday, June 29th, 2009

To build OOo under ARM, (an apparently massively popular hobby in China at the moment for some reason other), try downloading the normal source from www.openoffice.org and…

./configure
make

that should go a long way. Though for < 3.2 you may need (ooo#100469) applied.

Of course, given that ARM isn’t generally fast, then there are likely cross-compilers, qemu-user hackery, or other stuff involved, but nothing specific to OOo, so if you can, say, build gedit with your environment, then OOo should generally build fine too. Try the same hackery you’d try with a simpler project with OOo.

And it is not porting something to simply build it. You actively have to change something before bandying around the term porting

MS XML decryption

Friday, June 26th, 2009

Based on Bill Seddon’s rather excellent notes I’ve implemented decrypting MS XML documents, though only tested it on .xlsx files protected with the default VanillaSweatshop password.

MSO new-format encrypted documents aren’t in .zip format, but instead the .zip is encrypted and bundled as a stream into a classic OLE2 structured storage container which has some other streams that describe how it’s encrypted. Unlike our own which remain as .zips with encrypted streams.

DEV300_m50

Thursday, June 11th, 2009

DEV300_m50 callcatcher report, now back under 1000 again as chart2 unused removal etc. comes on stream

line numbering doc odt im/ex

Thursday, June 4th, 2009

In both word (2007) and writer (3.1.0) paragraphs can opt out of line numbering at a paragraph level. On the other hand though, restarting line numbering is done at a paragraph level in writer, but at a section level in word. Which is unfortunate for an interoperability point of view.

For doc->odt conversion it’s fairly easy, just whack the restart value from the word section onto the first paragraph following that section break and all is well, though we have to be careful when munging two facts from the doc of a) paragraph opts-in/out of line numbering and b) section declares that line-numbering starts at value X, into one writer fact of “line numbering properties for a paragraph to not overwrite the other half of the fact.

On odt->doc, its not so easy. In the case where we’re re-exporting a odt which was imported from a doc then we can on export of a section have a quick peek to see if the first paragraph of that section happens to have a restart line numbering property and if so place it on the exported section. That’ll take care of doc->odt->doc round-tripping at least. where the final doc is the same as the initial doc

But for the generic odt->doc case we can’t be sure of a handy section existing right before a paragraph that uses restart line numbering so as to load the paragraph restart number onto the section. I guess we could add that circumstance to the already complicated reasons to export a section logic, its not an appealing solution, but the only one I can think of