[sword-devel] Bible book introductions
DM Smith
dmsmith at crosswire.org
Mon Jun 3 08:06:45 MST 2013
On Jun 3, 2013, at 10:43 AM, Greg Hellings <greg.hellings at gmail.com> wrote:
>
>
>
> On Mon, Jun 3, 2013 at 7:32 AM, Chris Burrell <chris at burrell.me.uk> wrote:
> I thought of that - but then that means that low powered devices, or devices with large numbers of modules have to scan every part of every module on installation of the module while they do their discovery process.
>
> The Scope was related to Copyright & Distribution, but I'm not sure a discovery approach would work. The idea here is that the data doesn't exist, and the conf file was suggested as the place to store it. We can't derive that very easily from the module contents.
>
> I'm curious what this option would represent for Introductions. You're talking about checking ~70 string values for empty either at module load time or at module install time (and then adding some sort of cache value). Even on a low-powered device, reading 70 entries is not going to be a cumbersome time waster if done once at module installation.
>
> In terms of computation, this is nowhere near some of the heavier checks where time is being saved looking for every possible Jesus quote for markup or the like.
>
> --Greg
It is far more than 70. Every chapter can have an introduction. To see if a module one would have to check every verse 0 for text content. It is not sufficient to see if it has content. It may only have structural content. So that means it will have to be parsed for text.
Worst case is a module that does not have introductions. One would have to check every verse 0. If all that is wanted is to know whether a module has at least one introduction, the code can stop having found the first one.
Also, non-canonical, non-title content can appear anywhere. It is quite possible for there to be section introductions. AFAIK, we just haven't had any modules with that. (But I have paper study bibles with that feature.) So that would mean that every verse would have to be checked to see if it has pre-verse content with introductory material.
-- DM
>
>
> Another example, was my previous thread on having a marker indicating the type of strong numbers used (e.g. following the Septuagint in the OT, or the Hebrew). I'm still after a solution on that (although I believe we did decide to add a flag for those modules - can't recall exactly now).
>
> Chris
>
>
>
> On 3 June 2013 13:16, DM Smith <dmsmith at crosswire.org> wrote:
> I'm thinking of having a "sidecar" conf for a module. Right now when a user wants to save certain settings for a module, we (JSword) modify the conf. (I.e. CipherKey and Font).
>
> This could then be used to save anything a front end discovers and does not want to discover a second time. Such as Scope (which to my recollection was not shot down), Introductions, Colophons, user settings(?)....
>
> The basic idea is that the engine (JSword in my case) would read the conf and then the sidecar for the module, merging into a single internal representation of the conf. That way the module's conf would be then kept pristine.
>
> In Him,
> DM Smith
>
> On Jun 3, 2013, at 8:03 AM, Nic Carter <niccarter at mac.com> wrote:
>
>>
>> I think (& I hope?) what is being proposed is a method in Sword that will check any book of the Bible to see if it is empty or not. This will ultimately be very fast, as it may need to test a large number of verses?
>> This same method should be able to be adapted to live-test introductions for books &/or testaments? Then you could determine whether or not to allow such a preference/toggle? Also, then you could tell which introductions should be navigable to?
>>
>> FYI, in PS I simply don't show options for modules that don't support a feature. Why show a greyed-out Strong's Numbers toggle in the NET, for example? Or Greek accents toggle for any English-language module? But, obviously, this is a design decision :) :)
>>
>> BTW, I believe we're still waiting to hear whether or not an isEmpty(BookName) method is going to be incorporated into Sword? I'm interested in it, but I was just reminded that PS still doesn't support GenBooks & thought I might actually rectify that rather than look into an isEmpty() implementation... ;)
>> [yes, Karl, you requested it about 3.5 years ago, & I'm looking at the redesigns required to make this happen!]
>>
>> Just my thoughts :)
>> ybic,
>> Nic :)
>>
>> Sent from my phone, hence this email may be short...
>>
>> On 03/06/2013, at 21:04, Chris Burrell <chris at burrell.me.uk> wrote:
>>
>>> For clarity, my use case is as follows.
>>>
>>> I have a menu displaying options such as Verse numbers, Headings, Verses on New Lines, Red letters. I'd like to add an option called Introductions (and perhaps one called Colophon).
>>>
>>> The options in this menu are grayed out when the underlying module doesn't support this. If the option is grayed out, I add an explanation as to why that is (e.g. the module doesn't support it, or 1 option is not compatible with another option that is already selected, etc.)
>>>
>>> The availability of the options is uniquely dependant on which version of the Bible or Commentary a user has selected. If a user selects a different module, the options available to him are updated automatically. For example, a user is clearly aware that most of the Old Testament doesn't have a Red Letter option. He might however work mainly from the ESV and want his frontend to show Jesus's words in red when they are in the text, so he sets up the option once.
>>>
>>> At this stage, we don't care about what passage/text a user is going to lookup. We can't guess what's in his mind! And we can certainly not guess what he's going to lookup tomorrow, the day after tomorrow, next month, next year.
>>>
>>> This is the same for Introductions & Colophons. He might decide he's never interested in seeing Introductions and Colophons and want to turn them off completely. Or on the other hand he might want to turn them on all the time because he is always interested in them.
>>>
>>> But a toggle button available to turn the introductions on/off is pretty pointless if the module doesn't have any. In actual fact, it's pretty annoying because it looks like there may be a bug, since in the ASV toggling this option never makes a difference. In the same way a toggle button to turn red letters on/off for the ASV is pretty useless as well.
>>>
>>> It should be obvious by now that having Sword/JSword being able to tell a frontend whether or not Introductions are contained within a module is a big plus to what we have now.
>>>
>>> Chris
>>>
>>>
>>>
>>> On 3 June 2013 07:26, Chris Burrell <chris at burrell.me.uk> wrote:
>>> One could apply your reasoning for every option we have in the Conf file so far.
>>>
>>> Headings, notes, cross references, strongs, morphology... A verse or chapter is not guaranteed to contain any of these. You still need to check for non empty cross references for example if your frontend is displaying them in a separate pane. Same as strong numbers if you're doing interlinears.
>>>
>>> The option doesn't guarantee anything. It's there to indicate a module supports a particular features. It's at least that was my understanding.
>>>
>>> Isn't the whole point of the options to allow the user to set up his preferred view for reading the Bible so that as he goes from one chapter to another he doesn't need to click options on and off as they randomly appear.
>>>
>>> Please do tell how I'm supposed to identify whether a Bible has introductions without reading the whole Bible.
>>>
>>> Chris
>>>
>>> On 2 Jun 2013 22:48, "Chris Little" <chrislit at crosswire.org> wrote:
>>> On 6/2/2013 9:23 AM, Chris Burrell wrote:
>>> Hi
>>>
>>> Some books have Bible introductions. Can I suggest adding a flag to the
>>> conf file to indicate this is the case? In the similar mindset as a
>>> previous post, I'd prefer being able to query the conf file for features
>>> of a particular module rather than having to read part of the module and
>>> hope for that particular book/chapter to have an introduction. A yes/no
>>> flag in the .conf file would be helpful.
>>>
>>> (In particular, I have in mind the book introductions that are part of
>>> the ESV text). But no doubt other modules will also (or in the future
>>> will also) have the same aspects.
>>>
>>> Chris
>>>
>>> I would say no. This doesn't add anything.
>>>
>>> Identifying that a module possesses introductions at some level does not indicate that it possesses all of the introductions at that level. Accordingly, knowing that a module possesses introductions still requires checking for non-empty contents in order to know that a particular introduction is non-empty.
>>>
>>> This is along the lines of the request for a Scope .conf entry, which was already rejected. Whatever solution is used for that case can also be used for introductions.
>>>
>>> --Chris
>>>
>>>
>>> _______________________________________________
>>> sword-devel mailing list: sword-devel at crosswire.org
>>> http://www.crosswire.org/mailman/listinfo/sword-devel
>>> Instructions to unsubscribe/change your settings at above page
>>>
>>> _______________________________________________
>>> sword-devel mailing list: sword-devel at crosswire.org
>>> http://www.crosswire.org/mailman/listinfo/sword-devel
>>> Instructions to unsubscribe/change your settings at above page
>> _______________________________________________
>> sword-devel mailing list: sword-devel at crosswire.org
>> http://www.crosswire.org/mailman/listinfo/sword-devel
>> Instructions to unsubscribe/change your settings at above page
>
>
> _______________________________________________
> sword-devel mailing list: sword-devel at crosswire.org
> http://www.crosswire.org/mailman/listinfo/sword-devel
> Instructions to unsubscribe/change your settings at above page
>
>
> _______________________________________________
> sword-devel mailing list: sword-devel at crosswire.org
> http://www.crosswire.org/mailman/listinfo/sword-devel
> Instructions to unsubscribe/change your settings at above page
>
> _______________________________________________
> sword-devel mailing list: sword-devel at crosswire.org
> http://www.crosswire.org/mailman/listinfo/sword-devel
> Instructions to unsubscribe/change your settings at above page
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.crosswire.org/pipermail/sword-devel/attachments/20130603/56e37768/attachment-0001.html>
More information about the sword-devel
mailing list