[sword-devel] diatheke methods exportable?

Chris Little chrislit at crosswire.org
Mon Feb 3 14:32:43 MST 2014

On 01/23/2014 05:11 AM, Peter von Kaehne wrote:
> This a tentative question mostly re the doquery method of our diatheke.
> I think it would be really useful if we could have this method somehow
> be more part of our offerings, including e.g. in the bindings etc.
> Reason: We are currently very much geared towards interactive continuous
> Bible reading/study, but the doquery method represents an option which
> is underutilised - a one-off static request for some text. No follow up.
> This could e.g. be used very well for various word processor plugins etc
> - something we do not offer at all, but would be well placed to offer.
> The only current option for getting text from a sword text into e.g. an
> OpenOffice document is by way of cutting and pasting from a frontend.
> Similarly the various existing church projection software packages.
> Insofar as they are sword-aware they seem to go through great
> contortions of exporting texts into databases etc instead of actually
> using the library
> I am obviously aware that the doquery effect could be easily reached
> with a few lines of code, but why not offer an extremely simple to use
> and very comprehensive one-off output method which requires absolutely
> zero knowledge of the engine?
> I would be happy to run with this once I got my LaTeX filters where I
> want them. I probably would require some assistance dt my lack of
> knowledge and experience, but would do the bulk lifting.
> Opinions?

Higher level APIs aren't unheard of, so I wouldn't object to pushing 
diatheke's guts up into the library. It's conceivable we would want to 
split it into a few different functions, in case the application can 
stay open across multiple calls (though caching tends to make repeated 
calls to diatheke very quick anyway).

We could split doquery into something like an init function to construct 
the SWMgr, etc., the doquery function for repeated individual queries, 
and a cleanup function to free memory. But maybe that makes things too 
complicated already.


More information about the sword-devel mailing list