[jsword-devel] JSword Help Wanted?
DM Smith
dmsmith555 at yahoo.com
Sun Jul 20 14:54:12 MST 2008
On Jul 20, 2008, at 3:29 PM, Adam Thomas wrote:
> Hello, I have been considering contributing to the JSword project
> for some time, but based on looking at the development mailing list
> archives it appears that very few bugs and enhancements are flowing
> in.
I'm working on getting 1.0.8 out the door. After that the major
enhancement will be what I have referred to the Elephant release. It
will add all kinds of persistence to the application. Search for
Elephant in jsword-devel to get a description. I won't repeat it here.
After the Elephant release we'll move on to 2.0.
> Most of the messages are other projects which use JSword, announcing
> their new releases. What bugs do come in appear to be immediately
> resolved by DM Smith.
I hope that is a compliment. I really don't want to stifle
contributions. There's a lot that can be done.
You are welcomed to figure out what would make the program more useful
to you, discuss it here and after getting consensus, make the change.
Where I started was to find bugs, report them and fix them. That
helped me understand how the code is laid out.
> I also am unable to view feature requests on the bug tracking
> system, as it appears to be down now.
It is down indefinitely. I am trying to bring it back up.
> The bottom line is there appears to be very little development work
> to be done from my perspective as an outsider. My question is, could
> this project use my Java skills, or is JSword pretty much in
> maintenance mode or doing fine with the current developer staff? If
> my skills can be utilized, where are the feature requests and bugs
> located so that I can get working?
Just to name a few needs/wants:
The various "Backends" that understand how the books (module) are laid
out need to have the ability to write a book. The first one that needs
to be done is the raw driver for Bibles. Once this one is done, BD can
be changed to allow editing of the Personal Commentary. (The personal
commentary is nothing than verse by verse notes.)
In Parallel view, we need to be able to have a font per column.
(Currently parallel view is driven by the first book's settings. ) We
already have the ability to define fonts per language and per book, as
well as globally. We just need to pass those into the xslt and use them.
In Parallel view, we need search to search all the books being viewed
that are indexed. We also need a way to allow for a user to index the
books that are being viewed in parallel. I think for the time being,
the result should be unified.
We need a way to highlight the hits of a resulting search request.
(Lucene has some highlighter code in contrib that might be useful.)
XSLT handling that's in BibleDestop needs to be refactored into Common
or JSword, (probably common).
In Ant, we need a way to conditionally run NSIS based upon whether it
is present.
The search engine needs a significant improvement in the handling of
non-ascii text. Currently we index the text exactly as we get it. We
need to also strip the accents/diacritics off and store that as well.
In BibleDesktop, we need an "Advanced Feature" to expose that. It
might be good to search both, meaning that the search request is
normalized to not have accents. It may also be good to store
transliterations. (E.g. romanizations of Chinese, Greek in English
characters, ...)
JSword should have the ability to remove cantillation from Hebrew
text. BD should make it available.
JSword should have the ability to remove accents from Hebrew and Greek
text. BD should make it available.
JSword should have the ability to transliterate in the same way that
Win Sword does. BD should make it available.
In BD, dictionaries are pretty useless (except for Strong's and
Robinson's). We need a way to have a user right click on a word and
get a popup of things about that word and things that they can do. One
would be to grab the word's definition from their preferred
dictionary. It would also be good to put Strong's Numbers and
Morphology in to the popup, whether they are showing.
For search, there are some things that can be done:
* Add an advanced feature to expose searching Notes.
* Add an advanced feature to expose searching Cross References. (I.e.
what are all the verses that refer to a particular verse)
* Add an advanced feature to expose searching of Strong's Numbers.
* Add find similar. Ideally, the user would either highlight text and
right click on it. Or right click in a verse and the popup would
search for similar verses.
* Add synonym/thesarus searching (contrib work is being done on this
in Lucene)
* Add the ability to search Strong's and Morphology at the same time
on a word/phrase basis. (This one is hard.)
For the book installer:
Re-write as a standalone program, preferably using RCP/SWT/JFace
rather than Swing.
Add a unified view of the books from a download site, showing what is
installed, available to install and available as an update. The
installer should also note when a module is more recent than what is
available from a download site. This happens when the module is in beta.
Add an option to check for updated modules automatically, providing a
simple popup with the option to download them by checking them off
from the list.
Allow the user to show/hide languages that they are not interested in.
There should be some kind of feedback that not all are showing (E.g.
"Showing 27 of 350 available modules")
The installer should be able to download a zip file directly by URL.
The installer should be able to list installed books that are not
available at any download site. On occasion there are modules that are
removed from CrossWire. Some users make available other books that one
might install as a zip file.
The installer needs to have the ability to download via FTP (the code
is in limbo right now. It should work). If downloading via zip does
not work, it should fall back to FTP.
Add a way that the user can filter by book feature. (e.g. show the
books that have strong's numbers, show ThML encoded books, ...).
Hopefully something here will be of interest or be a springboard for
an idea of your own.
Working together for Christ's Kingdom,
DM Smith
More information about the jsword-devel
mailing list