[sword-devel] another OSIS weirdness: headers in LEB

Daniel Bearden dpbearden at gmail.com
Thu Mar 25 12:54:48 MST 2010


The headings do not work with the Apostolic Bible Polyglot module either. I
tried different ways of marking them but concluded it was a problem with
osis2mod since the latest branch of it worked at the time.

On Thu, Mar 25, 2010 at 3:33 PM, Peter von Kaehne <refdoc at gmx.net> wrote:

> Also for a German module I made. Missing headlines, missing parts of
> verses. But the OSIS looks ok
>
> Peterjohnduffy at cgcf.net wrote:
> > This looks similar to the heading problem reported here:
> >
> http://sourceforge.net/tracker/?func=detail&aid=2954856&group_id=954&atid=10
> > 0954
> > where the problem was noted by Martin Gruner as html not allowing a title
> > element to be within the body.
> >
> > John Duffy
> >
> >
> >> -----Original Message-----
> >> From: Karl Kleinpaste [mailto:karl at kleinpaste.org]
> >> Sent: 25 March 2010 11:51
> >> To: sword-devel at crosswire.org
> >> Subject: [sword-devel] another OSIS weirdness: headers in LEB
> >>
> >> So the new LEB from Logos came out, and there's a new module in the
> >> CrossWire repo.  I picked it up, and I turned on footnotes
> >> and headings.
> >>
> >> Before I turned on headings, display looked pretty normal, though I
> >> could question excess line breaks in Matt 1:23.  Turning on
> >> headings, I
> >> get this psychotically overwrought whitespace nightmare, and
> >> I've got no
> >> actual headings.
> >>
> >> Screenshots are too big to send to the list, so look here:
> >> http://karl.kleinpaste.org/.../LEB-Mat1-noHeadings.png
> >> http://karl.kleinpaste.org/.../LEB-Mat1-Headings.png
> >>
> >> The lack of real headings concerned me pretty seriously, considering
> >> that I had looked at the OSIS source and could see them there, so I
> >> started up gdb and breakpointed Xiphos to see what it was doing with
> >> headers.  This heading analysis works in every other OSIS module.
> >>
> >>      sprintf(heading, "%d", x);
> >>      while ((preverse = be->get_entry_attribute("Heading",
> >> "Preverse",
> >>
> >> heading)) != NULL) {
> >>              preverse2 = mod.RenderText(preverse);
> >>              text = g_strdup_printf("<br><b>%s</b><br><br>",
> >>                                     (((ops->strongs ||
> >> ops->lemmas) ||
> >>                                      ops->morphs)
> >>                                      ? block_render(preverse2)
> >>                                      : preverse2));
> >>              CleanupContent(text, ops, mod.Name());
> >>
> >>              cVerse.AppendHeader(text);
> >>              g_free((gchar *)text);
> >>              g_free((gchar *)preverse);
> >>              ++x;
> >>              sprintf(heading, "%d", x);
> >>      }
> >>
> >> "be" is our backend object, accessing the engine.  We get the heading,
> >> we render it according to the module's needs, and then we wrap it in a
> >> bit of extra HTML markup before we append it to the total.
> >>
> >> Here's a copy/paste of using gdb to watch this happen, for Matt 2:1,
> >> which has a heading, "Wise Men Visit Jesus."
> >>
> >> | (gdb) s
> >> | CacheHeader (cVerse=..., mod=..., ops=0x51c3fa0,
> >> be=0xbb4860) at ../src/main/display.cc:773
> >> | 773                int x = 0;
> >> | (gdb) n
> >> | 778                cVerse.SetHeader("");
> >> | (gdb)
> >> | 780                sprintf(heading, "%d", x);
> >> | (gdb) p cVerse
> >> | $4 = (ModuleCache::CacheVerse &) @0x2137048: {_text =
> >> |     0x51e0ec0 "Now <i>after</i><a
> >> href=\"passagestudy.jsp?action=showNote&type=n&value=1&module=
> >> LEB&passage=Matthew+2%3A1\"><small><sup>*n</sup></small></a>
> >> Jesus was born in Bethlehem of Judea in the days of Herod
> >> th"..., _header = 0x50bcc10 "", _flags = 11269}
> >> | (gdb) n
> >> | 781                while ((preverse =
> >> be->get_entry_attribute("Heading", "Preverse",
> >> | (gdb)
> >> | 783                        preverse2 = mod.RenderText(preverse);
> >> | (gdb) p preverse
> >> | $5 = (const gchar *)
> >> |     0x51dfff0 "<div sID=\"gen43\" type=\"section\"/>
> >> <title>Wise Men Visit Jesus</title> <div sID=\"gen44\"
> >> type=\"paragraph\"/>"
> >> | (gdb) n
> >> | 788                                                : preverse2));
> >> | (gdb) p preverse2
> >> | $6 = (const gchar *) 0x3b9c9c0 " <b></b><br /> <!P><br />"
> >> | (gdb) n
> >> | 789                        CleanupContent(text, ops, mod.Name());
> >> | (gdb) p text
> >> | $7 = (gchar *) 0x51bfa80 "<br><b> <b></b><br /> <!P><br
> >> /></b><br><br>"
> >> | (gdb) n
> >> | 791                        cVerse.AppendHeader(text);
> >>
> >> Please note, at $5 we had a normal OSIS heading, but just one line of
> >> code execution later, at $6 what has come back from RenderText()
> >> is...total nonsense.  A space, an empty bold sequence (where "Wise Men
> >> Visit Jesus" should have appeared), a line break, a paragraph
> >> break, and
> >> a line break?  No wonder it looks psychotic.
> >>
> >> I don't know what to say about it.  I can't very well go looking for
> >> what's happening inside Xiphos, because this works fine for
> >> KJV and beta
> >> NASB and every other OSIS module.  But on LEB, RenderText() is simply
> >> freaked out for some reason.  Encoding problem?  osis2mod problem?
> >>
> >> I'm using Sword at -r2507.
> >>
> >> _______________________________________________
> >> 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/20100325/688d5779/attachment-0001.html>


More information about the sword-devel mailing list