Hi! Some time ago I read in the TWiki of Sword, that SWIG interface files for Sword would be cool. I never heard about SWIG, but I decided to try creating the necessary interface files after I read what SWIG is.
Now I have a basic set working. I added the files to bindings/swig/. The Makefile is not yet working properly with the automake system, but I hope I can fix this soon. At the moment it's a default Makefile made on my system, a perl module is created. The interface files have to be refined in future, but they're working for the basic things. For the curious: With the Swig interface files I can write the following in perl: -------------- $localemgr = sword::LocaleMgr::systemLocaleMgr(); $localemgr->setDefaultLocaleName("de"); $mgr = new sword::SWMgr(); $module = $mgr->module("WEB"); print "Description of module ", $module->Name(), ": \n\t", $module->Description(), "\n"; $key = new sword::VerseKey("Matthew 3:16"); $key->setPersist(1); $module->SetKey($key); for ($i = 0; $i < 15; $i++) { print "(", $module->KeyText() ,")\t", $module->StripText(), "\n"; $key->next(); } $module->write("This is a test entry! This tests the write abilities of the Sword Perl classes"); ---------------- As you can see the API is almost like Sword's C++ API, but operators are not supported. I renamed them (e.g. SWModule::operator << to SWModule::write). The last call writes into the module! I hope you find the interface files useful! I think we can even create bindings to Java, Phyton, Ruby etc. using SWIG, although I have not yet tried this. Joachim