Troy A. Griffitts wrote:
OK, so would this be a fair assessment of the requests on the table?

To the C++ Engine add searching in:

$HOME/Library/Application Support/sword
$APPDATA/sword
$ALLUSERSPROFILE/sword

Change the C++ Engine to 'augment' the installed module list with any works found on any path, instead of the precedence implemented currently.

Add the concept of an 'install location' to be the 'first' found writable location.

Make both JSword and SWORD operate exactly the same for module set lookups.

Here is the code that JSword uses to:
1) construct a list of locations containing modules
2) determine which of these is the "first" writeable location.

You will see that it is very close to what SWORD does and closer to what Troy suggests. It does not deal with ALLUSERSPROFILE. This would be trivial to add.

http://crosswire.org/svn/jsword/trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/SwordBookPath.java

Note: this uses the OSType class to determine where os specific "app data" should be located. You'll notice, it does it last. This is so it plays well with BibleCS as it stands today.

Also note, this has migration code to move the repository from .jsword to the "first" writeable location that it finds. That is, it moves it from a non-standard location to a standard one.

I don't know if SWORD has a mechanism that is exposed by the front-ends to allow a user to specify their preferred DataPath and AugmentDataPath. This is something that JSword defines and BibleDesktop uses. Currently this is written to desktop.properties. This probably should be written to sword.conf in an appropriate directory.

In Christ,
   DM



_______________________________________________
sword-devel mailing list: sword-devel@crosswire.org
http://www.crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page

Reply via email to