rwv2 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/History.txt ADDED
@@ -0,0 +1,5 @@
1
+ === 0.6.0 / 22.12.2010
2
+
3
+ * gem package is out!
4
+
5
+ * Birthday! Beer! Christmas!
data/INSTALL ADDED
@@ -0,0 +1,112 @@
1
+ Installing Programs with install.rb / setup.rb
2
+ ==============================================
3
+
4
+ Overview
5
+ --------
6
+
7
+ Type these lines on command line:
8
+ ("#" line may require root privilege)
9
+
10
+ $ ruby install.rb config
11
+ $ ruby install.rb setup
12
+ # ruby install.rb install
13
+
14
+
15
+ There's no difference in a usage between install.rb
16
+ and setup.rb.
17
+
18
+ $ ruby setup.rb config
19
+ $ ruby setup.rb setup
20
+ # ruby setup.rb install
21
+
22
+
23
+ Details
24
+ -------
25
+
26
+ Usage of install.rb/setup.rb is:
27
+
28
+ ruby install.rb <global options>
29
+ ruby install.rb [<global options>] <task> [<task options>]
30
+
31
+
32
+ -q,--quiet
33
+ suppress message outputs
34
+ --verbose
35
+ output messages verbosely (default)
36
+ -h,--help
37
+ prints help and quit
38
+ -v,--version
39
+ prints version and quit
40
+ --copyright
41
+ prints copyright and quit
42
+
43
+ These are acceptable tasks:
44
+ config
45
+ saves configurations
46
+ show
47
+ prints current configurations
48
+ setup
49
+ compiles extentions
50
+ install
51
+ installs files
52
+ clean
53
+ cleans created files
54
+
55
+ Task Options for Config
56
+ -----------------------
57
+
58
+ --prefix=PATH
59
+ a prefix of the installing directory path
60
+ --std-ruby=PATH
61
+ the directory for standard ruby libraries
62
+ --site-ruby-common=PATH
63
+ the directory for version-independent non-standard
64
+ ruby libraries
65
+ --site-ruby=PATH
66
+ the directory for non-standard ruby libraries
67
+ --bin-dir=PATH
68
+ the directory for commands
69
+ --rb-dir=PATH
70
+ the directory for ruby scripts
71
+ --so-dir=PATH
72
+ the directory for ruby extentions
73
+ --data-dir=PATH
74
+ the directory for shared data
75
+ --ruby-path=PATH
76
+ path to set to #! line
77
+ --ruby-prog=PATH
78
+ the ruby program using for installation
79
+ --make-prog=NAME
80
+ the make program to compile ruby extentions
81
+ --without-ext
82
+ forces to install.rb never to compile/install
83
+ ruby extentions.
84
+ --rbconfig=PATH
85
+ your rbconfig.rb to load
86
+
87
+ You can view default values of these options by typing
88
+
89
+ $ ruby install.rb --help
90
+
91
+
92
+ In addition, setup.rb accepts these options:
93
+ --with=NAME,NAME,NAME...
94
+ package names which you want to install
95
+ --without=NAME,NAME,NAME...
96
+ package names which you do not want to install
97
+
98
+ [NOTE] You can pass options for extconf.rb like this:
99
+
100
+ ruby install.rb config -- --with-tklib=/usr/lib/libtk-ja.so.8.0
101
+
102
+
103
+ Task Options for Install
104
+ ------------------------
105
+
106
+ --no-harm
107
+ prints what to do and done nothing really.
108
+ --prefix=PATH
109
+ a prefix of the installing directory path.
110
+ This option may help binary package maintainers.
111
+ A default value is an empty string.
112
+
data/InstalledFiles ADDED
@@ -0,0 +1,3 @@
1
+ /usr/lib/ruby/site_ruby/1.8/rwv2/handlers.rb
2
+ /usr/lib/ruby/site_ruby/1.8/rwv2/rwv2.rb
3
+ /usr/lib/ruby/site_ruby/1.8/i686-linux/./rwv2.so
data/Manifest.txt ADDED
@@ -0,0 +1,42 @@
1
+ COPYING
2
+ History.txt
3
+ INSTALL
4
+ InstalledFiles
5
+ Manifest.txt
6
+ README
7
+ README.txt
8
+ Rakefile
9
+ config.save
10
+ ext/rwv2/MANIFEST
11
+ ext/rwv2/Makefile
12
+ ext/rwv2/extconf.rb
13
+ ext/rwv2/include/rwv2.h
14
+ ext/rwv2/include/rwv2_associated_strings.h
15
+ ext/rwv2/include/rwv2_handlers.h
16
+ ext/rwv2/include/rwv2_parser.h
17
+ ext/rwv2/include/rwv2_properties.h
18
+ ext/rwv2/mkmf.log
19
+ ext/rwv2/rwv2.cpp
20
+ ext/rwv2/rwv2.o
21
+ ext/rwv2/rwv2.so
22
+ ext/rwv2/rwv2_handlers.cpp
23
+ ext/rwv2/rwv2_handlers.o
24
+ ext/rwv2/rwv2_parser.cpp
25
+ ext/rwv2/rwv2_parser.o
26
+ ext/rwv2/rwv2_properties.cpp
27
+ ext/rwv2/rwv2_properties.o
28
+ install.rb
29
+ lib/rwv2/handlers.rb
30
+ lib/rwv2/rwv2.rb
31
+ rwv2-0.2.3.patch
32
+ test/data/not_a_word_document.rtf
33
+ test/data/test.doc
34
+ test/data/test2.doc
35
+ test/data/test3.doc
36
+ test/data/test4.doc
37
+ test/data/test5.doc
38
+ test/data/test6.doc
39
+ test/data/test7.doc
40
+ test/data/test8.doc
41
+ test/data/test9.doc
42
+ test/test_parser.rb
data/README ADDED
@@ -0,0 +1,92 @@
1
+ Rwv2 README
2
+ ============
3
+
4
+ Wrapper for the wv2 library: parses Microsoft Word files. So far it fires
5
+ callbacks to a TextHandler, SubDocumentHandler, TableHandler and
6
+ InlineReplacementHandler if any of these are registered with the Parser.
7
+
8
+ Version
9
+ -------
10
+
11
+ 0.6.0
12
+
13
+
14
+ Requirements
15
+ ------------
16
+
17
+ * libwv2
18
+ * tested with ruby 1.8, let us know about other versions!
19
+
20
+
21
+ Install
22
+ -------
23
+
24
+ De-Compress archive and enter its top directory.
25
+ Then type:
26
+
27
+ $ ruby install.rb config [-- --with-wv2-{include,lib,dir}=path_to_wv2]
28
+ $ ruby install.rb setup
29
+ ($ su)
30
+ # ruby install.rb install
31
+
32
+ You can also install files into your favorite directory
33
+ by supplying setup.rb some options. Try "ruby setup.rb --help".
34
+
35
+
36
+ Usage
37
+ -----
38
+
39
+ require 'rwv2'
40
+ require 'rwv2/handlers'
41
+
42
+ class TextHandler < Rwv2::TextHandler
43
+ def run_of_text(text, character_properties)
44
+ puts text
45
+ end
46
+ end
47
+
48
+ parser = Rwv2.create_parser('test/data/test2.doc')
49
+ parser.set_text_handler(TextHandler.new)
50
+ parser.parse
51
+
52
+
53
+ ToDo
54
+ ----
55
+ * Rwv2 does not yet support the full set of Wordfile-Properties.
56
+ Notably missing are:
57
+ - Font Family Name (FFN)
58
+ - Tab Descriptor (TabDescriptor)
59
+ - Word-internal Date and Time (DTTM)
60
+ - Shading Descriptor (SHD)
61
+ - Paragraph Height (PHE)
62
+ - Border Code (BRC)
63
+ - Table Autoformat
64
+ - Autonumbering
65
+ and many more - I'm taking the YAGNI (you aren't gonna need it) approach to
66
+ most of these, if you actually do need one of them or any other feature let
67
+ me know...
68
+
69
+ * wvWare writes errors and warnings and infos directly to std::cerr - this can
70
+ possibly be caught by replacing cerrs buffer. The tricky thing then is to
71
+ raise/warn/ignore according to the buffers content, probably within a
72
+ separate thread...
73
+
74
+ * Some of the testing is unclean, as I've only tested with
75
+ OpenOffice-exported Wordfiles
76
+
77
+ * Documentation
78
+
79
+ License
80
+ -------
81
+
82
+ LGPL
83
+
84
+
85
+ URL: http://download.ywesee.com/ruby/rwv2
86
+ Authors: Rwv2 was written by Hannes Wyss <hwyss@ywesee.com>
87
+ wvWare was written by Caol�n McNamara
88
+ and is currently (22.8.2003) maintained by Dom Lachowicz
89
+ ~
90
+ ~
91
+ ~
92
+
data/README.txt ADDED
@@ -0,0 +1,73 @@
1
+ = rwv2
2
+
3
+ * http://scm.ywesee.com/?p=rwv2/.git;a=summary
4
+
5
+ == DESCRIPTION:
6
+
7
+ Wrapper for the wv2 library: parses Microsoft Word files. So far it fires
8
+ callbacks to a TextHandler, SubDocumentHandler, TableHandler and
9
+ InlineReplacementHandler if any of these are registered with the Parser.
10
+
11
+ == TODO:
12
+
13
+ * Rwv2 does not yet support the full set of Wordfile-Properties.
14
+ Notably missing are:
15
+ - Font Family Name (FFN)
16
+ - Tab Descriptor (TabDescriptor)
17
+ - Word-internal Date and Time (DTTM)
18
+ - Shading Descriptor (SHD)
19
+ - Paragraph Height (PHE)
20
+ - Border Code (BRC)
21
+ - Table Autoformat
22
+ - Autonumbering
23
+ and many more - I'm taking the YAGNI (you aren't gonna need it) approach to
24
+ most of these, if you actually do need one of them or any other feature let
25
+ me know...
26
+
27
+ * wvWare writes errors and warnings and infos directly to std::cerr - this can
28
+ possibly be caught by replacing cerrs buffer. The tricky thing then is to
29
+ raise/warn/ignore according to the buffers content, probably within a
30
+ separate thread...
31
+
32
+ * Some of the testing is unclean, as I've only tested with
33
+ OpenOffice-exported Wordfiles
34
+
35
+ * Documentation
36
+
37
+ == USAGE:
38
+
39
+ require 'rwv2'
40
+ require 'rwv2/handlers'
41
+
42
+ class TextHandler < Rwv2::TextHandler
43
+ def run_of_text(text, character_properties)
44
+ puts text
45
+ end
46
+ end
47
+
48
+ parser = Rwv2.create_parser('test/data/test2.doc')
49
+ parser.set_text_handler(TextHandler.new)
50
+ parser.parse
51
+
52
+ == REQUIREMENTS:
53
+
54
+ * libwv2
55
+ * tested with ruby 1.8, let us know about other versions!
56
+
57
+ == INSTALL:
58
+
59
+ * sudo gem install rwv2
60
+
61
+ == DEVELOPERS:
62
+
63
+ * Masaomi Hatakeyama
64
+ * Zeno R.R. Davatz
65
+ * Hannes Wyss (up to Version 0.6.0)
66
+
67
+ == LICENSE:
68
+
69
+ * GPLv2.1
70
+
71
+ == OTHER
72
+
73
+ * wvWare was written by Caol�n McNamara and is currently (22.8.2003) maintained by Dom Lachowicz
data/Rakefile ADDED
@@ -0,0 +1,28 @@
1
+ # -*- ruby -*-
2
+
3
+ require 'rubygems'
4
+ require 'hoe'
5
+
6
+ # Hoe.plugin :compiler
7
+ # Hoe.plugin :cucumberfeatures
8
+ # Hoe.plugin :gem_prelude_sucks
9
+ # Hoe.plugin :inline
10
+ # Hoe.plugin :inline
11
+ # Hoe.plugin :manifest
12
+ # Hoe.plugin :newgem
13
+ # Hoe.plugin :racc
14
+ # Hoe.plugin :rubyforge
15
+ # Hoe.plugin :rubyforge
16
+ # Hoe.plugin :website
17
+
18
+ Hoe.spec 'rwv2' do
19
+ # HEY! If you fill these out in ~/.hoe_template/Rakefile.erb then
20
+ # you'll never have to touch them again!
21
+ # (delete this comment too, of course)
22
+
23
+ developer('Masaomi Hatakeyama, Zeno R.R. Davatz', 'mhatakeyama@ywesee.com, zdavatz@ywesee.com')
24
+
25
+ # self.rubyforge_name = 'rwv2x' # if different than 'rwv2'
26
+ end
27
+
28
+ # vim: syntax=ruby
data/config.save ADDED
@@ -0,0 +1,12 @@
1
+ bin-dir=$prefix/bin
2
+ site-ruby=$prefix/lib/ruby/site_ruby/1.8
3
+ prefix=/usr
4
+ ruby-path=/usr/bin/ruby18
5
+ make-prog=make
6
+ rb-dir=$site-ruby
7
+ without-ext=no
8
+ ruby-prog=/usr/bin/ruby18
9
+ site-ruby-common=$prefix/lib/ruby/site_ruby
10
+ std-ruby=$prefix/lib/ruby/1.8
11
+ data-dir=$prefix/share
12
+ so-dir=$prefix/lib/ruby/site_ruby/1.8/i686-linux
data/ext/rwv2/MANIFEST ADDED
@@ -0,0 +1,9 @@
1
+ extconf.rb
2
+ rwv2.cpp
3
+ rwv2_handlers.cpp
4
+ rwv2_parser.cpp
5
+ rwv2_properties.cpp
6
+ include/rwv2.h
7
+ include/rwv2_handlers.h
8
+ include/rwv2_parser.h
9
+ include/rwv2_properties.h
data/ext/rwv2/Makefile ADDED
@@ -0,0 +1,150 @@
1
+
2
+ SHELL = /bin/sh
3
+
4
+ #### Start of system configuration section. ####
5
+
6
+ srcdir = /home/zeno/.software/rwv2/ext/rwv2
7
+ topdir = /usr/lib/ruby/1.8/i686-linux
8
+ hdrdir = $(topdir)
9
+ VPATH = $(srcdir):$(topdir):$(hdrdir)
10
+ prefix = $(DESTDIR)/usr
11
+ exec_prefix = $(DESTDIR)/usr
12
+ sitedir = $(DESTDIR)/usr/lib/ruby/site_ruby
13
+ rubylibdir = $(libdir)/ruby/$(ruby_version)
14
+ docdir = $(datarootdir)/doc/$(PACKAGE)
15
+ dvidir = $(docdir)
16
+ datarootdir = $(prefix)/share
17
+ archdir = $(rubylibdir)/$(arch)
18
+ sbindir = $(exec_prefix)/sbin
19
+ psdir = $(docdir)
20
+ localedir = $(datarootdir)/locale
21
+ htmldir = $(docdir)
22
+ datadir = $(DESTDIR)/usr/share
23
+ includedir = $(prefix)/include
24
+ infodir = $(DESTDIR)/usr/share/info
25
+ sysconfdir = $(DESTDIR)/etc
26
+ mandir = $(DESTDIR)/usr/share/man
27
+ libdir = $(exec_prefix)/lib
28
+ sharedstatedir = $(prefix)/com
29
+ oldincludedir = $(DESTDIR)/usr/include
30
+ pdfdir = $(docdir)
31
+ sitearchdir = $(sitelibdir)/$(sitearch)
32
+ localstatedir = $(DESTDIR)/var/lib
33
+ bindir = $(exec_prefix)/bin
34
+ sitelibdir = $(sitedir)/$(ruby_version)
35
+ libexecdir = $(exec_prefix)/libexec
36
+
37
+ CC = i686-pc-linux-gnu-gcc
38
+ LIBRUBY = $(LIBRUBY_SO)
39
+ LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
40
+ LIBRUBYARG_SHARED = -Wl,-R -Wl,$(libdir) -L$(libdir) -l$(RUBY_SO_NAME)
41
+ LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static
42
+
43
+ RUBY_EXTCONF_H =
44
+ CFLAGS = -fPIC -Os -march=pentium4 -pipe -fno-strict-aliasing -fPIC
45
+ INCFLAGS = -I. -I. -I/usr/lib/ruby/1.8/i686-linux -I/home/zeno/.software/rwv2/ext/rwv2
46
+ DEFS = -D_FILE_OFFSET_BITS=64
47
+ CPPFLAGS = -I./include -D_FILE_OFFSET_BITS=64
48
+ CXXFLAGS = $(CFLAGS)
49
+ DLDFLAGS = -L. -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -rdynamic -Wl,-export-dynamic
50
+ LDSHARED = $(CC) -shared
51
+ AR = i686-pc-linux-gnu-ar
52
+ EXEEXT =
53
+
54
+ RUBY_INSTALL_NAME = ruby18
55
+ RUBY_SO_NAME = ruby18
56
+ arch = i686-linux
57
+ sitearch = i686-linux
58
+ ruby_version = 1.8
59
+ ruby = /usr/bin/ruby18
60
+ RUBY = $(ruby)
61
+ RM = rm -f
62
+ MAKEDIRS = mkdir -p
63
+ INSTALL = /usr/bin/install -c
64
+ INSTALL_PROG = $(INSTALL) -m 0755
65
+ INSTALL_DATA = $(INSTALL) -m 644
66
+ COPY = cp
67
+
68
+ #### End of system configuration section. ####
69
+
70
+ preload =
71
+
72
+ libpath = . $(libdir) ./lib
73
+ LIBPATH = -L. -L$(libdir) -Wl,-R$(libdir) -L./lib
74
+ DEFFILE =
75
+
76
+ CLEANFILES = mkmf.log
77
+ DISTCLEANFILES =
78
+
79
+ extout =
80
+ extout_prefix =
81
+ target_prefix =
82
+ LOCAL_LIBS =
83
+ LIBS = $(LIBRUBYARG_SHARED) -lwv2 -lstdc++ -lpthread -lrt -ldl -lcrypt -lm -lc
84
+ SRCS = rwv2.cpp rwv2_handlers.cpp rwv2_parser.cpp rwv2_properties.cpp
85
+ OBJS = rwv2.o rwv2_handlers.o rwv2_parser.o rwv2_properties.o
86
+ TARGET = rwv2
87
+ DLLIB = $(TARGET).so
88
+ EXTSTATIC =
89
+ STATIC_LIB =
90
+
91
+ RUBYCOMMONDIR = $(sitedir)$(target_prefix)
92
+ RUBYLIBDIR = $(sitelibdir)$(target_prefix)
93
+ RUBYARCHDIR = $(sitearchdir)$(target_prefix)
94
+
95
+ TARGET_SO = $(DLLIB)
96
+ CLEANLIBS = $(TARGET).so $(TARGET).il? $(TARGET).tds $(TARGET).map
97
+ CLEANOBJS = *.o *.a *.s[ol] *.pdb *.exp *.bak
98
+
99
+ all: $(DLLIB)
100
+ static: $(STATIC_LIB)
101
+
102
+ clean:
103
+ @-$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES)
104
+
105
+ distclean: clean
106
+ @-$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log
107
+ @-$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES)
108
+
109
+ realclean: distclean
110
+ install: install-so install-rb
111
+
112
+ install-so: $(RUBYARCHDIR)
113
+ install-so: $(RUBYARCHDIR)/$(DLLIB)
114
+ $(RUBYARCHDIR)/$(DLLIB): $(RUBYARCHDIR) $(DLLIB)
115
+ $(INSTALL_PROG) $(DLLIB) $(RUBYARCHDIR)
116
+ install-rb: pre-install-rb install-rb-default
117
+ install-rb-default: pre-install-rb-default
118
+ pre-install-rb: Makefile
119
+ pre-install-rb-default: Makefile
120
+ $(RUBYARCHDIR):
121
+ $(MAKEDIRS) $@
122
+
123
+ site-install: site-install-so site-install-rb
124
+ site-install-so: install-so
125
+ site-install-rb: install-rb
126
+
127
+ .SUFFIXES: .c .m .cc .cxx .cpp .C .o
128
+
129
+ .cc.o:
130
+ $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
131
+
132
+ .cxx.o:
133
+ $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
134
+
135
+ .cpp.o:
136
+ $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
137
+
138
+ .C.o:
139
+ $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
140
+
141
+ .c.o:
142
+ $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) -c $<
143
+
144
+ $(DLLIB): $(OBJS) Makefile
145
+ @-$(RM) $@
146
+ $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
147
+
148
+
149
+
150
+ $(OBJS): ruby.h defines.h