Re: [Libreoffice] [GSOC] how to call python code from the menu

2011-09-18 Thread Xisco Faulí
Hello,

I've tried your patch and it works perfectly. What i'm trying now is to
import from CallWizard.py another file.
Let's imagine I have a file in fax/ called Test.py that looks like this:

class Test():

def __init__(self):
print "it works"

I add it to Pyuno_fax.mk

$(eval $(call gb_Pyuno_add_files,fax,\
CallWizard.py \
Test.py \
))

and then I import it in CallWizard.py like: from Test import Test but it
doesn't work ( I've also tried from com.sun.star.wizards.fax.Test import
Test )

any idea ?

2011/9/7 Caolán McNamara 

> On Wed, 2011-09-07 at 11:24 +0100, Caolán McNamara wrote:
> > On Tue, 2011-09-06 at 19:49 +0200, Xisco Faulí wrote:
> > > Hello,
> > >
> > >
> > > I've tried to follow your steps but placing the code in
> > > wizards/com/sun/star/wizards/fax/CallWizard.py. So far I haven't been
> > > able to build it successfully. It complains and says: ERROR: File not
> > > found: CallWizard.py
> >
> > I see that wizards has been converted to gmake in the meantime, so it no
> > longer uses dmake makefile.mk stuff, we need some gbuild support for
> > copying .py files into their final locations with some form of
> > pyuno .component file support support.
>
> dtardon was good enough to put together the gmake stuff needed to get
> this bootstrapped, which are now committed to master.
>
> So here's your patch back again, except "gbuildified" so this should
> work to make wizards->fax stick hello world into writer.
>
> There's still a lot of nasty things, dumping the .py directly into
> "program" as opposed to making some sort of subdir into which they can
> go, but maybe it'll help
>
> C.
>
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] [GSOC] how to call python code from the menu

2011-09-07 Thread Caolán McNamara
On Wed, 2011-09-07 at 11:24 +0100, Caolán McNamara wrote:
> On Tue, 2011-09-06 at 19:49 +0200, Xisco Faulí wrote:
> > Hello,
> > 
> > 
> > I've tried to follow your steps but placing the code in
> > wizards/com/sun/star/wizards/fax/CallWizard.py. So far I haven't been
> > able to build it successfully. It complains and says: ERROR: File not
> > found: CallWizard.py
> 
> I see that wizards has been converted to gmake in the meantime, so it no
> longer uses dmake makefile.mk stuff, we need some gbuild support for
> copying .py files into their final locations with some form of
> pyuno .component file support support.

dtardon was good enough to put together the gmake stuff needed to get
this bootstrapped, which are now committed to master.

So here's your patch back again, except "gbuildified" so this should
work to make wizards->fax stick hello world into writer.

There's still a lot of nasty things, dumping the .py directly into
"program" as opposed to making some sort of subdir into which they can
go, but maybe it'll help

C.
>From 9e5fa73cecb5ce2676bde611e4ab38611c9533d4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= 
Date: Wed, 7 Sep 2011 17:15:52 +0100
Subject: [PATCH] demo, for the purposes of saying hello world

---
 instsetoo_native/util/makefile.mk  |1 +
 .../registry/data/org/openoffice/Office/Common.xcu |2 +-
 postprocess/packcomponents/makefile.mk |2 +-
 scp2/source/ooo/file_ooo.scp   |   12 ++
 scp2/source/ooo/module_hidden_ooo.scp  |2 +-
 scripting/prj/d.lst|1 +
 wizards/Module_wizards.mk  |2 +-
 wizards/Pyuno_fax.mk   |   34 
 wizards/com/sun/star/wizards/fax/CallWizard.py |  175 
 wizards/com/sun/star/wizards/fax/fax.component |6 +-
 11 files changed, 87 insertions(+), 152 deletions(-)
 create mode 100644 wizards/Pyuno_fax.mk

diff --git a/instsetoo_native/util/makefile.mk b/instsetoo_native/util/makefile.mk
index 6880750..fc1cc61 100644
--- a/instsetoo_native/util/makefile.mk
+++ b/instsetoo_native/util/makefile.mk
@@ -74,6 +74,7 @@ LOCALPYFILES= \
 $(BIN)$/pythonloader.py \
 $(BIN)$/officehelper.py \
 $(BIN)$/mailmerge.py \
+$(BIN)$/CallWizard.py \
 $(BIN)$/msgbox.py
 .ENDIF
 
diff --git a/officecfg/registry/data/org/openoffice/Office/Common.xcu b/officecfg/registry/data/org/openoffice/Office/Common.xcu
index 998ab38..85d4480 100644
--- a/officecfg/registry/data/org/openoffice/Office/Common.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/Common.xcu
@@ -400,7 +400,7 @@
   
   
 
-  service:com.sun.star.wizards.fax.CallWizard?start
+  service:com.sun.star.wizards.fax.CallWizard?insert
 
 
   ~Fax...
diff --git a/postprocess/packcomponents/makefile.mk b/postprocess/packcomponents/makefile.mk
index 33f0f01..05bf897 100644
--- a/postprocess/packcomponents/makefile.mk
+++ b/postprocess/packcomponents/makefile.mk
@@ -370,7 +370,7 @@ my_components += evoab
 my_components += component/avmedia/source/gstreamer/avmediagstreamer
 .END
 
-my_ooo_components = mailmerge
+my_ooo_components = mailmerge component/wizards/com/sun/star/wizards/fax/fax
 
 .INCLUDE: target.mk
 
diff --git a/scp2/source/ooo/file_ooo.scp b/scp2/source/ooo/file_ooo.scp
index 61589b6..4583dec 100644
--- a/scp2/source/ooo/file_ooo.scp
+++ b/scp2/source/ooo/file_ooo.scp
@@ -472,6 +472,18 @@ STD_JAR_FILE( gid_File_Jar_Saxon, saxon9 )
 #endif
 #endif
 
+#ifndef AIX
+#ifndef DISABLE_PYUNO
+File gid_File_PyFax
+TXT_FILE_BODY;
+Dir = gid_Dir_Program;
+Name = "CallWizard.py";
+Styles = (PACKED);
+End
+#endif
+#endif
+
+
 #ifndef SYSTEM_LIBTEXTCAT_DATA
 // fingerprint files (lm)
 
diff --git a/scp2/source/ooo/module_hidden_ooo.scp b/scp2/source/ooo/module_hidden_ooo.scp
index 273f802..c25c87b 100644
--- a/scp2/source/ooo/module_hidden_ooo.scp
+++ b/scp2/source/ooo/module_hidden_ooo.scp
@@ -139,7 +139,7 @@ Module gid_Module_Root_Files_3
 	gid_File_Jar_Table,
 	gid_File_Jar_Letter,
 	gid_File_Jar_Form,
-	gid_File_Jar_Fax,
+	gid_File_PyFax,
 	gid_File_Jar_Agenda,
 	gid_File_Jar_Web,
 	gid_File_Jar_Query,
diff --git a/scripting/prj/d.lst b/scripting/prj/d.lst
index f1caf45..5deedbe 100644
--- a/scripting/prj/d.lst
+++ b/scripting/prj/d.lst
@@ -16,6 +16,7 @@ mkdir: %_DEST%\bin\pyuno
 
 ..\%__SRC%\lib\lib*static*.dylib %_DEST%\lib\lib*static*.dylib
 ..\%__SRC%\misc\mailmerge.component %_DEST%\xml\mailmerge.component
+..\%__SRC%\misc\fax.component %_DEST%\xml\fax.component
 ..\%__SRC%\misc\ScriptFramework.component %_DEST%\xml\ScriptFramework.component
 ..\%__SRC%\misc\ScriptProviderForJava.component %_DEST%\xml\ScriptProviderForJava.component
 ..\%__SRC%\misc\basprov.component %_DEST%\xml\basprov.component
diff --git a/wizards/Module_wizards.mk b/wizards/Module_wizards.mk
index 7f08d0f..090a429 100644
--- a/wizards/Module_wizards

Re: [Libreoffice] [GSOC] how to call python code from the menu

2011-09-07 Thread Caolán McNamara
On Tue, 2011-09-06 at 19:49 +0200, Xisco Faulí wrote:
> Hello,
> 
> 
> I've tried to follow your steps but placing the code in
> wizards/com/sun/star/wizards/fax/CallWizard.py. So far I haven't been
> able to build it successfully. It complains and says: ERROR: File not
> found: CallWizard.py

I see that wizards has been converted to gmake in the meantime, so it no
longer uses dmake makefile.mk stuff, we need some gbuild support for
copying .py files into their final locations with some form of
pyuno .component file support support.

C.


___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] [GSOC] how to call python code from the menu

2011-09-06 Thread Xisco Faulí
Hello,

I've tried to follow your steps but placing the code in
wizards/com/sun/star/wizards/fax/CallWizard.py. So far I haven't been able
to build it successfully. It complains and says: ERROR: File not found:
CallWizard.py

I attach a file with the changes I've done.

Greetings

2011/8/17 Caolán McNamara 

> On Wed, 2011-08-17 at 09:06 +0100, Caolán McNamara wrote:
> > I imagine that if you basically opengrok for mailmerge.py and
> > mailmerge.component and follow the same pattern for your one that it'll
> > get you a lot closer.
>
> Seeing as this is a bit tricky to get up and running, attached is a
> rough-and-ready patch to turn wizards->letter into "hello world" in
> python.
>
> i.e.
>
> a) add a "hello_world.component" (which gets run through the usual xslt
> script via the local makefile.mk to tweak it to give the right location
> where the .py will finally get installed) that describes a
> hello_world.py component. The .component has the implementation name,
> e.g. org.openoffice.comp.pyuno.demo.HelloWorld in it and the services it
> implements, e.g. com.sun.star.task.Job
>
> b) I added a hello_world.py that implements that, see its
> g_ImplementationHelper.addImplementation for the matching implementation
> name and services
>
> c) add that hello_world.component to "postprocess" where it will be
> basically added as an entry into the services.rdb in the final install
> sets install/program/services.rdb (which is an xml file these days. That
> should end up having " uri="vnd.openoffice.pymodule:hello_world"> name="org.openoffice.comp.pyuno.demo.HelloWorld"> name="com.sun.star.task.Job"/>"
> in it).
>
> d) change the wizards->letter line in officecfg to call it
>
> e) modify scp2 to install it
>
> f) I haven't a clue what the entry in instsetoo_native does anymore, I
> think I used to know :-)
>
> hope this helps.
>
> C.
>
From ac490d5f468ad36041ecd03e2761481be281c56a Mon Sep 17 00:00:00 2001
From: Xisco Fauli 
Date: Tue, 6 Sep 2011 19:39:20 +0200
Subject: [PATCH] call callwizard

---
 .../registry/data/org/openoffice/Office/Common.xcu |2 +-
 postprocess/packcomponents/makefile.mk |2 +-
 scp2/source/ooo/file_ooo.scp   |   12 ++
 scp2/source/ooo/module_hidden_ooo.scp  |1 +
 scripting/prj/d.lst|1 +
 wizards/com/sun/star/wizards/fax/CallWizard.py |  175 
 wizards/com/sun/star/wizards/fax/fax.component |6 +-
 wizards/com/sun/star/wizards/fax/makefile.mk   |8 +-
 8 files changed, 56 insertions(+), 151 deletions(-)

diff --git a/officecfg/registry/data/org/openoffice/Office/Common.xcu b/officecfg/registry/data/org/openoffice/Office/Common.xcu
index 998ab38..85d4480 100644
--- a/officecfg/registry/data/org/openoffice/Office/Common.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/Common.xcu
@@ -400,7 +400,7 @@
   
   
 
-  service:com.sun.star.wizards.fax.CallWizard?start
+  service:com.sun.star.wizards.fax.CallWizard?insert
 
 
   ~Fax...
diff --git a/postprocess/packcomponents/makefile.mk b/postprocess/packcomponents/makefile.mk
index addc3a2..ff264c8 100644
--- a/postprocess/packcomponents/makefile.mk
+++ b/postprocess/packcomponents/makefile.mk
@@ -364,7 +364,7 @@ my_components += evoab
 my_components += component/avmedia/source/gstreamer/avmediagstreamer
 .END
 
-my_ooo_components = mailmerge
+my_ooo_components = mailmerge component/wizards/com/sun/star/wizards/fax/fax
 
 .INCLUDE: target.mk
 
diff --git a/scp2/source/ooo/file_ooo.scp b/scp2/source/ooo/file_ooo.scp
index e77bdcf..3bc1eee 100644
--- a/scp2/source/ooo/file_ooo.scp
+++ b/scp2/source/ooo/file_ooo.scp
@@ -471,6 +471,18 @@ STD_JAR_FILE( gid_File_Jar_Saxon, saxon9 )
 #endif
 #endif
 
+#ifndef AIX
+#ifndef DISABLE_PYUNO
+File gid_File_PyFax
+TXT_FILE_BODY;
+Dir = gid_Dir_Program;
+Name = "CallWizard.py";
+Styles = (PACKED);
+End
+#endif
+#endif
+
+
 #ifndef SYSTEM_LIBTEXTCAT_DATA
 // fingerprint files (lm)
 
diff --git a/scp2/source/ooo/module_hidden_ooo.scp b/scp2/source/ooo/module_hidden_ooo.scp
index 9dd3ab1..287e277 100644
--- a/scp2/source/ooo/module_hidden_ooo.scp
+++ b/scp2/source/ooo/module_hidden_ooo.scp
@@ -139,6 +139,7 @@ Module gid_Module_Root_Files_3
 	gid_File_Jar_Table,
 	gid_File_Jar_Letter,
 	gid_File_Jar_Form,
+	gid_File_PyFax,
 	gid_File_Jar_Agenda,
 	gid_File_Jar_Web,
 	gid_File_Jar_Query,
diff --git a/scripting/prj/d.lst b/scripting/prj/d.lst
index f1caf45..5deedbe 100644
--- a/scripting/prj/d.lst
+++ b/scripting/prj/d.lst
@@ -16,6 +16,7 @@ mkdir: %_DEST%\bin\pyuno
 
 ..\%__SRC%\lib\lib*static*.dylib %_DEST%\lib\lib*static*.dylib
 ..\%__SRC%\misc\mailmerge.component %_DEST%\xml\mailmerge.component
+..\%__SRC%\misc\fax.component %_DEST%\xml\fax.component
 ..\%__SRC%\misc\ScriptFramework.component %_DEST%\xml\ScriptFramework.component
 ..\%__SRC%\misc\ScriptProviderForJava.component %_DEST%\xml\ScriptProviderForJava.

Re: [Libreoffice] [GSOC] how to call python code from the menu

2011-08-17 Thread Caolán McNamara
On Wed, 2011-08-17 at 09:06 +0100, Caolán McNamara wrote:
> I imagine that if you basically opengrok for mailmerge.py and
> mailmerge.component and follow the same pattern for your one that it'll
> get you a lot closer.

Seeing as this is a bit tricky to get up and running, attached is a
rough-and-ready patch to turn wizards->letter into "hello world" in
python.

i.e.

a) add a "hello_world.component" (which gets run through the usual xslt
script via the local makefile.mk to tweak it to give the right location
where the .py will finally get installed) that describes a
hello_world.py component. The .component has the implementation name,
e.g. org.openoffice.comp.pyuno.demo.HelloWorld in it and the services it
implements, e.g. com.sun.star.task.Job

b) I added a hello_world.py that implements that, see its
g_ImplementationHelper.addImplementation for the matching implementation
name and services

c) add that hello_world.component to "postprocess" where it will be
basically added as an entry into the services.rdb in the final install
sets install/program/services.rdb (which is an xml file these days. That
should end up having "" in 
it).

d) change the wizards->letter line in officecfg to call it

e) modify scp2 to install it

f) I haven't a clue what the entry in instsetoo_native does anymore, I
think I used to know :-)

hope this helps.

C.
diff --git a/instsetoo_native/util/makefile.mk b/instsetoo_native/util/makefile.mk
index 8132e8c..137ea2f 100644
--- a/instsetoo_native/util/makefile.mk
+++ b/instsetoo_native/util/makefile.mk
@@ -69,6 +69,7 @@ LOCALPYFILES= \
 $(BIN)$/pythonloader.py \
 $(BIN)$/officehelper.py \
 $(BIN)$/mailmerge.py \
+$(BIN)$/hello_world.py \
 $(BIN)$/msgbox.py
 .ENDIF
 
diff --git a/officecfg/registry/data/org/openoffice/Office/Common.xcu b/officecfg/registry/data/org/openoffice/Office/Common.xcu
index 998ab38..305f36a 100644
--- a/officecfg/registry/data/org/openoffice/Office/Common.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/Common.xcu
@@ -386,7 +386,7 @@
 
   
 
-  service:com.sun.star.wizards.letter.CallWizard?start
+  service:org.openoffice.comp.pyuno.demo.HelloWorld?insert
 
 
   ~Letter...
diff --git a/postprocess/packcomponents/makefile.mk b/postprocess/packcomponents/makefile.mk
index bdfecb4..689792d 100644
--- a/postprocess/packcomponents/makefile.mk
+++ b/postprocess/packcomponents/makefile.mk
@@ -376,7 +376,7 @@ my_components += avmediagstreamer
 my_components += avmedia.jar
 .END
 
-my_ooo_components = mailmerge
+my_ooo_components = mailmerge hello_world
 
 .INCLUDE: target.mk
 
diff --git a/pyuno/demo/hello_world_comp.py b/pyuno/demo/hello_world_comp.py
deleted file mode 100644
index 32f4056..000
--- a/pyuno/demo/hello_world_comp.py
+++ /dev/null
@@ -1,43 +0,0 @@
-# -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
-
-import uno
-import unohelper
-
-from com.sun.star.task import XJobExecutor
-
-# implement a UNO component by deriving from the standard unohelper.Base class
-# and from the interface(s) you want to implement.
-class HelloWorldJob(unohelper.Base, XJobExecutor):
-def __init__(self, ctx):
-# store the component context for later use
-self.ctx = ctx
-
-def trigger(self, args):
-# note: args[0] == "HelloWorld", see below config settings
-
-# retrieve the desktop object
-desktop = self.ctx.ServiceManager.createInstanceWithContext(
-"com.sun.star.frame.Desktop", self.ctx)
-
-# get current document model
-model = desktop.getCurrentComponent()
-
-# access the document's text property
-text = model.Text
-
-# create a cursor
-cursor = text.createTextCursor()
-
-# insert the text into the document
-text.insertString(cursor, "Hello World", 0)
-
-# pythonloader looks for a static g_ImplementationHelper variable
-g_ImplementationHelper = unohelper.ImplementationHelper()
-
-g_ImplementationHelper.addImplementation( \
-HelloWorldJob,   # UNO object class
-"org.openoffice.comp.pyuno.demo.HelloWorld", # implemenation name
-("com.sun.star.task.Job",),) # list of implemented services
- # (the only service)
-
-# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/scp2/source/ooo/file_ooo.scp b/scp2/source/ooo/file_ooo.scp
index d48bba1..a1c0e77 100644
--- a/scp2/source/ooo/file_ooo.scp
+++ b/scp2/source/ooo/file_ooo.scp
@@ -2126,6 +2126,17 @@ File gid_File_Extension_Dictionary_Zu
 End
 #endif
 
+#ifndef AIX
+#ifndef DISABLE_PYUNO
+File gid_File_PyHelloWorld
+TXT_FILE_BODY;
+Dir = gid_Dir_Program;
+Name = "hello_world.py";
+Styles = (PACKED);
+End
+#endif
+#endif
+
 // #ifdef BUILD_SPECIAL
 // File gid_File_Extension_Oxt_Oooimprovement
 //Name = "OOoImprovement.oxt";
diff --git a/scp2/source/ooo/module_hidden_ooo.scp b/scp2/

Re: [Libreoffice] [GSOC] how to call python code from the menu

2011-08-17 Thread Caolán McNamara
On Tue, 2011-08-16 at 19:29 +0200, Xisco Faulí wrote:
> Thank you for pointing out this file but I don't really understand how
> it works.
> The wizard is called here :
> http://opengrok.libreoffice.org/xref/core/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu#441
>  where MailMergeWizard is the service register in Writer.xcu ( 
> http://opengrok.libreoffice.org/xref/core/officecfg/registry/data/org/openoffice/Office/Writer.xcu#30
>  ) but then 

I the case of mailmerge the thing that the menus calls then goes on to
call the mailmerge service, so the menus don't call it directly.

I imagine your example to call a python service directly from the menus
is correct, except that the service you want to call needs to be
registered first.

> how libo knows that this service refers to mailmerge.py ?

http://opengrok.libreoffice.org/xref/core/scripting/source/pyprov/mailmerge.component
is the magic bit which connects uses of the
"com.sun.star.mail.MailServiceProvider" service to the mailmerge.py
implementation. With these .component files 

I imagine that if you basically opengrok for mailmerge.py and
mailmerge.component and follow the same pattern for your one that it'll
get you a lot closer.

Your current code is in a feature branch ?, which one ?

C.


___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] [GSOC] how to call python code from the menu

2011-08-16 Thread Xisco Faulí
Thank you for pointing out this file but I don't really understand how it
works.
The wizard is called here :
http://opengrok.libreoffice.org/xref/core/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu#441
where
MailMergeWizard is the service register in Writer.xcu (
http://opengrok.libreoffice.org/xref/core/officecfg/registry/data/org/openoffice/Office/Writer.xcu#30
)
but then how libo knows that this service refers to mailmerge.py ?

Greetings

2011/8/16 Caolán McNamara 

> On Mon, 2011-08-15 at 19:02 +0200, Xisco Faulí wrote:
> > Hello everybody,
> >
> >
> > before I merge the gsoc branch into master I'd like to integrate the
> > python code into libo and get rid of the java code.
> > I know i have to edit this file
> >
> http://opengrok.libreoffice.org/xref/core/officecfg/registry/data/org/openoffice/Office/Common.xcubut
>  i can't figure out how to call the python code.  I've tried to call this
> file
> http://opengrok.libreoffice.org/xref/core/pyuno/demo/hello_world_comp.pyusing 
> this value:
> service:org.openoffice.comp.pyuno.demo.HelloWorld?insert but
> it doesn't work. Any idea ?
>
> Perhaps hello_world_comp.py isn't registered as a service ?
>
> Did you look at how the mailmerge.py example is installed ?, i.e.
> http://opengrok.libreoffice.org/search?q=mailmerge.py for a python
> component which is bundled into LibreOffice.
>
> You may have to do pretty much the same thing for it be available via
> service:...?foo out-of-the-box. There's some preamble at the top of
> mailmerge.py about how to manually register that component for testing
> purposes, which is probably the archaic way to do it these-days, but
> probably still works.
>
> C.
>
>
>
>
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] [GSOC] how to call python code from the menu

2011-08-16 Thread Caolán McNamara
On Mon, 2011-08-15 at 19:02 +0200, Xisco Faulí wrote:
> Hello everybody,
> 
> 
> before I merge the gsoc branch into master I'd like to integrate the
> python code into libo and get rid of the java code.
> I know i have to edit this file
> http://opengrok.libreoffice.org/xref/core/officecfg/registry/data/org/openoffice/Office/Common.xcu
>  but i can't figure out how to call the python code.  I've tried to call this 
> file http://opengrok.libreoffice.org/xref/core/pyuno/demo/hello_world_comp.py 
> using this value: 
> service:org.openoffice.comp.pyuno.demo.HelloWorld?insert but 
> it doesn't work. Any idea ?

Perhaps hello_world_comp.py isn't registered as a service ?

Did you look at how the mailmerge.py example is installed ?, i.e.
http://opengrok.libreoffice.org/search?q=mailmerge.py for a python
component which is bundled into LibreOffice.

You may have to do pretty much the same thing for it be available via
service:...?foo out-of-the-box. There's some preamble at the top of
mailmerge.py about how to manually register that component for testing
purposes, which is probably the archaic way to do it these-days, but
probably still works.

C.



___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice