[sword-devel] dictionary user content

Jonathan Morgan jonmmorgan at gmail.com
Wed Nov 5 00:52:33 MST 2008

On Wed, Nov 5, 2008 at 3:48 PM, Matthew Talbert <ransom1982 at gmail.com> wrote:
> I have been working on a couple of projects and I would like to get some
> feedback. First, following Ben's suggestion, I have been working on updating
> Easton's dictionary with cross references and scripture references.
> Connected to that, I have created a prototype application for creating and
> editing dictionaries (and potentially other module types). It is called, for
> the moment, Sword Writer. It is located at http://sword.chaqar.com/admin and
> the test user is sword and password is sword1. It has several features so
> far, including restricted access to the main editing interface, unrestricted
> access to downloading the whole module, unrestricted access for posting
> comments about individual entries.
> Editing
> Find and entry you would like to change. Click on it. You will see a
> textarea called "Markdown text". This is psuedo-markdown language (psuedo
> because nothing is implemented except links, and they're not html links). A
> cross reference is marked like [Greek]($$$GREEK), and a scripture reference
> like [Genesis 1:1](Gen 1:1). The text is in [], the link is in (). You can
> see the resulting entry in "Encoded text". If you make a change to the
> markdown text, just click "Save and continue" to see the updated changes to
> the encoded text.
> Downloading Module
> You can download the module at any time by going to
> http://sword.chaqar.com/EastonLinked/. I recommend using wget rather than
> firefox for this. A sample script to download, convert to module, and move
> to the correct directories follows (you will need to create the directories
> and create the conf file):
> #! /bin/sh
> wget --output-document=EastonLinked.imp
> http://sword.chaqar.com/dictionary/EastonLinked
> imp2ld EastonLinked.imp EastonLinked z
> mv -f EastonLinked.dat
> ~/.sword/modules/lexdict/zld/eastonlinked/EastonLinked.dat
> mv -f EastonLinked.idx
> ~/.sword/modules/lexdict/zld/eastonlinked/EastonLinked.idx
> mv -f EastonLinked.zdt
> ~/.sword/modules/lexdict/zld/eastonlinked/EastonLinked.zdt
> mv -f EastonLinked.zdx
> ~/.sword/modules/lexdict/zld/eastonlinked/EastonLinked.zdx
> You can get the conf settings under Dicts -> EastonLinked in the admin
> interface.
> Comments
> You may add a comment without logging in by going to
> http://sword.chaqar.com/dictionary/EastonLinked/[DICTIONARY KEY]/comment.
> "Get" returns an html form. "Post" to the same url will post a comment.
> Status
> An entry may have different statuses: default, known errors, edited,
> proofread once, proofread twice. When a comment is added to an entry, the
> status changes to "known errors". The idea is that once the comment has been
> looked at, the status will be changed to "edited", then the comment may be
> proofread and marked proofread. Once it is proofread twice, it will be
> assumed correct unless another comment is entered.
> Vision
> The vision is to allow non-programmers (and programmers) to collaborate and
> help with editing and creating quality modules. In particular, my interest
> is to create an English dictionary that will cover all words in a few modern
> translations (say, ESV, NET, and NASB) complete with Scripture references
> for each entry, as well as an encylopedia covering all proper nouns in the
> same translations.
> Implementation
> Obviously, there is a lot of work to be done to the interface. The textareas
> are too small, there is no validation, etc. An interface for just
> proofreading would be nice as well. But the real hope is that some of the
> frontends might take advantage of the API to allow reporting problems or
> reporting that something has been proofread. For example, two buttons (one
> for "report problem" and one for "this is correct") could be added to an
> interface (perhaps optionally if someone wants to help) and everything could
> be done from within the frontend. Even more awesome would be the ability to
> update the module to the latest version from within the interface. It would
> require either a. generating the module automatically on the server, or b. a
> correctly set up sword system (not a problem on linux, but may not be easy
> on windows). It would not be hard to generate automatically server-side, if
> there was validation to ensure that the module could never exist in an
> incorrect state. All of this is open for discussion, of course; just some
> ideas.

My first comment on this concept would be that if it is done it should
probably be working with Sword modules throughout rather than
maintaining a separate database, as it appears to now.

I'm not sure I'm convinced that a separate application for distributed
proofreading is needed.  The impression I get is that the Sword
project (and other Sword module makers) largely work from converting
source copies into the Sword format, and so in general what is needed
is one person to develop a conversion script from the source, rather
than a distributed effort.  Though I'm not saying that we can't change
to do that, I'm not convinced that it will work or be useful.  Having
a better way of notifying problems might be useful.

Our applications in general need better module editing support, I
suspect (with Gnomesword being a possible exception, but I haven't
used it recently enough to know).  That is possibly related to this,
and possibly separate.

Probably neither ThML nor OSIS are going to be very clean for editing
on the web unless you are using some kind of rich editing support with
good cross-references, formatting and similar, which is not a small


More information about the sword-devel mailing list