[sword-devel] Not user-friendly behavior in commentaries (should be continuous)

Troy A. Griffitts scribe at crosswire.org
Sun Jul 26 13:32:57 EDT 2020


Dear yvand,

I believe I've fixed this in osis2mod.  osis2mod had code to deal with 
linking for ranges, but it checked for the necessity of a link with 
ListKey::getCount(), but this only tells how many elements are in the 
ListKey, not if any of those elements are ranges.  Oddly, it did have 
code after this check which would work find to see if more than 1 verse 
was referenced-- so close. Anyway, I think it's now fixed.  I added unit 
tests to check both osisID verse lists and also annotateRef ranges and 
both tests pass.

Thanks for your patience on this one.  Please let me know what you find,

Troy


On 7/25/20 9:30 PM, yvand wrote:
>
> I tried using annotateRef="Gen.1.1 Gen.1.2 Gen.1.3 Gen.1.4" instead of 
> annotateRef="Gen.1.1-Gen.1.4", the behavior is different. diatheke 
> gives a commentary for each verse, but I am not sure it is link entries...
>
> So now, I don't know what I can do to "fix" this bug (feature?).
>
> I am lost. I still do not know where is exactly the bug, or if this is 
> just a frontend feature…
>
> --yvand
>
> Le 24/07/2020 à 10:44, Troy A. Griffitts a écrit :
>>
>> Yes, linking is not working with annotateRef.  Thanks for the text.  
>> If you wouldn't mind rebuilding the module and changing one entry to 
>> an osisID verse list and then testing again, it would really help 
>> finalize what exactly the problem is.  If osisID verse lists do link 
>> correctly, then we simply need to apply the same logic to annotateRef.
>>
>> On 7/24/20 10:42 AM, yvand wrote:
>>>
>>> I tried it again, here is what I got:
>>>
>>>> $ diatheke -b FreCJE -k Gen.1.2
>>>> Genesis 1:2:
>>>> (FreCJE)
>>>>
>>>> $ diatheke -b FreCJE -k Gen.1.3
>>>> Genesis 1:3:
>>>> (FreCJE)
>>>
>>>
>>> So nothing :-/
>>>
>>> --yvand
>>>
>>>
>>> Le 24/07/2020 à 10:38, Troy A. Griffitts a écrit :
>>>> Hi yvand,
>>>>
>>>> Well, that's not an authoritative test.  You need to ask ONLY for 
>>>> verse Gen.1.2.
>>>>
>>>> SWORD has logic to "skip" contiguous linked verses, so diatheke 
>>>> might be taking advantage of that to prevent it from printing out 
>>>> the same commentary 19 times in a row. The output you see is the 
>>>> desired output when a user requests the entire chapter.  One 
>>>> instance of each commentary entry.
>>>>
>>>> To test linking, you need to ask for a verse within the range, but 
>>>> not the first verse.
>>>>
>>>> Hope this explains a bit,
>>>>
>>>> Troy
>>>>
>>>>
>>>> On 7/24/20 10:27 AM, yvand wrote:
>>>>> Hey,
>>>>>
>>>>> Thanks Troy for your help. I use annotateRef and not osisID, as 
>>>>> mentioned in https://wiki.crosswire.org/OSIS_Commentaries . I 
>>>>> tried diatheke, here is what I got :
>>>>>
>>>>>> diatheke -b FreCJE -k Gen.1 | head
>>>>>> Genesis 1:1: <div annotateRef="Gen.1.1-Gen.1.19" 
>>>>>> annotateType="commentary" sID="gen1" type="section"/> <div 
>>>>>> sID="gen2" type="x-p"/><hi type="bold">La création de 
>>>>>> l'univers</hi><div eID="gen2" type="x-p"/> <div sID="gen3" 
>>>>>> type="x-p"/>Avant que rien n'existe de tout………….<div eID="gen4" 
>>>>>> type="x-p"/> <div annotateRef="Gen.1.1-Gen.1.19" 
>>>>>> annotateType="commentary" eID="gen1" type="section"/>
>>>>>> Genesis 1:2:
>>>>>> Genesis 1:3:
>>>>>> Genesis 1:4:
>>>>>> Genesis 1:5:
>>>>>> Genesis 1:6:
>>>>>> Genesis 1:7:
>>>>>> Genesis 1:8:
>>>>>> Genesis 1:9:
>>>>>> Genesis 1:10:
>>>>> I don't know if this is normal: Gen.1.2 is empty, does it mean no 
>>>>> link entry?
>>>>>
>>>>> Best regards,
>>>>>
>>>>> --yvand
>>>>>
>>>>>
>>>>> Le 23/07/2020 à 23:51, Troy A. Griffitts a écrit :
>>>>>> Hey yvand,
>>>>>>
>>>>>> My apologies for not getting back with you.  osis2mod isn't my 
>>>>>> domain these days, so I am not sure what the current behavior is 
>>>>>> for annotateRef.  I am pretty sure linking works, and the normal 
>>>>>> way for linking is the provide osisID="Gen.1.1 Gen.1.2 Gen1.3"
>>>>>>
>>>>>> You an test linking by using any of the lookup tools, like 
>>>>>> diatheke, or I use sword/examples/cmdline/lookup.
>>>>>>
>>>>>> e.g., ./lookup FreCJE Gen.1.2
>>>>>>
>>>>>> I'd have to dig into the source for osis2mod and how it handles 
>>>>>> annotateRef ranges, but I would think it should work the same as 
>>>>>> osisID verse lists.
>>>>>>
>>>>>> Troy
>>>>>>
>>>>>>
>>>>>>
>>>>>> On 7/23/20 6:44 PM, yvand wrote:
>>>>>>> Thanks Greg for your quick reply with explanation!
>>>>>>>
>>>>>>> I thought there was a bug and "link entries" were not taken into 
>>>>>>> consideration, when using osis2mod. Is there a simple way to 
>>>>>>> test if a commentary module contains link entries? I tried with 
>>>>>>> mod2imp to export FreCJE but it only shows verses with attached 
>>>>>>> commentary ($$$Genesis 1:2 is missing for instance). Maybe I 
>>>>>>> misunderstood "link entries" functionality...
>>>>>>>
>>>>>>> I believe it worked as expected in the past (at least with 
>>>>>>> Xiphos), but maybe I am wrong.
>>>>>>>
>>>>>>> Unfortunately I am not familiar with C/C++ and with the sword 
>>>>>>> engine, so I am not able to offer you a patch.
>>>>>>>
>>>>>>> I understand the issues you pointed and it doesn't seem easy. 
>>>>>>> Currently, there are still questions, for instance: how will 
>>>>>>> operate the engine if there are multiple commentaries starting 
>>>>>>> with Gen.1.1 in the source, like :
>>>>>>>
>>>>>>>> <div ... annotateRef="Gen.1.1">...</div>
>>>>>>>> <div ... annotateRef="Gen.1.1-Gen.1.16">...</div>
>>>>>>>> <div ... annotateRef="Gen.1.1-Gen.1.31">...</div>
>>>>>>> I guess I will now give up for this feature.
>>>>>>>
>>>>>>> --yvand
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> 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
>
> _______________________________________________
> 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/20200726/f183c747/attachment.html>


More information about the sword-devel mailing list