[sword-devel] Dictionary ordering

Ben Morgan benpmorgan at gmail.com
Wed Sep 17 16:22:22 MST 2008

The issue with ordering as I understand it is that if it is in (some form
of) sorted order, you can use binary search to find entries.
If you want order retained, it is best to use a genbook - but it won't be as
efficient, and may not have as good UI support.
With huge english dictionaries (like Webster's, for instance) this becomes
very important.

From BPBible's perspective, dictionary handling is done as follows:
1. Read the index of the dictionary and divide by 4 or 6 to get the length
(depending on the driver)
2. Set the virtual list length to the dictionary length
3. When any item is displayed in the virtual list, it retrieves it from the
4. When the user starts typing in the text box above, it does a binary
search to find which item to display.

4 is already quite slow enough on big dictionaries - by having it unsorted,
it would make it quite a lot slower, I imagine.
All the keys from the module would have to be read in, which takes a while.

God Bless,
The Lord is not slow to fulfill his promise as some count slowness,
but is patient toward you, not wishing that any should perish,
but that all should reach repentance.
2 Peter 3:9 (ESV)

On Thu, Sep 18, 2008 at 12:43 AM, Daniel Owens <dhowens at pmbx.net> wrote:

> mention that byte ordering does some strange things to Vietnamese
> dictionaries. The Vietnamese script is a Latin script, but because it uses
> some odd characters code point ordering results in illogical and
> non-alphabetical entry ordering. For example, the "d" with a line through it
> (đ) gets relegated to near the end of the dictionary instead of after the
> regular "d" or anything with an apostrophe at the beginning of a word or
> phrase gets moved to the top of the list regardless of the first letter
> (such as 'tis). I am supportive of the IIRC general opinion. Let the module
> creator worry about the ordering. Otherwise you get some very strange
> dictionary behavior.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.crosswire.org/pipermail/sword-devel/attachments/20080918/76f95bf5/attachment.html 

More information about the sword-devel mailing list