[sword-devel] HTML filter cross references link
Ben Morgan
benpmorgan at gmail.com
Mon Jul 28 03:58:09 MST 2008
I think this is osis only. The thml (and gbf) filters shouldn't need to be
changed.
God Bless,
Ben
-------------------------------------------------------------------------------------------
The Lord is not slow to fulfill his promise as some count slowness,
but is patient toward you, not wishing that any should perish,
but that all should reach repentance.
2 Peter 3:9 (ESV)
On Mon, Jul 28, 2008 at 8:46 PM, Manfred Bergmann <bergmannmd at web.de> wrote:
> Yes, right, in the end-of-note handler I could still get the cross-
> refs per note.
> This is for OSIS texts. Needs to be done in all source HTML filters
> probably then?
>
>
> Manfred
>
>
> Am 28.07.2008 um 12:19 schrieb Ben Morgan:
>
> > The cross-references (which are omitted) are contained in a note
> > (which isn't omitted), which will have the type set to cross-
> > reference (or something like that)
> > The entry attributes has the original osis text, as well as the
> > references it found. You can process this in the end-of-note handler.
> >
> > God Bless,
> > Ben
> >
> -------------------------------------------------------------------------------------------
> > The Lord is not slow to fulfill his promise as some count slowness,
> > but is patient toward you, not wishing that any should perish,
> > but that all should reach repentance.
> > 2 Peter 3:9 (ESV)
> >
> >
> > On Mon, Jul 28, 2008 at 5:18 PM, Manfred Bergmann
> > <bergmannmd at web.de> wrote:
> > Hi Ben.
> >
> > Ok, one can get the cross-references by getting the entry attributes.
> > But if the body is not passed in again to the filter you can't figure
> > anymore to which word the cross-reference is related to by just
> > parsing the attributes.
> > The only chance to get the relationship is to show the information in
> > the tooltip or while clicking on the cross-ref link.
> > Please correct me if I'm wrong.
> > If this is correct I have to say that this is quite unflexible.
> > If someone chooses to not render anything related to cross-references
> > but still wants to have the data (to show it somewhere else) there is
> > no way to get the word -> cross-ref relationship.
> >
> >
> >
> > Regards,
> > Manfred
> >
> >
> > Am 28.07.2008 um 01:35 schrieb Ben Morgan:
> >
> > > Yes, there was a change.
> > > I had to change BPBible as well :)
> > >
> > > >From r2157:
> > > Modified: trunk/src/modules/filters/
> > > osisfootnotes.cpp
> > > ===================================================================
> > > --- trunk/src/modules/filters/osisfootnotes.cpp 2008-05-13 02:58:16
> > > UTC (rev 2156)
> > > +++ trunk/src/modules/filters/osisfootnotes.cpp 2008-05-13 23:37:56
> > > UTC (rev 2157)
> > > @@ -108,7 +108,7 @@
> > > hide = false;
> > > if (option ||
> > > (startTag.getAttribute("type") && !
> > > strcmp(startTag.getAttribute("type"), "crossReference"))) { // we
> > > want the tag in the text; crossReferences are handled by another
> > > filter
> > >
> > text.append(startTag);
> > > -
> > text.append(tagText);
> > > +//
> > > text.append(tagText); // we don't put the body back in because it
> > > is retrievable from EntryAttributes["Footnotes"][]["body"].
> > > }
> > > else continue;
> > > }
> > >
> > > As it says, you can just get the text using getEntryAttributes at
> > > the end of the note.
> > >
> > > The way BPBible installs custom filters is by subclassing the
> > > MarkupFilterMgr's AddRenderFilters, rather than the SWMgr's
> > >
> > > It would be nice if you could pass the filters you wanted used in,
> > > though. This would be a pretty common use case...
> > >
> > > God Bless,
> > > Ben
> > >
> >
> -------------------------------------------------------------------------------------------
> > > The Lord is not slow to fulfill his promise as some count slowness,
> > > but is patient toward you, not wishing that any should perish,
> > > but that all should reach repentance.
> > > 2 Peter 3:9 (ESV)
> > >
> > >
> > > On Sun, Jul 27, 2008 at 9:09 PM, Manfred Bergmann
> > > <bergmannmd at web.de> wrote:
> > > Hi Troy.
> > >
> > >
> > > Am 26.07.2008 um 18:44 schrieb Troy A. Griffitts:
> > >
> > > > Do you have:
> > > >
> > > > swordManager.setGlobalOption("Cross-references", "On");
> > > >
> > > > anywhere in your code?
> > >
> > > Yes.
> > > I just tested a version of MacSword with Sword library 1.5.10 where
> > > the cross ref list (<reference> elements) are placed inside the note
> > > element and are passed to the HTML filter.
> > > Has there been a change for this from 1.5.10 to 1.5.11?
> > >
> > > > Yes. You should never have to call AddRenderFilter to a module,
> > > > though
> > > > we do allow you to add your own special filters by overriding the
> > > > virtual SWMgr::AddRenderFilters() method if one of the default
> > SWORD
> > > > filter sets does not work for you. Not sure how MacSword does it
> > > now.
> > >
> > > Hmm, we are doing exactly that ATM.
> > > We didn't override AddRenderFilters() in SWMgr but set Filter
> > subclass
> > > instances for every module in a loop via Module::AddRenderFilter().
> > > So the prefered way is to do this via SWMgr::AddRenderFilters().
> > >
> > > > The MarkupFilterMgr is the mechanism to ask SWORD to give you a
> > > > specific
> > > > output markup from RenderText(). This code figures out which
> > filter
> > > > set
> > > > to apply to each module depending on the module SourceType (OSIS,
> > > GBF,
> > > > ThML, etc...) and will apply the correct filters to meet your
> > > > requested
> > > > output type. But if you can't use any of the default filter sets,
> > > > then
> > > > you'll have to override SWMgr::AddRenderFilters() and apply your
> > > > custom
> > > > filters.
> > >
> > > We did that and used RenderFilters from BibleTime project from 2001.
> > > But I adapted some changes of the current Sword render filters so
> > the
> > > new attributes are checked for additionally to the depricated ones.
> > >
> > >
> > >
> > > Regards,
> > > Manfred
> > >
> > >
> > > _______________________________________________
> > > 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/20080728/3ce78972/attachment-0001.html
More information about the sword-devel
mailing list