Talk:DevTools:conf Files

From CrossWire Bible Society
Revision as of 12:29, 24 March 2017 by David Haslam (talk | contribs) (GlobalOptionFilter=UTF8ArabicShaping ?: new section)

Jump to: navigation, search

Column is too wide in table

After Osk autowikified the table, the second column is too wide. Having to use horizontal scrollbar in webpages is a PITB. David Haslam 10:19, 13 November 2008 (UTC)

Sorted. David Haslam 07:33, 18 November 2008 (UTC)

HTML and RTF in columns that do not allow for it

The Allowed column is for showing what columns allow for HTML and RTF. It is never OK to use it in any other field. While it may work in a front-end, it is guaranteed to not work in others.--Dmsmith 18:28, 23 February 2013 (MST)

Why the almost top posting? Tip: Use Add Topic in future. David Haslam 13:08, 24 February 2013 (MST)
Never noticed the "Add topic" tab. Top posting makes sense that the most recent conversations are at the top. And old ones, having been addressed are lower down. But it doesn't matter to me. Either is fine. More critical to sign and date.--Dmsmith 09:14, 22 April 2013 (MDT)

Suggestion for a new element in conf files

It would be useful to permit a non-specific element called simply Notes. This element could contain anything not covered by About, Description, CopyrightNotes or DistributionNotes, etc. It could be used to record further information about various aspects of the module or the module creation process such as a description of the preprocessing steps. Such information could be very useful to developers. David Haslam 13:13, 13 October 2011 (MDT)

Suggestion for new OSIS filter to toggle the appearance and activeness of dictionary lookup links

The xulsword application includes support for toggling the display of dictionary lookup references. This is implemented by means of the following additional properties in the configuration file for any OSIS text module.


The xulsword developer suggests that this idea might be useful to incorporate into the SWORD and JSword API, and for other front-ends to start to make use of it.

David Haslam 12:12, 5 January 2012 (MST)

See also David Haslam 06:57, 20 January 2012 (MST)
But now see – especially the section of headed Deprecated (no longer output by osis-converters) David Haslam 14:27, 11 January 2016 (MST)


The policy advice in the localization section is somewhat ambiguous. Clarification is needed. David Haslam 03:52, 9 January 2012 (MST)

It's clarified a bit more now, I hope. --Osk 06:12, 9 January 2012 (MST)


Is there a default for OSISVersion (like there is for MinimumVersion) ? David Haslam 06:49, 20 January 2012 (MST)

No. With MinimumVersion, there really is a default, in the sense that if you fail to set one in the .conf, the library will set one for you so that any front end can query the value and reliably get some answer. OSISVersion is essentially just informational, and I don't believe anyone has put it to any use. --Osk 20:29, 20 January 2012 (MST)

Broken links for Creative Commons license summaries

As Osk had just added a link for CC0, I tried some of the other Creative Commons links, and found that they go to pages that no longer exist. Needs follow-up. David Haslam 01:19, 11 March 2012 (MST)

Reminder – still needs doing. David Haslam 02:39, 11 February 2013 (MST)


These new global filters (OSISXlit & OSISEnum) need describing in more detail, with suitable examples in the page for OSIS Bibles or wherever most suitable. David Haslam 13:52, 28 June 2012 (MDT)

Strip Filters

A recent post to the sword-devel mailing list describes the use of local Strip Filters. I hope to insert this description into the main page presently. David Haslam 09:04, 10 December 2012 (MST)

Done. David Haslam 04:51, 13 December 2012 (MST)

Promo & ShortPromo?

SomKQA module version 1.0 had a config property named Promo. We document the property named ShortPromo. Was the original name changed at some time, or is this merely a minor error in the somkqa.conf file? David Haslam 09:47, 12 December 2012 (MST)

JSword and language codes

Currently, JSword does not support language code subtags, but there is now a plan to implement this. (Email conversation with DM today). David Haslam 04:52, 25 January 2013 (MST)

Proposed Scope Attribute


Indicates that the versification is limited to subset of its books, chapters and/or verses.

When there are only a few verses different within a chapter, it may be permissible to include them. But where there are many, do so.

To leave out deuterocanonical material from Synodal use the following:
Gen-Josh.4.33 Judg-2Chr Ezra Neh Esth-Ps.150 Prov.0[2]-Prov.4.27 Prov.5-Prov.13.25 Prov.14-Prov.18.24 Prov.19-Song Isa-Lam Ezek-Dan.3.33 Dan.4-Dan.12 Hos-Mal Matt-Rev

To note that a module only contains the NT, the following would be appropriate for many v11n:


  1. Use OSIS Book names. Book, chapter and verse are separated by '.', dot. Ranges are with respect to the order of books in the v11n. Both ends of a range must be fully specified. Ranges are separated by spaces. While order in an osisRef is undefined, they should be ordered here.
  2. When used in a verse range, the start of a book is chapter 0, the introduction. If the book has no introduction then Prov.1 is fine.
  3. At the moment, there is no way to specify the inclusion of module or testament introductions. JSword (in development) is using Intro.Bible, Intro.OT and Intro.NT.


It should be noted that using Feature=NoParagraphs for our KJV module would be inappropriate. Even though the KJV is normally printed as Verse Per Line without any paragraphing, we have taken it upon ourselves to implement the pilcrows ¶ as paragraph markers (which no doubt they are), and those chapters containing pilcrows are divided into OSIS paragraphs using the p element. At the same time, the pilcrows were converted to marker attribute values. David Haslam 02:00, 15 June 2013 (MDT)

It should also be noted that the OSIS XML file used as the source for our KJV module was carefully hand-crafted. In approaching other Biblical texts containing pilcrows ¶, the Python converter treats these as part of ordinary text, and not as something special. Were we to desire similar functionality to the KJV, then extra measures would be required to make further changes to the OSIS file output from the Python script. David Haslam 02:05, 15 June 2013 (MDT)


GlobalOptionFilter=OSISMorphSegmentation is not yet documented in the main page. This module property is specified in wlc.conf for the Westminster Leningrad Codex. David Haslam 14:55, 13 March 2014 (MDT)

Still awaiting some explanation of what this property actually toggles. David Haslam 09:04, 11 April 2014 (MDT)
Also worth noting, this option is not listed in the syntax help for diatheke. David Haslam 14:56, 13 March 2014 (MDT)
Added to main page. Currently we are not aware of any front-end that makes use of this filter to show/hide anything.
The developers of the STEP Bible front-end may be planning to do something with it. David Haslam 07:28, 28 April 2014 (MDT)

Companion modules

The new table row for Companion was added after an exchange of emails with Karl. David Haslam 11:33, 22 December 2014 (MST)

Exceptions in the Normalization of Malayalam

Malayalam is one of the scripts for which there are known rare exceptions to the rules governing Unicode Normalization. This issue was observed during our work on the 1910 Malayalam Bible module development.

I made a simple bespoke TextPipe filter to insert a Combining Grapheme Joiner in between two pairs of Malayalam codepoints.

The replacement filter is described:

   (\x{0D46})(\x{0D3E})    $1\xCD\x8F$2
   (\x{0D46})(\x{0D57})    $1\xCD\x8F$2

The search patterns are PCRE. The CGJ is inserted using its UTF-8 byte codes. There were 17 of the former pattern and 2 of the latter pattern. This does prevent the improper normalization of these exceptional code pairs. David Haslam 06:26, 10 December 2015 (MST)

It later emerged that this wasn't necessary, as it was found that these 19 locations had been mistyped. Normalization to NFC actually corrected the mistyping. David Haslam 08:11, 10 December 2015 (MST)

Undocumented Option Filters

From a post in the sword-devel mailing list:

Jaak recently found two undocumented option filters, GreekLexAttribs and PapyriPlain, which inherit from SWOptionFilter and use SWOptionFilter::SWOptionFilter(). Does anyone have detailed information about these? David Haslam (talk) 08:53, 1 November 2016 (MDT)

Creative Commons changes

The links and verbatim strings are no longer correct for the various Creative Commons licences due to changes in the Creative Commons website.

In particular, the release of

Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)

and similar changes to version 4.0 etc.

This section of the page requires updating to reflect the changes made by Creative Commons.

It should be edited by someone that thoroughly understands the CC licenses.

Existing modules that refer to earlier versions of the CC license may need to be updated as well.

David Haslam (talk) 04:24, 10 January 2017 (MST)

zText4 and zCom4 support

2017-01-31 JSword now supports zText4 and zCom4. That's the background to my edit to the page today.

SWORD does not yet support these drivers, but is planned to have support in SWORD 1.8

David Haslam (talk) 11:10, 31 January 2017 (MST)

Proposal for new GlobalOptionFilter=OSISNamesBold to emphasise proper names marked with the <name> element

For the many languages whose script does not have any division between uppercase and lowercase characters, it is less obvious which words in Scripture are proper names. I therefore propose that we add a new filter:


When this is enabled, all words marked using the OSIS name element could then be rendered using the bold font style. Once implemented and rolled out into front-ends, the feature could be tested by a future release of the KJV module in which the name element will be used accordingly, as per our roadmap.

David Haslam (talk) 01:29, 15 February 2017 (MST)

LocalOptionFilter GreekLexAttribs ?

Is there any documentation for this filter? It was added in SWORD 1.5.3 on 19-Mar-2002. What does it do? How useful might it be? Is it still part of SWORD ? David Haslam (talk) 02:13, 21 February 2017 (MST)

GlobalOptionFilter=UTF8ArabicShaping ?

One of the diatheke option filters is

r (Arabic Shaping),

There's nothing documented about how to specify this in a module conf file.

Is it by including this line?


David Haslam (talk) 06:29, 24 March 2017 (MDT)