[sword-devel] Important questions

Joachim Ansorg sword-devel@crosswire.org
Sat, 17 Mar 2001 11:57:00 +0100


Hi Troy!

> Joachim,
> 	Had to backout one of the typename changes that you made for Borland
> C++Builder to like it.  Please let me know if you needed them both.
> I've commited what works for me.

Sorry, but it doesn't work.
I attached the messages (we compiled with the -pedantic flag because we use 
it in BibleTime. -pedantic checks for ISO C++ compliant code).

> Yes.  I agree.  Let's let's make a bookmark class.

This is great!
In our opinion we need at least the following features in the bookmark class:

-Folders with nested subfolders
-Each bookmark should have a key and a description. It should also hold the 
module type and the name of module it references, but it should work with all 
modules of the same type (Bible / Commentary / Lexicon).
-Bookmarks should be ex- and importable using files
-It should be possible to share the bookmarks with other users using a 
different locale

> 	o  You will no longer be able to share keys between modules.

Could you please explain this more detailed?

> 	o  We will need some kind of dynamic mapping mechanism, because now,
> the common mapping is done at module creation time by mapping all verses
> to KJV numbering.  Without this, we will still need a way to link
> between variant numberings

We do not need a new mapping system, we simply want to know which 
books/chapters/verses of the KJV scheme are available in a given module.
For example some modules do only have the New Testament. Commentaries do only 
have some keys commented.

> 	o  Numberings will not have the same index values, so when setting a
> key, a literal parse from one module's VerseKey to another will be
> necessary, making it slower.

If we still use the KJV numbering this is not necessary.

> Is there a way around it?  Why do you need this information?  I think
> you know you can get KJV numberings from the VerseKey::books structure,
> right?

We want to use the KJV, but it confuses users if some parts of a module show 
no text. We do only want to give them the available books etc.

> >  -We expect a copy constructor in swmodule to be the easiest way of
> > implementing thread safe searching in bibletime. 

> Planned.  Actually, I was also trying to figure out a way to make
> Searching thread-safe without copying the module.

We'd like to help if you want.

> >  -We would like the current status of the new search engine
> > implementation.
>
> Not sure.  Barry Drake just volunteered to do an implementation.  :)
> (just kidding, Barry)

Maybe Trevor?
We'd be very pleased to see a new fast search engine, because this is really 
required for a good Bible study tool.

make[1]: Entering directory `/mnt/misc/cvs/sword/sword/tests'
gcc -I../include/ -D_GNU_SOURCE -DNDEBUG -D_GNU_SOURCE -DNDEBUG -pipe -Wall 
-Wno-format -pedantic  -DZLIBSUPPORTED -pg -O3 -m486 -o configtest 
configtest.cpp   -L../lib/  -lsword -lstdc++ -lz
../include/swconfig.h: In method `class string & 
multimapwithdefault<basic_string<char,string_char_traits<char>,__default_alloc_template<true,0> 
>,basic_string<char,string_char_traits<char>,__default_alloc_template<true,0> 
>,less<basic_string<char,string_char_traits<char>,__default_alloc_template<true,0> 
> > >::operator [](const string &)':
configtest.cpp:6:   instantiated from here
../include/swconfig.h:44: invalid use of member 
`multimap<basic_string<char,string_char_traits<char>,__default_alloc_template<true,0> 
>,basic_string<char,string_char_traits<char>,__default_alloc_template<true,0> 
>,less<basic_string<char,string_char_traits<char>,__default_alloc_template<true,0> 
> 
>,allocator<basic_string<char,string_char_traits<char>,__default_alloc_template<true,0> 
> > >::value_type'
make[1]: *** [configtest] Error 1
make[1]: Leaving directory `/mnt/misc/cvs/sword/sword/tests'
make: *** [tests/targets] Error 2


Joachim and Martin
-- 
Joachim Ansorg
BibleTime - www.bibletime.de - info@bibletime.de
BibleTime is an easy to use Bible study tool for KDE / Linux.