I didn't mean the actual compiled files - I meant the kind of markup you
end up with if you use swModule->getRawEntry(). It's the same kind of
markup you see if you use mod2imp on a module. So far the modules I've
used this on seem to have some sort of pattern to them (there's <w> tags
with "lemma" and "morph" attributes for Strong's numbers and morphology,
<q> tags for... something, looks like it's part of how red-letter Bibles
work because of the "who" attribute, and things like that). I assume
it's this markup that is parsed by the existing filters, and that I
would need to parse were I to write my own filter.
My text renderer does indeed support HTML, but it's ability to output
Markdown is sorely lacking (I *can* tell it to give me whatever's in my
text editor widget in Markdown format, but it loses information that
Markdown is perfectly capable of containing). I need to be able to
convert between Markdown and rich text both ways. On top of all of that
I'm trying to support a particular flavor of Markdown that isn't normal
(the variant Reddit uses in particular), so I have to do the parsing
myself to implement things like superscripts and strikethroughs.
Implementing a filter sounds like a good idea, but I think I'll have to
parse this "internal markup format" to do so.
On 12/15/23 21:12, Greg Hellings wrote:
The actual files are a custom binary format which is not documented
and is not intended to be any sort of standard accessed by anything
other than the library itself.
Most newer works are imported from an OSIS file. Some older ones were
imported from GBF (I think?) or ThML (which is basically some basic
HTML display components mixed with a few tags for identifying things
like words of Christ or divine names). However, once they are imported
as modules some of that structure is lost to the proprietary binary
format of the SWORD module files.
If you want the text in Markdown the best way is to create a filter
like the existing filters in the engine which can be used to generate
HTML, LaTeX, etc and write some which produce Markdown output.
Although, since Markdown is basically simplified HTML that is
specifically intended to make HTML easier to write, why wouldn't you
just render out HTML from the existing filters and drop that into your
Markdown editor? Every md editor and renderer I've used will pass HTML
through unchanged, allowing the author to use its full syntax when
they wanted to.
On Fri, Dec 15, 2023, 21:04 Aaron Rainbolt <arraybo...@gmail.com> wrote:
I had an idea of making a primarily Markdown-centric SWORD frontend
that would help with writing Bible studies and whatnot for
Markdown-based platforms like Reddit or Obsidian notes. For this
purpose, I want to parse the internal markup used by SWORD in its
modules, and then use my own custom code to generate Markdown from
that.
Obviously I can learn a lot about this markup by simply looking at
modules that use it, but I do wonder, is this markup at all
standardized? Is it documented anywhere? Does it have a name of some
sort that I can use to find handlers and tools for it in the SWORD API
docs?
Thanks,
Aaron
_______________________________________________
sword-devel mailing list: sword-devel@crosswire.org
http://crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page
_______________________________________________
sword-devel mailing list:sword-devel@crosswire.org
http://crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page
_______________________________________________
sword-devel mailing list: sword-devel@crosswire.org
http://crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page