The subset of RTF and the encoding directions are for the last decade at least in our wiki<br><br>http://wiki.crosswire.org/Tutorial:Writing_Conf_files<br><br>I do not mind intelligent criticism of the wiki, but declarations of absence of information by long standing collaborators should be verified by running a simple search if the information is not found on first glance<br><br>Jaak, that is directed at you. <br><br>FWIW, this info on this page  has been lifted (by David or me) from the original static tutorial subside, so is there for about 20 years in one form or another. <br><br>Peter<br><br>Sent from my mobile. Please forgive shortness, typos and weird autocorrects.<div class="quote" style="line-height: 1.5"><br><br>-------- Original Message --------<br>Subject: Re: [bt-devel] NASB Unlock Key<br>From: Jaak Ristioja <jaak@ristioja.ee><br>To: bt-devel@crosswire.org<br>CC: <br><br><br type="attribution"><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">It helps a bit, but that is a very loose definition, and hence ambigious.<br><br>For example, starting with RTF: which version of RTF? The latest version<br>(1.9.1) of the RTF specification is 278 pages long, dated 19 March 2008.<br>The whole of it (including support for style sheets, tables, lists,<br>indenting, hyperlinks, line spacing, paging, margins, embedded fonts,<br>drawing objects, pictures, UTF-16, unicode escapes, codepages, character<br>sets, embedded OLE objects, bi-directional text, ruby, ...) or only only<br>a subset? Which subset? Probably limited to <textpar>? Can the parser<br>expect the representation format to be ASCII (with escapes) according to<br>the RTF spec?<br><br>Now, adding <a href="">links</a> to the mix, should this HTML construct<br>be parsed inside all RTF constructs or just certain contexts? Or should<br>the HTML <a> element be parsed before RTF? Can the <a>display text</a><br>inside the tags also contain RTF?<br><br>From the perspective of writing a valid parser for these configuration<br>entries, such details matter a great deal, which is why I'm concerned.<br><br>Even with plain text entries, I couldn't find information about whether<br>these are encded in ASCII, UTF-8, ISO-8859-?? or something else. In case<br>its UTF-8, is the byte-order mark allowed at the beginning of the<br>configuration file?<br><br>I apologize if this sounded picky, but such details really do matter<br>from the perspective of writing correct and safe parsers. And you might<br>not agree with me, but I find it very important that our users get<br>high-quality software not just in terms of features, but also in terms<br>of robustness, reliability and cybersecurity.<br><br>With these things in mind and given the many bugs I've found when<br>working on that code for Sword++, I must say I don't feel safe using<br>Sword filters.<br><br>But if I interpret your reply correctly, you suggest running the<br>configuration value through the RTFHTML filter and use that as HTML?<br>That at least gives me some clues about how you imagine it to work,<br>which subset of RTF should be supported etc, but I'd prefer such<br>information to be in the specification instead.<br><br>I'd be glad to help improve these specifications, but this would entail<br>quite a lot of scrutiny, very likely on the Sword code as well. Given<br>that there has been some tension between us in the past, this might<br>perhaps require a bit of forethought. :)<br><br>J<br><br><br>PS: The latest version (1.9.1) of the RTF specification is 278 pages<br>long, dated 19 March 2008.<br><br>PPS: You might want to cherry-pick this Sword++ commit into Sword to fix<br>two HTML injection issues in RTFHTML:<br><br>https://github.com/swordxx/swordxx/commit/5959759d6951462f154dec663ea1805090a576bd<br><br><br><br>On 05.01.20 02:15, Troy A. Griffitts wrote:<br>> Hi Jaak,<br>> What makes you think the specification isn't defined? It has always been, as many of our fields in the .conf file, RTF + a href links. If the wiki doesn't say this, it should. The RTF to HTML filter in the engine will give you content you can display in your html view.<br>> <br>> Hope this helps,<br>> <br>> Troy<br>> <br>> <br>> <br>> On January 4, 2020 5:06:50 PM MST, Jaak Ristioja <jaak@ristioja.ee> wrote:<br>>> Hello Troy,<br>>><br>>> I guess we can display the UnlockInfo .conf entry as verbatim plain<br>>> text. If support for hyperlinks and such would be needed, I would<br>>> strongly prefer the format to have a formal specification which were<br>>> acceptable to use in BibleTime.<br>>><br>>> The specification being "just some simple HTML" is not good enough,<br>>> because passing the contents of such fields directly to some HTML or<br>>> web<br>>> view widget is not acceptable, neither is embedding it verbatim inside<br>>> other HTML, because that might break our GUI layouts/HTML and comes<br>>> with<br>>> security concerns (we don't want modules to be able to crash BibleTime,<br>>> run scripts, consume too much resources etc).<br>>><br>>> If you want I can help write formal grammars (EBNF or similar) for such<br>>> things, as well as parsers, linters etc.<br>>><br>>><br>>> Best regards,<br>>> J<br>>><br>>><br>>> On 05.01.20 00:56, Troy A. Griffitts wrote:<br>>>> Hi Gary,<br>>>><br>>>> Thanks for the suggestion.  We had to weigh the pros and cons of<br>>> this. <br>>>> Lockman is testing the module in a few of our applications and also<br>>>> wanted to review the installation and unlock process.  We decided to<br>>> do<br>>>> all we can to make it as easy as possible for their executives-- who<br>>> are<br>>>> not programmers-- to review and make a decision on permission.<br>>>><br>>>> One thing which has been mentioned a few times on sword-devel is that<br>>>> frontends should begin to honor the new "UnlockInfo" .conf entry,<br>>> which<br>>>> has the purpose to explain to the user how to obtain an unlock key<br>>> for a<br>>>> particular module and in this modules clarifies to the user that this<br>>>> module is still in the testing phase.  It would be good to check<br>>>> Bibletime to see if it has support for displaying "UnlockInfo" to the<br>>>> user when a module is selected for installation.<br>>>><br>>>> Thanks again for all you guys do,<br>>>><br>>>> Troy<br>>>><br>>>><br>>>> On 1/4/20 3:43 PM, Gary Holmlund wrote:<br>>>>> Troy,<br>>>>><br>>>>> Thanks for the information. Perhaps Lockman should not be in<br>>>>><br>>>>> the masterRepoList.conf until it is available for purchase.<br>>>>><br>>>>> Gary<br>>>>><br>>>>><br>>>>> On 1/4/20 11:12 AM, Troy A. Griffitts wrote:<br>>>>>> Hey guys.  We don't have a deal with Lockman yet.  They are<br>>> reviewing<br>>>>>> the latest work we've done and have pointed out a few issues we are<br>>>>>> trying to fix.  It does seem like we are at the brink of actually<br>>> having<br>>>>>> the NASB available, but we've said this for years, so I don't want<br>>> to<br>>>>>> promise anything.  There is no place to purchase an unlock key yet<br>>> and<br>>>>>> when there is, it will be directly from Lockman.  SWORD has had<br>>> single<br>>>>>> unlock code functionality unchanged for years in the engine.  If<br>>> Lockman<br>>>>>> decides they want unique unlock codes per user, then you will need<br>>> to<br>>>>>> compile with SWORD trunk, as this capability was added about 12<br>>> months<br>>>>>> ago.  Or with the soon to be release 1.9.0.<br>>>>>><br>>>>>> Hope this clears things up a bit.<br>>>>>><br>>>>>> Troy<br>>>>>><br>>>>>><br>>>>>> On 1/3/20 9:41 PM, Gary Holmlund wrote:<br>>>>>>> John,<br>>>>>>><br>>>>>>> I would like to know this also. The unlock is implemented in the<br>>>>>>><br>>>>>>> sword library. Perhaps you can get an answer at crosswire.org<br>>>>>>><br>>>>>>> Gary Holmlund<br>>>>>>><br>>>>>>> On 12/30/19 4:29 PM, John A. Sullivan III wrote:<br>>>>>>>> Hello, all.  I was absolutely thrilled to see the Lockman<br>>> Foundation<br>>>>>>>> now appear in the bookshelf options and I downloaded the NASB<br>>> module.<br>>>>>>>> I was about to purchase a key from Lockman but I see notes<br>>> on-line<br>>>>>>>> that<br>>>>>>>> the module cannot yet be unlocked and is only for testing.  I<br>>> don't<br>>>>>>>> know if those are old notes.<br>>>>>>>><br>>>>>>>> If I purchase a NASB key, can I use it to unlock the NASB module<br>>> in<br>>>>>>>> Bibletime? Thank you for your dedication to this invaluable<br>>> project -<br>>>>>>>> John<br>>>>>>> _______________________________________________<br>>>>>>> bt-devel mailing list<br>>>>>>> bt-devel@crosswire.org<br>>>>>>> http://www.crosswire.org/mailman/listinfo/bt-devel<br>>>>>>><br>>>>>> _______________________________________________<br>>>>>> bt-devel mailing list<br>>>>>> bt-devel@crosswire.org<br>>>>>> http://www.crosswire.org/mailman/listinfo/bt-devel<br>>>>><br>>>>> _______________________________________________<br>>>>> bt-devel mailing list<br>>>>> bt-devel@crosswire.org<br>>>>> http://www.crosswire.org/mailman/listinfo/bt-devel<br>>>><br>>>> _______________________________________________<br>>>> bt-devel mailing list<br>>>> bt-devel@crosswire.org<br>>>> http://www.crosswire.org/mailman/listinfo/bt-devel<br>>>><br>>><br>>><br>>> _______________________________________________<br>>> bt-devel mailing list<br>>> bt-devel@crosswire.org<br>>> http://www.crosswire.org/mailman/listinfo/bt-devel<br>> <br>> <br>> _______________________________________________<br>> bt-devel mailing list<br>> bt-devel@crosswire.org<br>> http://www.crosswire.org/mailman/listinfo/bt-devel<br>> <br><br><br>_______________________________________________<br>bt-devel mailing list<br>bt-devel@crosswire.org<br>http://www.crosswire.org/mailman/listinfo/bt-devel<br></blockquote></div>