Date: prev next · Thread: first prev next last
2013 Archives by date, by thread · List index


Thorsten Behrens writes:
jf@dockes.org wrote:
The modifications to mso-dumper would be as follows:

 - Make sure that all current output goes through the output() method
   inside glob.py instead of using direct print() calls
 - Add a command-line option to suppress printing from output()
 - Add a command-line option to accumulate and print the text from the
   String() and UniString() classes inside pptrecord.py: this would be the
   text extractor proper.

All very useful IMO.

A quick test of the approach based on commenting and changing the
appropriate statements shows that the text extraction work very well (after
the charset conversion fixes posted earlier).

However this would need small changes to the code (print statements mostly)
in many places, so I would appreciate some kind of pre-approval from the
code owners before going to work.

Go for it! Just one small wish, could you sort potential output into
~fitting classes of stuff, such that people could control output
verbosity, by e.g. requesting only 'Atom output', 'Text output' etc?

Just stick one extra parameter with the output class into all output()
method calls.

I've looked into this just a bit, and it's not obvious to me how this
should be done. For example the PPT-specific code accumulates text from
many places, and then prints the whole bunch by calling globals.output().

So for now, I've tried for minimal modifications to the existing code, just
separating the PPT text from all the rest.

It would also be useful to rename the "src" directory to something like
"msodump" so that the code can be installed as a Python package in a more
standard way (this would also need a change to the import statements in the
top level utilities).

Hah. Yeah, totally. And feel free to add whatever idiomatic code for
easy installation / packaging / testing to the toplevel dir.

I have renamed src/ to msodumper/ and added a basic setup.py to enable
using the usual Python setuptools.

"python setup.py install" will install ppt-dump.py to /usr/local/bin and
the package to the appropriate python dir under /usr/local/lib, with the
usual magic to choose a different prefix etc. It would be trivial to add
the other scripts (xls-dump etc.) of course, just add them to the 'scripts'
array. This should be an easy base for eventual distribution packaging.

The current code is here: https://github.com/medoc92/mso-dump

Everything should behave as previously except that:

 - Option --no-struct-output to ppt-dump.py will silence the structure dump.

 - Option --dump-text to ppt-dump.py will print the slides text as UTF-8.

I have checked on a number of files that the structure output is unchanged
in general (except for changes due to the Unicode fix).

I'm not opposed to doing a little more work on output selection, but we
should first discuss the desired features, maybe off-list as this is
probably not of general interest ?

Cheers,

jf

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.