summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/Greek2Greek.h117
-rw-r--r--include/GreekChars.h154
-rw-r--r--include/Makefile.am27
-rw-r--r--include/SwordAPI.pas8
-rw-r--r--include/bz2comprs.h45
-rw-r--r--include/canon.h201
-rw-r--r--include/canon_abbrevs.h18
-rw-r--r--include/canon_catholic.h186
-rw-r--r--include/canon_catholic2.h189
-rw-r--r--include/canon_german.h164
-rw-r--r--include/canon_kjva.h192
-rw-r--r--include/canon_leningrad.h129
-rw-r--r--include/canon_luther.h186
-rw-r--r--include/canon_lxx.h403
-rw-r--r--include/canon_mt.h129
-rw-r--r--include/canon_nrsv.h164
-rw-r--r--include/canon_nrsva.h196
-rw-r--r--include/canon_null.h7
-rw-r--r--include/canon_orthodox.h370
-rw-r--r--include/canon_synodal.h198
-rw-r--r--include/canon_synodalp.h173
-rw-r--r--include/canon_synodalprot.h316
-rw-r--r--include/canon_vulg.h192
-rw-r--r--include/cipherfil.h6
-rw-r--r--include/config.h84
-rw-r--r--include/config.h.in3
-rw-r--r--include/curlftpt.h51
-rw-r--r--include/curlhttpt.h51
-rw-r--r--include/defs.h53
-rw-r--r--include/echomod.h11
-rw-r--r--include/encfiltmgr.h12
-rw-r--r--include/entriesblk.h22
-rw-r--r--include/femain.h8
-rw-r--r--include/filemgr.h39
-rw-r--r--include/flatapi.h8
-rw-r--r--include/ftplib.h43
-rw-r--r--include/ftplibftpt.h53
-rw-r--r--include/gbffootnotes.h6
-rw-r--r--include/gbfheadings.h6
-rw-r--r--include/gbfhtml.h6
-rw-r--r--include/gbfhtmlhref.h8
-rw-r--r--include/gbfmorph.h6
-rw-r--r--include/gbfosis.h6
-rw-r--r--include/gbfplain.h6
-rw-r--r--include/gbfredletterwords.h6
-rw-r--r--include/gbfrtf.h6
-rw-r--r--include/gbfstrongs.h6
-rw-r--r--include/gbfthml.h6
-rw-r--r--include/gbfwebif.h12
-rw-r--r--include/gbfwordjs.h6
-rw-r--r--include/gbfxhtml.h52
-rw-r--r--include/greeklexattribs.h6
-rw-r--r--include/hebrewmcim.h22
-rw-r--r--include/hrefcom.h13
-rw-r--r--include/installmgr.h40
-rw-r--r--include/latin1utf16.h6
-rw-r--r--include/latin1utf8.h6
-rw-r--r--include/listkey.h50
-rw-r--r--include/localemgr.h9
-rw-r--r--include/lzsscomprs.h61
-rw-r--r--include/markupfiltmgr.h9
-rw-r--r--include/multimapwdef.h36
-rw-r--r--include/nullim.h22
-rw-r--r--include/osisenum.h (renamed from include/osisruby.h)78
-rw-r--r--include/osisfootnotes.h6
-rw-r--r--include/osisglosses.h (renamed from include/plainhtml.h)22
-rw-r--r--include/osisheadings.h13
-rw-r--r--include/osishtmlhref.h8
-rw-r--r--include/osislemma.h6
-rw-r--r--include/osismorph.h6
-rw-r--r--include/osismorphsegmentation.h6
-rw-r--r--include/osisosis.h6
-rw-r--r--include/osisplain.h6
-rw-r--r--include/osisredletterwords.h6
-rw-r--r--include/osisreferencelinks.h55
-rw-r--r--include/osisrtf.h6
-rw-r--r--include/osisscripref.h6
-rw-r--r--include/osisstrongs.h6
-rw-r--r--include/osisvariants.h20
-rw-r--r--include/osiswebif.h11
-rw-r--r--include/osiswordjs.h6
-rw-r--r--include/osisxhtml.h74
-rw-r--r--include/osisxlit.h (renamed from include/plainfootnotes.h)23
-rw-r--r--include/papyriplain.h10
-rw-r--r--include/rawcom.h13
-rw-r--r--include/rawcom4.h13
-rw-r--r--include/rawfiles.h15
-rw-r--r--include/rawgenbook.h16
-rw-r--r--include/rawld.h17
-rw-r--r--include/rawld4.h17
-rw-r--r--include/rawstr.h18
-rw-r--r--include/rawstr4.h18
-rw-r--r--include/rawtext.h13
-rw-r--r--include/rawtext4.h14
-rw-r--r--include/rawverse.h22
-rw-r--r--include/rawverse4.h29
-rw-r--r--include/remotetrans.h (renamed from include/ftptrans.h)58
-rw-r--r--include/roman.h7
-rw-r--r--include/rtfhtml.h6
-rw-r--r--include/sapphire.h53
-rw-r--r--include/scsuutf8.h42
-rw-r--r--include/stringmgr.h11
-rw-r--r--include/strkey.h7
-rw-r--r--include/swbasicfilter.h15
-rw-r--r--include/swbuf.h79
-rw-r--r--include/swcacher.h10
-rw-r--r--include/swcipher.h8
-rw-r--r--include/swcom.h39
-rw-r--r--include/swcomprs.h8
-rw-r--r--include/swconfig.h9
-rw-r--r--include/swdisp.h12
-rw-r--r--include/swfilter.h18
-rw-r--r--include/swfiltermgr.h9
-rw-r--r--include/swgenbook.h43
-rw-r--r--include/swinputmeth.h27
-rw-r--r--include/swkey.h40
-rw-r--r--include/swld.h18
-rw-r--r--include/swlocale.h9
-rw-r--r--include/swlog.h7
-rw-r--r--include/swmacs.h7
-rw-r--r--include/swmgr.h37
-rw-r--r--include/swmodule.h222
-rw-r--r--include/swobject.h43
-rw-r--r--include/swoptfilter.h13
-rw-r--r--include/swsearchable.h9
-rw-r--r--include/swtext.h15
-rw-r--r--include/swunicod.h43
-rw-r--r--include/swversion.h15
-rw-r--r--include/swversion.h.in74
-rw-r--r--include/sysdata.h34
-rw-r--r--include/teihtmlhref.h8
-rw-r--r--include/teiplain.h6
-rw-r--r--include/teirtf.h6
-rw-r--r--include/teixhtml.h55
-rw-r--r--include/thmlfootnotes.h6
-rw-r--r--include/thmlgbf.h6
-rw-r--r--include/thmlheadings.h6
-rw-r--r--include/thmlhtml.h6
-rw-r--r--include/thmlhtmlhref.h8
-rw-r--r--include/thmllemma.h6
-rw-r--r--include/thmlmorph.h6
-rw-r--r--include/thmlosis.h6
-rw-r--r--include/thmlplain.h6
-rw-r--r--include/thmlrtf.h6
-rw-r--r--include/thmlscripref.h6
-rw-r--r--include/thmlstrongs.h6
-rw-r--r--include/thmlvariants.h21
-rw-r--r--include/thmlwebif.h14
-rw-r--r--include/thmlwordjs.h6
-rw-r--r--include/thmlxhtml.h60
-rw-r--r--include/treekey.h11
-rw-r--r--include/treekeyidx.h7
-rw-r--r--include/unicodertf.h6
-rw-r--r--include/url.h39
-rw-r--r--include/utf16utf8.h6
-rw-r--r--include/utf8arabicpoints.h7
-rw-r--r--include/utf8arshaping.h6
-rw-r--r--include/utf8bidireorder.h6
-rw-r--r--include/utf8cantillation.h6
-rw-r--r--include/utf8greekaccents.h6
-rw-r--r--include/utf8hebrewpoints.h6
-rw-r--r--include/utf8html.h6
-rw-r--r--include/utf8latin1.h6
-rw-r--r--include/utf8nfc.h6
-rw-r--r--include/utf8nfkd.h6
-rw-r--r--include/utf8transliterator.h19
-rw-r--r--include/utf8utf16.h6
-rw-r--r--include/utilstr.h35
-rw-r--r--include/utilxml.h10
-rw-r--r--include/versekey.h203
-rw-r--r--include/versetreekey.h12
-rw-r--r--include/versificationmgr.h (renamed from include/versemgr.h)27
-rw-r--r--include/xzcomprs.h45
-rw-r--r--include/zcom.h15
-rw-r--r--include/zipcomprs.h8
-rw-r--r--include/zld.h20
-rw-r--r--include/zstr.h31
-rw-r--r--include/ztext.h15
-rw-r--r--include/zverse.h37
179 files changed, 4940 insertions, 2181 deletions
diff --git a/include/Greek2Greek.h b/include/Greek2Greek.h
deleted file mode 100644
index 00359c1..0000000
--- a/include/Greek2Greek.h
+++ /dev/null
@@ -1,117 +0,0 @@
-//*****************************************************************************
-// Author : William Dicks ***
-// Date Created: 10 February 1998 ***
-// Purpose : Interface for Greek to b-Greek conversion and vice versa ***
-// File Name : Greek2Greek.h ***
-// ***
-// Author info : ---------------------------------------------------------- ***
-// Address : 23 Tieroogpark ***
-// : Hoewe Str ***
-// : Elarduspark X3 ***
-// : 0181 ***
-// : South Africa ***
-// Home Tel: +27 (0)12 345 3166 ***
-// Cell No : +27 (0)82 577 4424 ***
-// e-mail : wd@isis.co.za ***
-// Church WWW : http://www.hatfield.co.za ***
-//*****************************************************************************
-/*
- *
- * $Id: Greek2Greek.h 1688 2005-01-01 04:42:26Z scribe $
- *
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
- * CrossWire Bible Society
- * P. O. Box 2528
- * Tempe, AZ 85280-2528
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the
- * Free Software Foundation version 2.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- */
-
-#ifndef __GREEK2GREEK
-#define __GREEK2GREEK
-
-#include <defs.h>
-SWORD_NAMESPACE_START
-
-//*****************************************************************************
-// Used to convert a string created by using the Greek font supplied with the
-// Sword Project to a string that conforms to the b-Greek discussion list
-// method of transliteration.
-//*****************************************************************************
-unsigned char Greek2bGreek (unsigned char *sResult, unsigned char *sGreekText,
- int nMaxResultBuflen);
-
-//*****************************************************************************
-// Used to convert a string created by using the b-Greek method of
-// transliteration to a string that can be converted to a Greek-font readable
-// string.
-//*****************************************************************************
-unsigned char bGreek2Greek (unsigned char *sResult,
- unsigned char *sGreekText, int nMaxResultBuflen);
-
-//*****************************************************************************
-// Parse a Greek font created string and return the b-Greek equivalent
-//*****************************************************************************
-int ParseGreek (unsigned char *sResult,
- unsigned char *sGreekText, int nMaxResultBuflen);
-
-//*****************************************************************************
-// Parse a b-Greek string and return the Greek font equivalent
-//*****************************************************************************
-int ParsebGreek (unsigned char *sResult,
- unsigned char *sGreekText, int nMaxResultBuflen);
-
-//*****************************************************************************
-// Convert a unsigned character to a GREEK font unsigned character
-//*****************************************************************************
-unsigned char char2Font (unsigned char letter, // bGreek letter to convert to Font letter
- bool finalSigma, // Is it a final SIGMA
- bool iota, // TRUE = IOTA subscript; FALSE = No IOTA
- bool breathing, // TRUE = add breathing; FALSE = no breathing
- bool rough); // TRUE = rough breathing; False = smooth
-
-//*****************************************************************************
-// Convert a GREEK font unsigned character to a unsigned character
-//*****************************************************************************
-unsigned char Font2char (unsigned char letter, // bGreek letter to convert to Font letter
- bool & iota, // TRUE = IOTA subscript; FALSE = No IOTA
- bool & breathing, // TRUE = add breathing; FALSE = no breathing
- bool & rough); // TRUE = rough breathing; False = smooth
-
-
-//*****************************************************************************
-// Identify and return a bGreek letter from a special font char
-//*****************************************************************************
-bool getSpecialChar (unsigned char Font, unsigned char &letter);
-
-//*****************************************************************************
-// true if the font character is a special character; false it isn't
-//*****************************************************************************
-bool SpecialGreek (unsigned char Font);
-
-//*****************************************************************************
-// Return Greek font puntuation from bGreek punstuation
-//*****************************************************************************
-unsigned char getGreekPunct (unsigned char bGreek);
-
-//*****************************************************************************
-// Return bGreek puntuation from Greek font punstuation
-//*****************************************************************************
-unsigned char getbGreekPunct (unsigned char Greek);
-
-//*****************************************************************************
-// Is the character punctuation or a space: true it is, false it isn't
-//*****************************************************************************
-bool isPunctSpace (unsigned char c);
-
-SWORD_NAMESPACE_END
-
-#endif // __GREEK2GREEK
diff --git a/include/GreekChars.h b/include/GreekChars.h
deleted file mode 100644
index 225f9ef..0000000
--- a/include/GreekChars.h
+++ /dev/null
@@ -1,154 +0,0 @@
-//*****************************************************************************
-// Author : William Dicks ***
-// Date Created: 10 February 1998 ***
-// Purpose : Enumeration for Greek to b-Greek conversion and vice ***
-// : versa. ***
-// File Name : GreekChars.h ***
-// ***
-// Author info : ---------------------------------------------------------- ***
-// Address : 23 Tieroogpark ***
-// : Hoewe Str ***
-// : Elarduspark X3 ***
-// : 0181 ***
-// : South Africa ***
-// Home Tel: +27 (0)12 345 3166 ***
-// Cell No : +27 (0)82 577 4424 ***
-// e-mail : wd@isis.co.za ***
-// Church WWW : http://www.hatfield.co.za ***
-//*****************************************************************************
-/*
- *
- * $Id: GreekChars.h 1688 2005-01-01 04:42:26Z scribe $
- *
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
- * CrossWire Bible Society
- * P. O. Box 2528
- * Tempe, AZ 85280-2528
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the
- * Free Software Foundation version 2.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- */
-
-#ifndef __GREEKCHARS_H
-#define __GREEKCHARS_H
-
-// This enum represents the values of the characters used for the
-// transliteration as used on the b-greek discussion list.
-
-#include <defs.h>
-SWORD_NAMESPACE_START
-
-enum bGreekChars
-{
- ALPHA = 65, // A
- BETA, // B
- CHI, // C
- DELTA, // D
- EPSILON, // E
- PHI, // F
- GAMMA, // G
- ETA, // H
- IOTA, // I
- // No J
- KAPPA = 75, // K
- LAMBDA, // L
- MU, // M
- NU, // N
- OMICRON, // O
- PI, // P
- THETA, // Q
- RHO, // R
- SIGMA, // S
- TAU, // T
- UPSILON, // U
- // No V
- OMEGA = 'W', // W
- XI, // X
- PSI, // Y
- ZETA, // Z
- ROUGH = 104, // h
- IOTA_SUB // i
-};
-
-// This enum represents the values of the characters ib the Greek.ttf font,
-// and the comments on the right are the corresponding bGreek equivalents.
-
-enum GreekFontChars
-{
- gALPHA = 'a', // A
- gBETA, // B
- gCHI, // C
- gDELTA, // D
- gEPSILON, // E
- gPHI, // F
- gGAMMA, // G
- gETA, // H
- gIOTA, // I
- gSIGMA_END, // j
- gKAPPA, // K
- gLAMBDA, // L
- gMU, // M
- gNU, // N
- gOMICRON, // O
- gPI, // P
- gTHETA, // Q
- gRHO, // R
- gSIGMA, // S
- gTAU, // T
- gUPSILON, // U
- // No V
- gOMEGA = 'w', // W
- gXI, // X
- gPSI, // Y
- gZETA, // Z
- gROUGH_ALPHA = 161, // hA
- gROUGH_EPSILON = 152, // hE
- gROUGH_ETA = 185, // hH
- gROUGH_IOTA = 131, // hH
- gROUGH_OMICRON = 208, // hH
- gROUGH_RHO = 183, // hR
- gROUGH_UPSILON = 216, // hU
- gROUGH_OMEGA = 230, // hW
- gIOTA_ALPHA = 'v', // Ai
- gIOTA_ETA = 'V', // Ei
- gIOTA_OMEGA = 'J', // Wi
- gNON_ROUGH_ALPHA = 162, // hA
- gNON_ROUGH_EPSILON = 153, // hE
- gNON_ROUGH_ETA = 186, // hH
- gNON_ROUGH_IOTA = 132, // hH
- gNON_ROUGH_OMICRON = 209, // hH
- gNON_ROUGH_RHO = 184, // hR
- gNON_ROUGH_UPSILON = 217, // hU
- gNON_ROUGH_OMEGA = 231 // hW
-};
-
-// English puntuation as used on bGreek
-
-enum bGreekPunct
-{
- COMMA = ',',
- STOP = '.',
- SEMI_COLON = ';',
- QUESTION = '?'
-};
-
-// English puntuation as used in the Greek font
-
-enum GreekPunct
-{
- gCOMMA = ',',
- gSTOP = '.',
- gSEMI_COLON = ':',
- gQUESTION = ';'
-};
-
-SWORD_NAMESPACE_END
-
-#endif // __GREEKCHARS_H
diff --git a/include/Makefile.am b/include/Makefile.am
index 92de5cb..de34949 100644
--- a/include/Makefile.am
+++ b/include/Makefile.am
@@ -1,8 +1,6 @@
swincludedir = $(top_srcdir)/include
-pkginclude_HEADERS = $(swincludedir)/Greek2Greek.h
-pkginclude_HEADERS += $(swincludedir)/GreekChars.h
-pkginclude_HEADERS += $(swincludedir)/canon.h
+pkginclude_HEADERS = $(swincludedir)/canon.h
pkginclude_HEADERS += $(swincludedir)/canon_abbrevs.h
pkginclude_HEADERS += $(swincludedir)/cipherfil.h
pkginclude_HEADERS += $(swincludedir)/curlftpt.h
@@ -13,16 +11,17 @@ pkginclude_HEADERS += $(swincludedir)/encfiltmgr.h
pkginclude_HEADERS += $(swincludedir)/entriesblk.h
pkginclude_HEADERS += $(swincludedir)/femain.h
pkginclude_HEADERS += $(swincludedir)/filemgr.h
-pkginclude_HEADERS += $(swincludedir)/versemgr.h
+pkginclude_HEADERS += $(swincludedir)/versificationmgr.h
pkginclude_HEADERS += $(swincludedir)/flatapi.h
pkginclude_HEADERS += $(swincludedir)/ftpparse.h
-pkginclude_HEADERS += $(swincludedir)/ftptrans.h
+pkginclude_HEADERS += $(swincludedir)/remotetrans.h
pkginclude_HEADERS += $(swincludedir)/ftplibftpt.h
pkginclude_HEADERS += $(swincludedir)/ftplib.h
pkginclude_HEADERS += $(swincludedir)/gbffootnotes.h
pkginclude_HEADERS += $(swincludedir)/gbfheadings.h
pkginclude_HEADERS += $(swincludedir)/gbfhtml.h
+pkginclude_HEADERS += $(swincludedir)/gbfxhtml.h
pkginclude_HEADERS += $(swincludedir)/gbfhtmlhref.h
pkginclude_HEADERS += $(swincludedir)/gbfwebif.h
pkginclude_HEADERS += $(swincludedir)/gbfmorph.h
@@ -47,8 +46,11 @@ pkginclude_HEADERS += $(swincludedir)/markupfiltmgr.h
pkginclude_HEADERS += $(swincludedir)/multimapwdef.h
pkginclude_HEADERS += $(swincludedir)/nullim.h
+pkginclude_HEADERS += $(swincludedir)/osisglosses.h
+pkginclude_HEADERS += $(swincludedir)/osisenum.h
pkginclude_HEADERS += $(swincludedir)/osisheadings.h
pkginclude_HEADERS += $(swincludedir)/osishtmlhref.h
+pkginclude_HEADERS += $(swincludedir)/osisxhtml.h
pkginclude_HEADERS += $(swincludedir)/osiswebif.h
pkginclude_HEADERS += $(swincludedir)/osismorph.h
pkginclude_HEADERS += $(swincludedir)/osismorphsegmentation.h
@@ -62,11 +64,11 @@ pkginclude_HEADERS += $(swincludedir)/osisredletterwords.h
pkginclude_HEADERS += $(swincludedir)/osisscripref.h
pkginclude_HEADERS += $(swincludedir)/osiswordjs.h
pkginclude_HEADERS += $(swincludedir)/osisvariants.h
+pkginclude_HEADERS += $(swincludedir)/osisxlit.h
pkginclude_HEADERS += $(swincludedir)/papyriplain.h
-pkginclude_HEADERS += $(swincludedir)/plainfootnotes.h
-pkginclude_HEADERS += $(swincludedir)/plainhtml.h
pkginclude_HEADERS += $(swincludedir)/rawcom.h
+pkginclude_HEADERS += $(swincludedir)/rawcom4.h
pkginclude_HEADERS += $(swincludedir)/rawfiles.h
pkginclude_HEADERS += $(swincludedir)/rawgenbook.h
pkginclude_HEADERS += $(swincludedir)/rawld.h
@@ -74,13 +76,16 @@ pkginclude_HEADERS += $(swincludedir)/rawld4.h
pkginclude_HEADERS += $(swincludedir)/rawstr.h
pkginclude_HEADERS += $(swincludedir)/rawstr4.h
pkginclude_HEADERS += $(swincludedir)/rawtext.h
+pkginclude_HEADERS += $(swincludedir)/rawtext4.h
pkginclude_HEADERS += $(swincludedir)/rawverse.h
+pkginclude_HEADERS += $(swincludedir)/rawverse4.h
if USE_INTERNAL_REGEX
pkginclude_HEADERS += $(swincludedir)/internal/regex/regex.h
endif
pkginclude_HEADERS += $(swincludedir)/roman.h
pkginclude_HEADERS += $(swincludedir)/rtfhtml.h
pkginclude_HEADERS += $(swincludedir)/sapphire.h
+pkginclude_HEADERS += $(swincludedir)/scsuutf8.h
pkginclude_HEADERS += $(swincludedir)/strkey.h
pkginclude_HEADERS += $(swincludedir)/swbasicfilter.h
pkginclude_HEADERS += $(swincludedir)/swbuf.h
@@ -106,7 +111,6 @@ pkginclude_HEADERS += $(swincludedir)/swoptfilter.h
pkginclude_HEADERS += $(swincludedir)/swobject.h
pkginclude_HEADERS += $(swincludedir)/swsearchable.h
pkginclude_HEADERS += $(swincludedir)/swtext.h
-pkginclude_HEADERS += $(swincludedir)/swunicod.h
pkginclude_HEADERS += $(swincludedir)/swversion.h
pkginclude_HEADERS += $(swincludedir)/sysdata.h
@@ -114,6 +118,7 @@ pkginclude_HEADERS += $(swincludedir)/thmlfootnotes.h
pkginclude_HEADERS += $(swincludedir)/thmlgbf.h
pkginclude_HEADERS += $(swincludedir)/thmlheadings.h
pkginclude_HEADERS += $(swincludedir)/thmlhtml.h
+pkginclude_HEADERS += $(swincludedir)/thmlxhtml.h
pkginclude_HEADERS += $(swincludedir)/thmlhtmlhref.h
pkginclude_HEADERS += $(swincludedir)/thmlwebif.h
pkginclude_HEADERS += $(swincludedir)/thmllemma.h
@@ -128,6 +133,7 @@ pkginclude_HEADERS += $(swincludedir)/thmlwordjs.h
pkginclude_HEADERS += $(swincludedir)/teiplain.h
pkginclude_HEADERS += $(swincludedir)/teirtf.h
+pkginclude_HEADERS += $(swincludedir)/teixhtml.h
pkginclude_HEADERS += $(swincludedir)/teihtmlhref.h
pkginclude_HEADERS += $(swincludedir)/treekey.h
@@ -154,7 +160,6 @@ pkginclude_HEADERS += $(swincludedir)/utilxml.h
pkginclude_HEADERS += $(swincludedir)/versekey.h
pkginclude_HEADERS += $(swincludedir)/versetreekey.h
pkginclude_HEADERS += $(swincludedir)/zcom.h
-pkginclude_HEADERS += $(swincludedir)/zconf.h
pkginclude_HEADERS += $(swincludedir)/zipcomprs.h
pkginclude_HEADERS += $(swincludedir)/zld.h
pkginclude_HEADERS += $(swincludedir)/zstr.h
@@ -167,11 +172,13 @@ pkginclude_HEADERS += $(swincludedir)/canon_mt.h
pkginclude_HEADERS += $(swincludedir)/canon_nrsv.h
pkginclude_HEADERS += $(swincludedir)/canon_nrsva.h
pkginclude_HEADERS += $(swincludedir)/canon_synodal.h
+pkginclude_HEADERS += $(swincludedir)/canon_synodalprot.h
pkginclude_HEADERS += $(swincludedir)/canon_vulg.h
pkginclude_HEADERS += $(swincludedir)/canon_german.h
pkginclude_HEADERS += $(swincludedir)/canon_luther.h
pkginclude_HEADERS += $(swincludedir)/canon_catholic.h
pkginclude_HEADERS += $(swincludedir)/canon_catholic2.h
-pkginclude_HEADERS += $(swincludedir)/canon_synodalp.h
+pkginclude_HEADERS += $(swincludedir)/canon_lxx.h
+pkginclude_HEADERS += $(swincludedir)/canon_orthodox.h
pkginclude_HEADERS += $(swincludedir)/canon_null.h
diff --git a/include/SwordAPI.pas b/include/SwordAPI.pas
index 837ff2d..07342bc 100644
--- a/include/SwordAPI.pas
+++ b/include/SwordAPI.pas
@@ -1,8 +1,10 @@
-{*
+{******************************************************************************
*
- * $Id: SwordAPI.pas 1688 2005-01-01 04:42:26Z scribe $
+ * SwordAPI.pas -
+ *
+ * $Id: SwordAPI.pas 2833 2013-06-29 06:40:28Z chrislit $
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * Copyright 1996-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/bz2comprs.h b/include/bz2comprs.h
new file mode 100644
index 0000000..c1e1648
--- /dev/null
+++ b/include/bz2comprs.h
@@ -0,0 +1,45 @@
+/******************************************************************************
+ *
+ * bz2comprs.h - Bzip2Compress, a driver class that provides bzip2
+ * compression (Burrows–Wheeler with Huffman coding)
+ *
+ * $Id: bz2comprs.h 2858 2013-07-08 03:08:10Z chrislit $
+ *
+ * Copyright 2000-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
+#ifndef BZ2COMPRS_H
+#define BZ2COMPRS_H
+
+#include <swcomprs.h>
+
+#include <defs.h>
+
+SWORD_NAMESPACE_START
+
+class SWDLLEXPORT Bzip2Compress : public SWCompress {
+
+protected:
+public:
+ Bzip2Compress();
+ virtual ~Bzip2Compress();
+
+ virtual void Encode(void);
+ virtual void Decode(void);
+};
+
+SWORD_NAMESPACE_END
+#endif
diff --git a/include/canon.h b/include/canon.h
index 95222c4..8f6a977 100644
--- a/include/canon.h
+++ b/include/canon.h
@@ -1,9 +1,10 @@
/******************************************************************************
- * canon.h - Canonical text information to be included by VerseKey.cpp
*
- * $Id: canon.h 2365 2009-04-29 19:30:06Z chrislit $
+ * canon.h - Canonical text information to be included by VerseKey.cpp
*
- * Copyright 1998-2009 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: canon.h 2915 2013-07-23 16:55:54Z chrislit $
+ *
+ * Copyright 1998-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -110,93 +111,134 @@ struct sbook ntbooks[] = {
int vm[] = {
// Genesis
- 31, 25, 24, 26, 32, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38,
- 18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 55, 32, 20, 31, 29, 43, 36,
- 30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
+ 31, 25, 24, 26, 32, 22, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 38, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 55, 32, 20, 31, 29, 43, 36, 30, 23, 23,
+ 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
// Exodus
- 22, 25, 22, 31, 23, 30, 25, 32, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25,
- 26, 36, 31, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29,
- 31, 43, 38,
+ 22, 25, 22, 31, 23, 30, 25, 32, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 36, 31, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
// Leviticus
- 17, 16, 17, 35, 19, 30, 38, 36, 24, 20, 47, 8, 59, 57, 33, 34, 16, 30, 37,
- 27, 24, 33, 44, 23, 55, 46, 34,
+ 17, 16, 17, 35, 19, 30, 38, 36, 24, 20,
+ 47, 8, 59, 57, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
// Numbers
- 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 35, 16, 33, 45, 41, 50, 13, 32, 22,
- 29, 35, 41, 30, 25, 18, 65, 23, 31, 40, 16, 54, 42, 56, 29, 34, 13,
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 16, 33, 45, 41, 50, 13, 32, 22, 29,
+ 35, 41, 30, 25, 18, 65, 23, 31, 40, 16,
+ 54, 42, 56, 29, 34, 13,
// Deuteronomy
- 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 32, 18, 29, 23, 22, 20, 22, 21,
- 20, 23, 30, 25, 22, 19, 19, 26, 68, 29, 20, 30, 52, 29, 12,
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 32, 18, 29, 23, 22, 20, 22, 21, 20,
+ 23, 30, 25, 22, 19, 19, 26, 68, 29, 20,
+ 30, 52, 29, 12,
// Joshua
- 18, 24, 17, 24, 15, 27, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51,
- 9, 45, 34, 16, 33,
+ 18, 24, 17, 24, 15, 27, 26, 35, 27, 43,
+ 23, 24, 33, 15, 63, 10, 18, 28, 51, 9,
+ 45, 34, 16, 33,
// Judges
- 36, 23, 31, 24, 31, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30,
- 48, 25,
+ 36, 23, 31, 24, 31, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 31, 30, 48,
+ 25,
// Ruth
22, 23, 18, 22,
// I Samuel
- 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24,
- 42, 15, 23, 29, 22, 44, 25, 12, 25, 11, 31, 13,
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 42,
+ 15, 23, 29, 22, 44, 25, 12, 25, 11, 31,
+ 13,
// II Samuel
- 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 33, 43,
- 26, 22, 51, 39, 25,
+ 27, 32, 39, 12, 25, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 33, 43, 26,
+ 22, 51, 39, 25,
// I Kings
- 53, 46, 28, 34, 18, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21,
- 43, 29, 53,
+ 53, 46, 28, 34, 18, 38, 51, 66, 28, 29,
+ 43, 33, 34, 31, 34, 34, 24, 46, 21, 43,
+ 29, 53,
// II Kings
- 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 21, 21, 25, 29, 38, 20, 41, 37, 37,
- 21, 26, 20, 37, 20, 30,
+ 18, 25, 27, 44, 27, 33, 20, 29, 37, 36,
+ 21, 21, 25, 29, 38, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
// I Chronicles
- 54, 55, 24, 43, 26, 81, 40, 40, 44, 14, 47, 40, 14, 17, 29, 43, 27, 17, 19,
- 8, 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ 54, 55, 24, 43, 26, 81, 40, 40, 44, 14,
+ 47, 40, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
// II Chronicles
- 17, 18, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 22, 15, 19, 14, 19, 34, 11,
- 37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23,
+ 17, 18, 17, 22, 14, 42, 22, 18, 31, 19,
+ 23, 16, 22, 15, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 27, 23,
// Ezra
11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
// Nehemiah
- 11, 20, 32, 23, 19, 19, 73, 18, 38, 39, 36, 47, 31,
+ 11, 20, 32, 23, 19, 19, 73, 18, 38, 39,
+ 36, 47, 31,
// Esther
22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
// Job
- 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 22, 16, 21, 29,
- 29, 34, 30, 17, 25, 6, 14, 23, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41,
- 30, 24, 34, 17,
+ 22, 13, 26, 21, 27, 30, 21, 22, 35, 22,
+ 20, 25, 28, 22, 35, 22, 16, 21, 29, 29,
+ 34, 30, 17, 25, 6, 14, 23, 28, 25, 31,
+ 40, 22, 33, 37, 16, 33, 24, 41, 30, 24,
+ 34, 17,
// Psalms
- 6, 12, 8, 8, 12, 10, 17, 9, 20, 18, 7, 8, 6, 7, 5, 11, 15, 50, 14, 9, 13,
- 31, 6, 10, 22, 12, 14, 9, 11, 12, 24, 11, 22, 22, 28, 12, 40, 22, 13, 17,
- 13, 11, 5, 26, 17, 11, 9, 14, 20, 23, 19, 9, 6, 7, 23, 13, 11, 11, 17, 12,
- 8, 12, 11, 10, 13, 20, 7, 35, 36, 5, 24, 20, 28, 23, 10, 12, 20, 72, 13,
- 19, 16, 8, 18, 12, 13, 17, 7, 18, 52, 17, 16, 15, 5, 23, 11, 13, 12, 9, 9,
- 5, 8, 28, 22, 35, 45, 48, 43, 13, 31, 7, 10, 10, 9, 8, 18, 19, 2, 29, 176,
- 7, 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, 3, 18, 3, 3, 21, 26, 9, 8, 24, 13, 10, 7,
- 12, 15, 21, 10, 20, 14, 9, 6,
+ 6, 12, 8, 8, 12, 10, 17, 9, 20, 18,
+ 7, 8, 6, 7, 5, 11, 15, 50, 14, 9,
+ 13, 31, 6, 10, 22, 12, 14, 9, 11, 12,
+ 24, 11, 22, 22, 28, 12, 40, 22, 13, 17,
+ 13, 11, 5, 26, 17, 11, 9, 14, 20, 23,
+ 19, 9, 6, 7, 23, 13, 11, 11, 17, 12,
+ 8, 12, 11, 10, 13, 20, 7, 35, 36, 5,
+ 24, 20, 28, 23, 10, 12, 20, 72, 13, 19,
+ 16, 8, 18, 12, 13, 17, 7, 18, 52, 17,
+ 16, 15, 5, 23, 11, 13, 12, 9, 9, 5,
+ 8, 28, 22, 35, 45, 48, 43, 13, 31, 7,
+ 10, 10, 9, 8, 18, 19, 2, 29, 176, 7,
+ 8, 9, 4, 8, 5, 6, 5, 6, 8, 8,
+ 3, 18, 3, 3, 21, 26, 9, 8, 24, 13,
+ 10, 7, 12, 15, 21, 10, 20, 14, 9, 6,
// Proverbs
- 33, 22, 35, 27, 23, 35, 27, 36, 18, 32, 31, 28, 25, 35, 33, 33, 28, 24, 29,
- 30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
+ 33, 22, 35, 27, 23, 35, 27, 36, 18, 32,
+ 31, 28, 25, 35, 33, 33, 28, 24, 29, 30,
+ 31, 29, 35, 34, 28, 28, 27, 28, 27, 33,
+ 31,
// Ecclesiastes
- 18, 26, 22, 16, 20, 12, 29, 17, 18, 20, 10, 14,
+ 18, 26, 22, 16, 20, 12, 29, 17, 18, 20,
+ 10, 14,
// Song of Solomon
17, 17, 11, 16, 16, 13, 13, 14,
// Isaiah
- 31, 22, 26, 6, 30, 13, 25, 22, 21, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
- 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8,
- 31, 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21,
- 14, 21, 22, 11, 12, 19, 12, 25, 24,
+ 31, 22, 26, 6, 30, 13, 25, 22, 21, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 25, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 19, 12, 25, 24,
// Jeremiah
- 19, 37, 25, 31, 31, 30, 34, 22, 26, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15,
- 18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 21,
- 28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
+ 19, 37, 25, 31, 31, 30, 34, 22, 26, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 40, 10, 38, 24, 22, 17, 32, 24,
+ 40, 44, 26, 22, 19, 32, 21, 28, 18, 16,
+ 18, 22, 13, 30, 5, 28, 7, 47, 39, 46,
+ 64, 34,
// Lamentations
22, 22, 66, 22, 22,
// Ezekiel
- 28, 10, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14,
- 49, 32, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28,
- 23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
+ 28, 10, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 49,
+ 32, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
// Daniel
- 21, 49, 30, 37, 31, 28, 28, 27, 27, 21, 45, 13,
+ 21, 49, 30, 37, 31, 28, 28, 27, 27, 21,
+ 45, 13,
// Hosea
- 11, 23, 5, 19, 15, 11, 16, 14, 17, 15, 12, 14, 16, 9,
+ 11, 23, 5, 19, 15, 11, 16, 14, 17, 15,
+ 12, 14, 16, 9,
// Joel
20, 32, 21,
// Amos
@@ -216,30 +258,39 @@ int vm[] = {
// Haggai
15, 23,
// Zechariah
- 21, 13, 10, 14, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
+ 21, 13, 10, 14, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
// Malachi
14, 17, 18, 6,
// -----------------------------------------------------------------
// Matthew
- 25, 23, 17, 25, 48, 34, 29, 34, 38, 42, 30, 50, 58, 36, 39, 28, 27, 35, 30,
- 34, 46, 46, 39, 51, 46, 75, 66, 20,
+ 25, 23, 17, 25, 48, 34, 29, 34, 38, 42,
+ 30, 50, 58, 36, 39, 28, 27, 35, 30, 34,
+ 46, 46, 39, 51, 46, 75, 66, 20,
// Mark
- 45, 28, 35, 41, 43, 56, 37, 38, 50, 52, 33, 44, 37, 72, 47, 20,
+ 45, 28, 35, 41, 43, 56, 37, 38, 50, 52,
+ 33, 44, 37, 72, 47, 20,
// Luke
- 80, 52, 38, 44, 39, 49, 50, 56, 62, 42, 54, 59, 35, 35, 32, 31, 37, 43, 48,
- 47, 38, 71, 56, 53,
+ 80, 52, 38, 44, 39, 49, 50, 56, 62, 42,
+ 54, 59, 35, 35, 32, 31, 37, 43, 48, 47,
+ 38, 71, 56, 53,
// John
- 51, 25, 36, 54, 47, 71, 53, 59, 41, 42, 57, 50, 38, 31, 27, 33, 26, 40, 42,
- 31, 25,
+ 51, 25, 36, 54, 47, 71, 53, 59, 41, 42,
+ 57, 50, 38, 31, 27, 33, 26, 40, 42, 31,
+ 25,
// Acts
- 26, 47, 26, 37, 42, 15, 60, 40, 43, 48, 30, 25, 52, 28, 41, 40, 34, 28, 41,
- 38, 40, 30, 35, 27, 27, 32, 44, 31,
+ 26, 47, 26, 37, 42, 15, 60, 40, 43, 48,
+ 30, 25, 52, 28, 41, 40, 34, 28, 41, 38,
+ 40, 30, 35, 27, 27, 32, 44, 31,
// Romans
- 32, 29, 31, 25, 21, 23, 25, 39, 33, 21, 36, 21, 14, 23, 33, 27,
+ 32, 29, 31, 25, 21, 23, 25, 39, 33, 21,
+ 36, 21, 14, 23, 33, 27,
// I Corinthians
- 31, 16, 23, 21, 13, 20, 40, 13, 27, 33, 34, 31, 13, 40, 58, 24,
+ 31, 16, 23, 21, 13, 20, 40, 13, 27, 33,
+ 34, 31, 13, 40, 58, 24,
// II Corinthians
- 24, 17, 18, 18, 21, 18, 16, 24, 15, 18, 33, 21, 14,
+ 24, 17, 18, 18, 21, 18, 16, 24, 15, 18,
+ 33, 21, 14,
// Galatians
24, 21, 29, 31, 26, 18,
// Ephesians
@@ -261,7 +312,8 @@ int vm[] = {
// Philemon
25,
// Hebrews
- 14, 18, 19, 16, 14, 20, 28, 13, 28, 39, 40, 29, 25,
+ 14, 18, 19, 16, 14, 20, 28, 13, 28, 39,
+ 40, 29, 25,
// James
27, 26, 18, 17, 20,
// I Peter
@@ -277,8 +329,9 @@ int vm[] = {
// Jude
25,
// Revelation of John
- 20, 29, 22, 11, 14, 17, 17, 13, 21, 11, 19, 17, 18, 20, 8, 21, 18, 24, 21,
- 15, 27, 21
+ 20, 29, 22, 11, 14, 17, 17, 13, 21, 11,
+ 19, 17, 18, 20, 8, 21, 18, 24, 21, 15,
+ 27, 21
};
diff --git a/include/canon_abbrevs.h b/include/canon_abbrevs.h
index f456a5f..a5fc320 100644
--- a/include/canon_abbrevs.h
+++ b/include/canon_abbrevs.h
@@ -1,7 +1,11 @@
/******************************************************************************
- * canon_abbrevs.h - Canonical text information to be included by VerseKey.cpp
*
- * Copyright 1998-2009 CrossWire Bible Society (http://www.crosswire.org)
+ * canon_abbrevs.h - Canonical text information to be included by
+ * VerseKey.cpp
+ *
+ * $Id: canon_abbrevs.h 2970 2013-08-22 07:03:11Z chrislit $
+ *
+ * Copyright 2009-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -171,7 +175,6 @@ const struct abbrev builtin_abbrevs[] = {
{"3MEQ", "3Meq"}, // III Meqabyan
{"3MEQABYAN", "3Meq"}, // III Meqabyan
{"4 BARUCH", "4Bar"}, // IV Baruch
- {"4 EZRA", "2Esd"}, // II Esdras
{"4 KGDMS", "2Kgs"}, // II Kings
{"4 KGS", "2Kgs"}, // II Kings
{"4 KINGDOMS", "2Kgs"}, // II Kings
@@ -179,7 +182,6 @@ const struct abbrev builtin_abbrevs[] = {
{"4 MACCABEES", "4Macc"}, // IV Maccabees
{"4BAR", "4Bar"}, // IV Baruch
{"4BARUCH", "4Bar"}, // IV Baruch
- {"4EZRA", "2Esd"}, // II Esdras
{"4KGDMS", "2Kgs"}, // II Kings
{"4KGS", "2Kgs"}, // II Kings
{"4KINGDOMS", "2Kgs"}, // II Kings
@@ -231,9 +233,9 @@ const struct abbrev builtin_abbrevs[] = {
{"EPLAO", "EpLao"}, // Laodiceans
{"ES", "Esth"}, // Esther
{"ESDRAS A", "1Esd"}, // I Esdras
- {"ESDRAS B", "2Esd"}, // II Esdras
+ {"ESDRAS B", "Ezra"}, // II Esdras
{"ESDRASA", "1Esd"}, // I Esdras
- {"ESDRASB", "2Esd"}, // II Esdras
+ {"ESDRASB", "Ezra"}, // II Esdras
{"ESG", "EsthGr"}, // Esther (Greek)
{"ESTER", "Esth"}, // Esther
{"ESTH", "Esth"}, // Esther
@@ -390,14 +392,12 @@ const struct abbrev builtin_abbrevs[] = {
{"ITHESSALONIANS", "1Thess"}, // I Thessalonians
{"ITIMOTHY", "1Tim"}, // I Timothy
{"IV BARUCH", "4Bar"}, // IV Baruch
- {"IV EZRA", "2Esd"}, // II Esdras
{"IV KGDMS", "2Kgs"}, // II Kings
{"IV KGS", "2Kgs"}, // II Kings
{"IV KINGDOMS", "2Kgs"}, // II Kings
{"IV KINGS", "2Kgs"}, // II Kings
{"IV MACCABEES", "4Macc"}, // IV Maccabees
{"IVBARUCH", "4Bar"}, // IV Baruch
- {"IVEZRA", "2Esd"}, // II Esdras
{"IVKGDMS", "2Kgs"}, // II Kings
{"IVKGS", "2Kgs"}, // II Kings
{"IVKINGDOMS", "2Kgs"}, // II Kings
@@ -476,6 +476,7 @@ const struct abbrev builtin_abbrevs[] = {
{"PHILEMON", "Phlm"}, // Philemon
{"PHILIPPIANS", "Phil"}, // Philippians
{"PHLM", "Phlm"}, // Philemon
+ {"PHLP", "Phil"}, // Philippians
{"PHM", "Phlm"}, // Philemon
{"PHP", "Phil"}, // Philippians
{"PR", "Prov"}, // Proverbs
@@ -533,6 +534,7 @@ const struct abbrev builtin_abbrevs[] = {
{"WISDOM", "Wis"}, // Wisdom
{"WISDOM OF BEN SIRA", "Sir"}, // Sirach
{"WISDOM OF JESUS SON OF SIRACH", "Sir"}, // Sirach
+ {"WISDOM OF SIRACH", "Sir"}, // Sirach
{"WISDOM OF SOLOMON", "Wis"}, // Wisdom
{"ZECH", "Zech"}, // Zechariah
{"ZECHARIAH", "Zech"}, // Zechariah
diff --git a/include/canon_catholic.h b/include/canon_catholic.h
index ba69d83..cadec81 100644
--- a/include/canon_catholic.h
+++ b/include/canon_catholic.h
@@ -1,7 +1,10 @@
/******************************************************************************
- * canon_catholic.h - Versification data for the Catholic system
*
- * Copyright 2010 CrossWire Bible Society (http://www.crosswire.org)
+ * canon_catholic.h - Versification data for the Catholic system
+ *
+ * $Id: canon_catholic.h 2915 2013-07-23 16:55:54Z chrislit $
+ *
+ * Copyright 2010-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -85,75 +88,158 @@ struct sbook otbooks_catholic[] = {
int vm_catholic[] = {
// Genesis
- 31, 25, 24, 26, 32, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38, 18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 54, 33, 20, 31, 29, 43, 36, 30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
+ 31, 25, 24, 26, 32, 22, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 38, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 54, 33, 20, 31, 29, 43, 36, 30, 23, 23,
+ 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
// Exodus
- 22, 25, 22, 31, 23, 30, 29, 28, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25, 26, 37, 30, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
+ 22, 25, 22, 31, 23, 30, 29, 28, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 37, 30, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
// Leviticus
- 17, 16, 17, 35, 26, 23, 38, 36, 24, 20, 47, 8, 59, 57, 33, 34, 16, 30, 37, 27, 24, 33, 44, 23, 55, 46, 34,
+ 17, 16, 17, 35, 26, 23, 38, 36, 24, 20,
+ 47, 8, 59, 57, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
// Numbers
- 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 35, 16, 33, 45, 41, 35, 28, 32, 22, 29, 35, 41, 30, 25, 19, 66, 23, 31, 39, 17, 54, 42, 56, 29, 34, 13,
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 16, 33, 45, 41, 35, 28, 32, 22, 29,
+ 35, 41, 30, 25, 19, 66, 23, 31, 39, 17,
+ 54, 42, 56, 29, 34, 13,
// Deuteronomy
- 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 31, 19, 29, 23, 22, 20, 22, 21, 20, 23, 29, 26, 22, 19, 19, 26, 69, 28, 20, 30, 52, 29, 12,
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 31, 19, 29, 23, 22, 20, 22, 21, 20,
+ 23, 29, 26, 22, 19, 19, 26, 69, 28, 20,
+ 30, 52, 29, 12,
// Joshua
- 18, 24, 17, 24, 15, 27, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51, 9, 45, 34, 16, 33,
+ 18, 24, 17, 24, 15, 27, 26, 35, 27, 43,
+ 23, 24, 33, 15, 63, 10, 18, 28, 51, 9,
+ 45, 34, 16, 33,
// Judges
- 36, 23, 31, 24, 32, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30, 48, 25,
+ 36, 23, 31, 24, 32, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 31, 30, 48,
+ 25,
// Ruth
22, 23, 18, 22,
// I Samuel
- 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24, 42, 16, 23, 28, 23, 44, 25, 12, 25, 11, 31, 13,
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 42,
+ 16, 23, 28, 23, 44, 25, 12, 25, 11, 31,
+ 13,
// II Samuel
- 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 32, 44, 26, 22, 51, 39, 25,
+ 27, 32, 39, 12, 25, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 32, 44, 26,
+ 22, 51, 39, 25,
// I Kings
- 53, 46, 28, 20, 32, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21, 43, 29, 54,
+ 53, 46, 28, 20, 32, 38, 51, 66, 28, 29,
+ 43, 33, 34, 31, 34, 34, 24, 46, 21, 43,
+ 29, 54,
// II Kings
- 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 20, 22, 25, 29, 38, 20, 41, 37, 37, 21, 26, 20, 37, 20, 30,
+ 18, 25, 27, 44, 27, 33, 20, 29, 37, 36,
+ 20, 22, 25, 29, 38, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
// I Chronicles
- 54, 55, 24, 43, 41, 66, 40, 40, 44, 14, 47, 41, 14, 17, 29, 43, 27, 17, 19, 8, 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ 54, 55, 24, 43, 41, 66, 40, 40, 44, 14,
+ 47, 41, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
// II Chronicles
- 18, 17, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 23, 14, 19, 14, 19, 34, 11, 37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23,
+ 18, 17, 17, 22, 14, 42, 22, 18, 31, 19,
+ 23, 16, 23, 14, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 27, 23,
// Ezra
11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
// Nehemiah
- 11, 20, 38, 17, 19, 19, 73, 18, 37, 40, 36, 47, 31,
+ 11, 20, 38, 17, 19, 19, 73, 18, 37, 40,
+ 36, 47, 31,
// Tobit
- 22, 14, 17, 21, 23, 19, 17, 21, 6, 14, 19, 22, 18, 15,
+ 22, 14, 17, 21, 23, 19, 17, 21, 6, 14,
+ 19, 22, 18, 15,
// Judith
- 16, 28, 10, 15, 24, 21, 32, 36, 14, 23, 23, 20, 20, 19, 14, 25,
+ 16, 28, 10, 15, 24, 21, 32, 36, 14, 23,
+ 23, 20, 20, 19, 14, 25,
// Esther
22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
// I Maccabees
- 64, 70, 60, 61, 68, 63, 50, 32, 73, 89, 74, 54, 53, 49, 41, 24,
+ 64, 70, 60, 61, 68, 63, 50, 32, 73, 89,
+ 74, 54, 53, 49, 41, 24,
// II Maccabees
- 36, 32, 40, 50, 27, 31, 42, 36, 29, 38, 38, 46, 26, 46, 39,
+ 36, 32, 40, 50, 27, 31, 42, 36, 29, 38,
+ 38, 46, 26, 46, 39,
// Job
- 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 22, 16, 21, 29, 29, 34, 30, 17, 25, 14, 14, 24, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41, 30, 32, 26, 17,
+ 22, 13, 26, 21, 27, 30, 21, 22, 35, 22,
+ 20, 25, 28, 22, 35, 22, 16, 21, 29, 29,
+ 34, 30, 17, 25, 14, 14, 24, 28, 25, 31,
+ 40, 22, 33, 37, 16, 33, 24, 41, 30, 32,
+ 26, 17,
// Psalms
- 6, 12, 9, 9, 13, 11, 18, 10, 21, 18, 7, 9, 6, 7, 5, 11, 15, 51, 15, 10, 14, 32, 6, 10, 22, 12, 14, 9, 11, 13, 25, 11, 22, 23, 28, 13, 40, 23, 14, 18, 14, 12, 5, 27, 18, 12, 10, 15, 21, 24, 21, 11, 7, 9, 24, 14, 12, 12, 18, 14, 9, 13, 12, 11, 14, 20, 8, 36, 37, 6, 24, 20, 28, 23, 11, 13, 21, 72, 13, 20, 17, 8, 19, 13, 14, 17, 7, 19, 53, 17, 16, 16, 5, 23, 11, 13, 12, 9, 9, 5, 9, 29, 22, 35, 45, 48, 43, 14, 31, 7, 10, 10, 9, 8, 18, 19, 2, 29, 176, 7, 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, 3, 18, 3, 3, 21, 26, 9, 8, 24, 14, 10, 8, 12, 15, 21, 10, 20, 14, 9, 6,
+ 6, 12, 9, 9, 13, 11, 18, 10, 21, 18,
+ 7, 9, 6, 7, 5, 11, 15, 51, 15, 10,
+ 14, 32, 6, 10, 22, 12, 14, 9, 11, 13,
+ 25, 11, 22, 23, 28, 13, 40, 23, 14, 18,
+ 14, 12, 5, 27, 18, 12, 10, 15, 21, 24,
+ 21, 11, 7, 9, 24, 14, 12, 12, 18, 14,
+ 9, 13, 12, 11, 14, 20, 8, 36, 37, 6,
+ 24, 20, 28, 23, 11, 13, 21, 72, 13, 20,
+ 17, 8, 19, 13, 14, 17, 7, 19, 53, 17,
+ 16, 16, 5, 23, 11, 13, 12, 9, 9, 5,
+ 9, 29, 22, 35, 45, 48, 43, 14, 31, 7,
+ 10, 10, 9, 8, 18, 19, 2, 29, 176, 7,
+ 8, 9, 4, 8, 5, 6, 5, 6, 8, 8,
+ 3, 18, 3, 3, 21, 26, 9, 8, 24, 14,
+ 10, 8, 12, 15, 21, 10, 20, 14, 9, 6,
// Proverbs
- 33, 22, 35, 27, 23, 35, 27, 36, 18, 32, 31, 28, 25, 35, 33, 33, 28, 24, 29, 30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
+ 33, 22, 35, 27, 23, 35, 27, 36, 18, 32,
+ 31, 28, 25, 35, 33, 33, 28, 24, 29, 30,
+ 31, 29, 35, 34, 28, 28, 27, 28, 27, 33,
+ 31,
// Ecclesiastes
- 18, 26, 22, 17, 19, 12, 29, 17, 18, 20, 10, 14,
+ 18, 26, 22, 17, 19, 12, 29, 17, 18, 20,
+ 10, 14,
// Song of Solomon
17, 17, 11, 17, 16, 12, 14, 14,
// Wisdom
- 16, 24, 19, 20, 23, 25, 30, 21, 19, 21, 26, 27, 19, 31, 19, 29, 21, 25, 22,
+ 16, 24, 19, 20, 23, 25, 30, 21, 19, 21,
+ 26, 27, 19, 31, 19, 29, 21, 25, 22,
// Sirach
- 30, 18, 31, 31, 17, 37, 36, 19, 18, 31, 34, 18, 26, 27, 20, 30, 32, 33, 30, 32, 28, 27, 28, 34, 26, 29, 30, 26, 28, 25, 31, 24, 33, 31, 26, 31, 31, 34, 35, 30, 27, 25, 35, 23, 26, 20, 25, 25, 16, 29, 30,
+ 30, 18, 31, 31, 17, 37, 36, 19, 18, 31,
+ 34, 18, 26, 27, 20, 30, 32, 33, 30, 32,
+ 28, 27, 28, 34, 26, 29, 30, 26, 28, 25,
+ 31, 24, 33, 31, 26, 31, 31, 34, 35, 30,
+ 27, 25, 35, 23, 26, 20, 25, 25, 16, 29,
+ 30,
// Isaiah
- 31, 22, 26, 6, 30, 13, 25, 24, 21, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6, 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8, 31, 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21, 14, 21, 22, 11, 12, 19, 11, 25, 24,
+ 31, 22, 26, 6, 30, 13, 25, 24, 21, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 25, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 19, 11, 25, 24,
// Jeremiah
- 19, 37, 25, 31, 31, 30, 34, 23, 25, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15, 18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 21, 28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
+ 19, 37, 25, 31, 31, 30, 34, 23, 25, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 40, 10, 38, 24, 22, 17, 32, 24,
+ 40, 44, 26, 22, 19, 32, 21, 28, 18, 16,
+ 18, 22, 13, 30, 5, 28, 7, 47, 39, 46,
+ 64, 34,
// Lamentations
22, 22, 66, 22, 22,
// Baruch
22, 35, 38, 37, 9, 72,
// Ezekiel
- 28, 10, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14, 44, 37, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28, 23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
+ 28, 10, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 44,
+ 37, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
// Daniel
- 21, 49, 100, 34, 30, 29, 28, 27, 27, 21, 45, 13, 64, 43,
+ 21, 49, 100, 34, 30, 29, 28, 27, 27, 21,
+ 45, 13, 64, 43,
// Hosea
- 9, 25, 5, 19, 15, 11, 16, 14, 17, 15, 11, 15, 15, 10,
+ 9, 25, 5, 19, 15, 11, 16, 14, 17, 15,
+ 11, 15, 15, 10,
// Joel
20, 27, 5, 21,
// Amos
@@ -173,25 +259,38 @@ int vm_catholic[] = {
// Haggai
15, 23,
// Zechariah
- 17, 17, 10, 16, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
+ 17, 17, 10, 16, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
// Malachi
14, 17, 24,
// Matthew
- 25, 23, 17, 25, 48, 34, 29, 34, 38, 42, 30, 50, 58, 36, 39, 28, 27, 35, 30, 34, 46, 46, 39, 51, 46, 75, 66, 20,
+ 25, 23, 17, 25, 48, 34, 29, 34, 38, 42,
+ 30, 50, 58, 36, 39, 28, 27, 35, 30, 34,
+ 46, 46, 39, 51, 46, 75, 66, 20,
// Mark
- 45, 28, 35, 41, 43, 56, 37, 38, 50, 52, 33, 44, 37, 72, 47, 20,
+ 45, 28, 35, 41, 43, 56, 37, 38, 50, 52,
+ 33, 44, 37, 72, 47, 20,
// Luke
- 80, 52, 38, 44, 39, 49, 50, 56, 62, 42, 54, 59, 35, 35, 32, 31, 37, 43, 48, 47, 38, 71, 56, 53,
+ 80, 52, 38, 44, 39, 49, 50, 56, 62, 42,
+ 54, 59, 35, 35, 32, 31, 37, 43, 48, 47,
+ 38, 71, 56, 53,
// John
- 51, 25, 36, 54, 47, 71, 53, 59, 41, 42, 57, 50, 38, 31, 27, 33, 26, 40, 42, 31, 25,
+ 51, 25, 36, 54, 47, 71, 53, 59, 41, 42,
+ 57, 50, 38, 31, 27, 33, 26, 40, 42, 31,
+ 25,
// Acts
- 26, 47, 26, 37, 42, 15, 60, 40, 43, 49, 30, 25, 52, 28, 41, 40, 34, 28, 41, 38, 40, 30, 35, 27, 27, 32, 44, 31,
+ 26, 47, 26, 37, 42, 15, 60, 40, 43, 49,
+ 30, 25, 52, 28, 41, 40, 34, 28, 41, 38,
+ 40, 30, 35, 27, 27, 32, 44, 31,
// Romans
- 32, 29, 31, 25, 21, 23, 25, 39, 33, 21, 36, 21, 14, 23, 33, 27,
+ 32, 29, 31, 25, 21, 23, 25, 39, 33, 21,
+ 36, 21, 14, 23, 33, 27,
// I Corinthians
- 31, 16, 23, 21, 13, 20, 40, 13, 27, 33, 34, 31, 13, 40, 58, 24,
+ 31, 16, 23, 21, 13, 20, 40, 13, 27, 33,
+ 34, 31, 13, 40, 58, 24,
// II Corinthians
- 24, 17, 18, 18, 21, 18, 16, 24, 15, 18, 33, 21, 13,
+ 24, 17, 18, 18, 21, 18, 16, 24, 15, 18,
+ 33, 21, 13,
// Galatians
24, 21, 29, 31, 26, 18,
// Ephesians
@@ -213,7 +312,8 @@ int vm_catholic[] = {
// Philemon
25,
// Hebrews
- 14, 18, 19, 16, 14, 20, 28, 13, 28, 39, 40, 29, 25,
+ 14, 18, 19, 16, 14, 20, 28, 13, 28, 39,
+ 40, 29, 25,
// James
27, 26, 18, 17, 20,
// I Peter
@@ -229,7 +329,9 @@ int vm_catholic[] = {
// Jude
25,
// Revelation of John
- 20, 29, 22, 11, 14, 17, 17, 13, 21, 11, 19, 18, 18, 20, 8, 21, 18, 24, 21, 15, 27, 21
+ 20, 29, 22, 11, 14, 17, 17, 13, 21, 11,
+ 19, 18, 18, 20, 8, 21, 18, 24, 21, 15,
+ 27, 21
};
diff --git a/include/canon_catholic2.h b/include/canon_catholic2.h
index 9a2ca45..e0a5a20 100644
--- a/include/canon_catholic2.h
+++ b/include/canon_catholic2.h
@@ -1,7 +1,10 @@
/******************************************************************************
- * canon_catholic2.h - Versification data for the Catholic2 system
*
- * Copyright 2010 CrossWire Bible Society (http://www.crosswire.org)
+ * canon_catholic2.h - Versification data for the Catholic2 system
+ *
+ * $Id: canon_catholic2.h 2915 2013-07-23 16:55:54Z chrislit $
+ *
+ * Copyright 2010-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -87,75 +90,159 @@ struct sbook otbooks_catholic2[] = {
int vm_catholic2[] = {
// Genesis
- 31, 25, 24, 26, 32, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38, 18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 54, 33, 20, 31, 29, 43, 36, 30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
+ 31, 25, 24, 26, 32, 22, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 38, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 54, 33, 20, 31, 29, 43, 36, 30, 23, 23,
+ 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
// Exodus
- 22, 25, 22, 31, 23, 30, 29, 28, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25, 26, 37, 30, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
+ 22, 25, 22, 31, 23, 30, 29, 28, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 37, 30, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
// Leviticus
- 17, 16, 17, 35, 26, 23, 38, 36, 24, 20, 47, 8, 59, 57, 33, 34, 16, 30, 37, 27, 24, 33, 44, 23, 55, 46, 34,
+ 17, 16, 17, 35, 26, 23, 38, 36, 24, 20,
+ 47, 8, 59, 57, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
// Numbers
- 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 35, 16, 33, 45, 41, 35, 28, 32, 22, 29, 35, 41, 30, 25, 19, 66, 23, 31, 39, 17, 54, 42, 56, 29, 34, 13,
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 16, 33, 45, 41, 35, 28, 32, 22, 29,
+ 35, 41, 30, 25, 19, 66, 23, 31, 39, 17,
+ 54, 42, 56, 29, 34, 13,
// Deuteronomy
- 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 31, 19, 29, 23, 22, 20, 22, 21, 20, 23, 29, 26, 22, 19, 19, 26, 69, 28, 20, 30, 52, 29, 12,
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 31, 19, 29, 23, 22, 20, 22, 21, 20,
+ 23, 29, 26, 22, 19, 19, 26, 69, 28, 20,
+ 30, 52, 29, 12,
// Joshua
- 18, 24, 17, 24, 15, 27, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51, 9, 45, 34, 16, 33,
+ 18, 24, 17, 24, 15, 27, 26, 35, 27, 43,
+ 23, 24, 33, 15, 63, 10, 18, 28, 51, 9,
+ 45, 34, 16, 33,
// Judges
- 36, 23, 31, 24, 32, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30, 48, 25,
+ 36, 23, 31, 24, 32, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 31, 30, 48,
+ 25,
// Ruth
22, 23, 18, 22,
// I Samuel
- 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24, 42, 16, 23, 28, 23, 44, 25, 12, 25, 11, 31, 13,
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 42,
+ 16, 23, 28, 23, 44, 25, 12, 25, 11, 31,
+ 13,
// II Samuel
- 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 32, 44, 26, 22, 51, 39, 25,
+ 27, 32, 39, 12, 25, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 32, 44, 26,
+ 22, 51, 39, 25,
// I Kings
- 53, 46, 28, 20, 32, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21, 43, 29, 54,
+ 53, 46, 28, 20, 32, 38, 51, 66, 28, 29,
+ 43, 33, 34, 31, 34, 34, 24, 46, 21, 43,
+ 29, 54,
// II Kings
- 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 20, 22, 25, 29, 38, 20, 41, 37, 37, 21, 26, 20, 37, 20, 30,
+ 18, 25, 27, 44, 27, 33, 20, 29, 37, 36,
+ 20, 22, 25, 29, 38, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
// I Chronicles
- 54, 55, 24, 43, 41, 66, 40, 40, 44, 14, 47, 41, 14, 17, 29, 43, 27, 17, 19, 8, 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ 54, 55, 24, 43, 41, 66, 40, 40, 44, 14,
+ 47, 41, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
// II Chronicles
- 18, 17, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 23, 14, 19, 14, 19, 34, 11, 37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23,
+ 18, 17, 17, 22, 14, 42, 22, 18, 31, 19,
+ 23, 16, 23, 14, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 27, 23,
// Ezra
11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
// Nehemiah
- 11, 20, 38, 17, 19, 19, 73, 18, 37, 40, 36, 47, 31,
+ 11, 20, 38, 17, 19, 19, 73, 18, 37, 40,
+ 36, 47, 31,
// Tobit
- 22, 14, 17, 21, 23, 19, 17, 21, 6, 14, 19, 22, 18, 15,
+ 22, 14, 17, 21, 23, 19, 17, 21, 6, 14,
+ 19, 22, 18, 15,
// Judith
- 16, 28, 10, 15, 24, 21, 32, 36, 14, 23, 23, 20, 20, 19, 14, 25,
+ 16, 28, 10, 15, 24, 21, 32, 36, 14, 23,
+ 23, 20, 20, 19, 14, 25,
// Esther
- 22, 23, 15, 17, 14, 14, 10, 17, 32, 13, 12, 6, 18, 19, 19, 24,
+ 22, 23, 15, 17, 14, 14, 10, 17, 32, 13,
+ 12, 6, 18, 19, 19, 24,
// I Maccabees
- 64, 70, 60, 61, 68, 63, 50, 32, 73, 89, 74, 54, 53, 49, 41, 24,
+ 64, 70, 60, 61, 68, 63, 50, 32, 73, 89,
+ 74, 54, 53, 49, 41, 24,
// II Maccabees
- 36, 32, 40, 50, 27, 31, 42, 36, 29, 38, 38, 46, 26, 46, 39,
+ 36, 32, 40, 50, 27, 31, 42, 36, 29, 38,
+ 38, 46, 26, 46, 39,
// Job
- 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 22, 16, 21, 29, 29, 34, 30, 17, 25, 14, 14, 24, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41, 30, 32, 26, 17,
+ 22, 13, 26, 21, 27, 30, 21, 22, 35, 22,
+ 20, 25, 28, 22, 35, 22, 16, 21, 29, 29,
+ 34, 30, 17, 25, 14, 14, 24, 28, 25, 31,
+ 40, 22, 33, 37, 16, 33, 24, 41, 30, 32,
+ 26, 17,
// Psalms
- 6, 12, 9, 9, 13, 11, 18, 10, 21, 18, 7, 9, 6, 7, 5, 11, 15, 51, 15, 10, 14, 32, 6, 10, 22, 12, 14, 9, 11, 13, 25, 11, 22, 23, 28, 13, 40, 23, 14, 18, 14, 12, 5, 27, 18, 12, 10, 15, 21, 24, 21, 11, 7, 9, 24, 14, 12, 12, 18, 14, 9, 13, 12, 11, 14, 20, 8, 36, 37, 6, 24, 20, 28, 23, 11, 13, 21, 72, 13, 20, 17, 8, 19, 13, 14, 17, 7, 19, 53, 17, 16, 16, 5, 23, 11, 13, 12, 9, 9, 5, 9, 29, 22, 35, 45, 48, 43, 14, 31, 7, 10, 10, 9, 8, 18, 19, 2, 29, 176, 7, 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, 3, 18, 3, 3, 21, 26, 9, 8, 24, 14, 10, 8, 12, 15, 21, 10, 20, 14, 9, 6,
+ 6, 12, 9, 9, 13, 11, 18, 10, 21, 18,
+ 7, 9, 6, 7, 5, 11, 15, 51, 15, 10,
+ 14, 32, 6, 10, 22, 12, 14, 9, 11, 13,
+ 25, 11, 22, 23, 28, 13, 40, 23, 14, 18,
+ 14, 12, 5, 27, 18, 12, 10, 15, 21, 24,
+ 21, 11, 7, 9, 24, 14, 12, 12, 18, 14,
+ 9, 13, 12, 11, 14, 20, 8, 36, 37, 6,
+ 24, 20, 28, 23, 11, 13, 21, 72, 13, 20,
+ 17, 8, 19, 13, 14, 17, 7, 19, 53, 17,
+ 16, 16, 5, 23, 11, 13, 12, 9, 9, 5,
+ 9, 29, 22, 35, 45, 48, 43, 14, 31, 7,
+ 10, 10, 9, 8, 18, 19, 2, 29, 176, 7,
+ 8, 9, 4, 8, 5, 6, 5, 6, 8, 8,
+ 3, 18, 3, 3, 21, 26, 9, 8, 24, 14,
+ 10, 8, 12, 15, 21, 10, 20, 14, 9, 6,
// Proverbs
- 33, 22, 35, 27, 23, 35, 27, 36, 18, 32, 31, 28, 25, 35, 33, 33, 28, 24, 29, 30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
+ 33, 22, 35, 27, 23, 35, 27, 36, 18, 32,
+ 31, 28, 25, 35, 33, 33, 28, 24, 29, 30,
+ 31, 29, 35, 34, 28, 28, 27, 28, 27, 33,
+ 31,
// Ecclesiastes
- 18, 26, 22, 17, 19, 12, 29, 17, 18, 20, 10, 14,
+ 18, 26, 22, 17, 19, 12, 29, 17, 18, 20,
+ 10, 14,
// Song of Solomon
17, 17, 11, 17, 16, 12, 14, 14,
// Wisdom
- 16, 24, 19, 20, 23, 25, 30, 21, 19, 21, 26, 27, 19, 31, 19, 29, 21, 25, 22,
+ 16, 24, 19, 20, 23, 25, 30, 21, 19, 21,
+ 26, 27, 19, 31, 19, 29, 21, 25, 22,
// Sirach
- 30, 18, 31, 31, 17, 37, 36, 19, 18, 31, 34, 18, 26, 27, 20, 30, 32, 33, 30, 32, 28, 27, 28, 34, 26, 29, 30, 26, 28, 25, 31, 24, 33, 31, 26, 31, 31, 34, 35, 30, 27, 25, 35, 23, 26, 20, 25, 25, 16, 29, 30,
+ 30, 18, 31, 31, 17, 37, 36, 19, 18, 31,
+ 34, 18, 26, 27, 20, 30, 32, 33, 30, 32,
+ 28, 27, 28, 34, 26, 29, 30, 26, 28, 25,
+ 31, 24, 33, 31, 26, 31, 31, 34, 35, 30,
+ 27, 25, 35, 23, 26, 20, 25, 25, 16, 29,
+ 30,
// Isaiah
- 31, 22, 26, 6, 30, 13, 25, 24, 21, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6, 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8, 31, 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21, 14, 21, 22, 11, 12, 19, 11, 25, 24,
+ 31, 22, 26, 6, 30, 13, 25, 24, 21, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 25, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 19, 11, 25, 24,
// Jeremiah
- 19, 37, 25, 31, 31, 30, 34, 23, 25, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15, 18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 21, 28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
+ 19, 37, 25, 31, 31, 30, 34, 23, 25, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 40, 10, 38, 24, 22, 17, 32, 24,
+ 40, 44, 26, 22, 19, 32, 21, 28, 18, 16,
+ 18, 22, 13, 30, 5, 28, 7, 47, 39, 46,
+ 64, 34,
// Lamentations
22, 22, 66, 22, 22,
// Baruch
22, 35, 38, 37, 9, 72,
// Ezekiel
- 28, 10, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14, 44, 37, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28, 23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
+ 28, 10, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 44,
+ 37, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
// Daniel
- 21, 49, 100, 34, 30, 29, 28, 27, 27, 21, 45, 13, 64, 43,
+ 21, 49, 100, 34, 30, 29, 28, 27, 27, 21,
+ 45, 13, 64, 43,
// Hosea
- 9, 25, 5, 19, 15, 11, 16, 14, 17, 15, 11, 15, 15, 10,
+ 9, 25, 5, 19, 15, 11, 16, 14, 17, 15,
+ 11, 15, 15, 10,
// Joel
20, 27, 5, 21,
// Amos
@@ -175,25 +262,38 @@ int vm_catholic2[] = {
// Haggai
15, 23,
// Zechariah
- 17, 17, 10, 16, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
+ 17, 17, 10, 16, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
// Malachi
14, 17, 24,
// Matthew
- 25, 23, 17, 25, 48, 34, 29, 34, 38, 42, 30, 50, 58, 36, 39, 28, 27, 35, 30, 34, 46, 46, 39, 51, 46, 75, 66, 20,
+ 25, 23, 17, 25, 48, 34, 29, 34, 38, 42,
+ 30, 50, 58, 36, 39, 28, 27, 35, 30, 34,
+ 46, 46, 39, 51, 46, 75, 66, 20,
// Mark
- 45, 28, 35, 41, 43, 56, 37, 38, 50, 52, 33, 44, 37, 72, 47, 20,
+ 45, 28, 35, 41, 43, 56, 37, 38, 50, 52,
+ 33, 44, 37, 72, 47, 20,
// Luke
- 80, 52, 38, 44, 39, 49, 50, 56, 62, 42, 54, 59, 35, 35, 32, 31, 37, 43, 48, 47, 38, 71, 56, 53,
+ 80, 52, 38, 44, 39, 49, 50, 56, 62, 42,
+ 54, 59, 35, 35, 32, 31, 37, 43, 48, 47,
+ 38, 71, 56, 53,
// John
- 51, 25, 36, 54, 47, 71, 53, 59, 41, 42, 57, 50, 38, 31, 27, 33, 26, 40, 42, 31, 25,
+ 51, 25, 36, 54, 47, 71, 53, 59, 41, 42,
+ 57, 50, 38, 31, 27, 33, 26, 40, 42, 31,
+ 25,
// Acts
- 26, 47, 26, 37, 42, 15, 60, 40, 43, 49, 30, 25, 52, 28, 41, 40, 34, 28, 41, 38, 40, 30, 35, 27, 27, 32, 44, 31,
+ 26, 47, 26, 37, 42, 15, 60, 40, 43, 49,
+ 30, 25, 52, 28, 41, 40, 34, 28, 41, 38,
+ 40, 30, 35, 27, 27, 32, 44, 31,
// Romans
- 32, 29, 31, 25, 21, 23, 25, 39, 33, 21, 36, 21, 14, 23, 33, 27,
+ 32, 29, 31, 25, 21, 23, 25, 39, 33, 21,
+ 36, 21, 14, 23, 33, 27,
// I Corinthians
- 31, 16, 23, 21, 13, 20, 40, 13, 27, 33, 34, 31, 13, 40, 58, 24,
+ 31, 16, 23, 21, 13, 20, 40, 13, 27, 33,
+ 34, 31, 13, 40, 58, 24,
// II Corinthians
- 24, 17, 18, 18, 21, 18, 16, 24, 15, 18, 33, 21, 13,
+ 24, 17, 18, 18, 21, 18, 16, 24, 15, 18,
+ 33, 21, 13,
// Galatians
24, 21, 29, 31, 26, 18,
// Ephesians
@@ -215,7 +315,8 @@ int vm_catholic2[] = {
// Philemon
25,
// Hebrews
- 14, 18, 19, 16, 14, 20, 28, 13, 28, 39, 40, 29, 25,
+ 14, 18, 19, 16, 14, 20, 28, 13, 28, 39,
+ 40, 29, 25,
// James
27, 26, 18, 17, 20,
// I Peter
@@ -231,7 +332,9 @@ int vm_catholic2[] = {
// Jude
25,
// Revelation of John
- 20, 29, 22, 11, 14, 17, 17, 13, 21, 11, 19, 18, 18, 20, 8, 21, 18, 24, 21, 15, 27, 21
+ 20, 29, 22, 11, 14, 17, 17, 13, 21, 11,
+ 19, 18, 18, 20, 8, 21, 18, 24, 21, 15,
+ 27, 21
};
diff --git a/include/canon_german.h b/include/canon_german.h
index 3c132d5..ef6c835 100644
--- a/include/canon_german.h
+++ b/include/canon_german.h
@@ -1,7 +1,10 @@
/******************************************************************************
- * canon_german.h - Versification data for the German system
*
- * Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
+ * canon_german.h - Versification data for the German system
+ *
+ * $Id: canon_german.h 2915 2013-07-23 16:55:54Z chrislit $
+ *
+ * Copyright 2009-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -78,61 +81,134 @@ struct sbook otbooks_german[] = {
int vm_german[] = {
// Genesis
- 31, 25, 24, 26, 32, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38, 18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 54, 33, 20, 31, 29, 43, 36, 30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
+ 31, 25, 24, 26, 32, 22, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 38, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 54, 33, 20, 31, 29, 43, 36, 30, 23, 23,
+ 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
// Exodus
- 22, 25, 22, 31, 23, 30, 29, 28, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25, 26, 37, 30, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
+ 22, 25, 22, 31, 23, 30, 29, 28, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 37, 30, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
// Leviticus
- 17, 16, 17, 35, 26, 23, 38, 36, 24, 20, 47, 8, 59, 57, 33, 34, 16, 30, 37, 27, 24, 33, 44, 23, 55, 46, 34,
+ 17, 16, 17, 35, 26, 23, 38, 36, 24, 20,
+ 47, 8, 59, 57, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
// Numbers
- 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 35, 16, 33, 45, 41, 35, 28, 32, 22, 29, 35, 41, 30, 25, 19, 65, 23, 31, 39, 17, 54, 42, 56, 29, 34, 13,
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 16, 33, 45, 41, 35, 28, 32, 22, 29,
+ 35, 41, 30, 25, 19, 65, 23, 31, 39, 17,
+ 54, 42, 56, 29, 34, 13,
// Deuteronomy
- 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 31, 19, 29, 23, 22, 20, 22, 21, 20, 23, 29, 26, 22, 19, 19, 26, 69, 28, 20, 30, 52, 29, 12,
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 31, 19, 29, 23, 22, 20, 22, 21, 20,
+ 23, 29, 26, 22, 19, 19, 26, 69, 28, 20,
+ 30, 52, 29, 12,
// Joshua
- 18, 24, 17, 24, 15, 27, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51, 9, 45, 34, 16, 33,
+ 18, 24, 17, 24, 15, 27, 26, 35, 27, 43,
+ 23, 24, 33, 15, 63, 10, 18, 28, 51, 9,
+ 45, 34, 16, 33,
// Judges
- 36, 23, 31, 24, 31, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30, 48, 25,
+ 36, 23, 31, 24, 31, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 31, 30, 48,
+ 25,
// Ruth
22, 23, 18, 22,
// I Samuel
- 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24, 42, 16, 23, 28, 23, 44, 25, 12, 25, 11, 31, 13,
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 42,
+ 16, 23, 28, 23, 44, 25, 12, 25, 11, 31,
+ 13,
// II Samuel
- 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 32, 44, 26, 22, 51, 39, 25,
+ 27, 32, 39, 12, 25, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 32, 44, 26,
+ 22, 51, 39, 25,
// I Kings
- 53, 46, 28, 20, 32, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21, 43, 29, 54,
+ 53, 46, 28, 20, 32, 38, 51, 66, 28, 29,
+ 43, 33, 34, 31, 34, 34, 24, 46, 21, 43,
+ 29, 54,
// II Kings
- 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 20, 22, 25, 29, 39, 20, 41, 37, 37, 21, 26, 20, 37, 20, 30,
+ 18, 25, 27, 44, 27, 33, 20, 29, 37, 36,
+ 20, 22, 25, 29, 39, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
// I Chronicles
- 54, 55, 24, 43, 41, 66, 40, 40, 44, 14, 47, 41, 14, 17, 29, 43, 27, 17, 19, 8, 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ 54, 55, 24, 43, 41, 66, 40, 40, 44, 14,
+ 47, 41, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
// II Chronicles
- 18, 17, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 23, 14, 19, 14, 19, 34, 11, 37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23,
+ 18, 17, 17, 22, 14, 42, 22, 18, 31, 19,
+ 23, 16, 23, 14, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 27, 23,
// Ezra
11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
// Nehemiah
- 11, 20, 38, 17, 19, 19, 73, 18, 37, 40, 36, 47, 31,
+ 11, 20, 38, 17, 19, 19, 73, 18, 37, 40,
+ 36, 47, 31,
// Esther
22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
// Job
- 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 22, 16, 21, 29, 29, 34, 30, 17, 25, 6, 14, 23, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41, 30, 32, 26, 17,
+ 22, 13, 26, 21, 27, 30, 21, 22, 35, 22,
+ 20, 25, 28, 22, 35, 22, 16, 21, 29, 29,
+ 34, 30, 17, 25, 6, 14, 23, 28, 25, 31,
+ 40, 22, 33, 37, 16, 33, 24, 41, 30, 32,
+ 26, 17,
// Psalms
- 6, 12, 9, 9, 13, 11, 18, 10, 21, 18, 7, 9, 6, 7, 5, 11, 15, 51, 15, 10, 14, 32, 6, 10, 22, 12, 14, 9, 11, 13, 25, 11, 22, 23, 28, 13, 40, 23, 14, 18, 14, 12, 5, 27, 18, 12, 10, 15, 21, 23, 21, 11, 7, 9, 24, 14, 12, 12, 18, 14, 9, 13, 12, 11, 14, 20, 8, 36, 37, 6, 24, 20, 28, 23, 11, 13, 21, 72, 13, 20, 17, 8, 19, 13, 14, 17, 7, 19, 53, 17, 16, 16, 5, 23, 11, 13, 12, 9, 9, 5, 8, 29, 22, 35, 45, 48, 43, 14, 31, 7, 10, 10, 9, 8, 18, 19, 2, 29, 176, 7, 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, 3, 18, 3, 3, 21, 26, 9, 8, 24, 14, 10, 8, 12, 15, 21, 10, 20, 14, 9, 6,
+ 6, 12, 9, 9, 13, 11, 18, 10, 21, 18,
+ 7, 9, 6, 7, 5, 11, 15, 51, 15, 10,
+ 14, 32, 6, 10, 22, 12, 14, 9, 11, 13,
+ 25, 11, 22, 23, 28, 13, 40, 23, 14, 18,
+ 14, 12, 5, 27, 18, 12, 10, 15, 21, 23,
+ 21, 11, 7, 9, 24, 14, 12, 12, 18, 14,
+ 9, 13, 12, 11, 14, 20, 8, 36, 37, 6,
+ 24, 20, 28, 23, 11, 13, 21, 72, 13, 20,
+ 17, 8, 19, 13, 14, 17, 7, 19, 53, 17,
+ 16, 16, 5, 23, 11, 13, 12, 9, 9, 5,
+ 8, 29, 22, 35, 45, 48, 43, 14, 31, 7,
+ 10, 10, 9, 8, 18, 19, 2, 29, 176, 7,
+ 8, 9, 4, 8, 5, 6, 5, 6, 8, 8,
+ 3, 18, 3, 3, 21, 26, 9, 8, 24, 14,
+ 10, 8, 12, 15, 21, 10, 20, 14, 9, 6,
// Proverbs
- 33, 22, 35, 27, 23, 35, 27, 36, 18, 32, 31, 28, 25, 35, 33, 33, 28, 24, 29, 30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
+ 33, 22, 35, 27, 23, 35, 27, 36, 18, 32,
+ 31, 28, 25, 35, 33, 33, 28, 24, 29, 30,
+ 31, 29, 35, 34, 28, 28, 27, 28, 27, 33,
+ 31,
// Ecclesiastes
- 18, 26, 22, 17, 19, 12, 29, 17, 18, 20, 10, 14,
+ 18, 26, 22, 17, 19, 12, 29, 17, 18, 20,
+ 10, 14,
// Song of Solomon
17, 17, 11, 16, 16, 12, 14, 14,
// Isaiah
- 31, 22, 26, 6, 30, 13, 25, 23, 20, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6, 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8, 31, 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21, 14, 21, 22, 11, 12, 19, 11, 25, 24,
+ 31, 22, 26, 6, 30, 13, 25, 23, 20, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 25, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 19, 11, 25, 24,
// Jeremiah
- 19, 37, 25, 31, 31, 30, 34, 23, 25, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15, 18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 21, 28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
+ 19, 37, 25, 31, 31, 30, 34, 23, 25, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 40, 10, 38, 24, 22, 17, 32, 24,
+ 40, 44, 26, 22, 19, 32, 21, 28, 18, 16,
+ 18, 22, 13, 30, 5, 28, 7, 47, 39, 46,
+ 64, 34,
// Lamentations
22, 22, 66, 22, 22,
// Ezekiel
- 28, 10, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14, 44, 37, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28, 23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
+ 28, 10, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 44,
+ 37, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
// Daniel
- 21, 49, 33, 34, 30, 29, 28, 27, 27, 21, 45, 13,
+ 21, 49, 33, 34, 30, 29, 28, 27, 27, 21,
+ 45, 13,
// Hosea
- 9, 25, 5, 19, 15, 11, 16, 14, 17, 15, 11, 15, 15, 10,
+ 9, 25, 5, 19, 15, 11, 16, 14, 17, 15,
+ 11, 15, 15, 10,
// Joel
20, 27, 5, 21,
// Amos
@@ -152,25 +228,38 @@ int vm_german[] = {
// Haggai
15, 23,
// Zechariah
- 17, 17, 10, 14, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
+ 17, 17, 10, 14, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
// Malachi
14, 17, 24,
// Matthew
- 25, 23, 17, 25, 48, 34, 29, 34, 38, 42, 30, 50, 58, 36, 39, 28, 27, 35, 30, 34, 46, 46, 39, 51, 46, 75, 66, 20,
+ 25, 23, 17, 25, 48, 34, 29, 34, 38, 42,
+ 30, 50, 58, 36, 39, 28, 27, 35, 30, 34,
+ 46, 46, 39, 51, 46, 75, 66, 20,
// Mark
- 45, 28, 35, 41, 43, 56, 37, 38, 50, 52, 33, 44, 37, 72, 47, 20,
+ 45, 28, 35, 41, 43, 56, 37, 38, 50, 52,
+ 33, 44, 37, 72, 47, 20,
// Luke
- 80, 52, 38, 44, 39, 49, 50, 56, 62, 42, 54, 59, 35, 35, 32, 31, 37, 43, 48, 47, 38, 71, 56, 53,
+ 80, 52, 38, 44, 39, 49, 50, 56, 62, 42,
+ 54, 59, 35, 35, 32, 31, 37, 43, 48, 47,
+ 38, 71, 56, 53,
// John
- 51, 25, 36, 54, 47, 71, 53, 59, 41, 42, 57, 50, 38, 31, 27, 33, 26, 40, 42, 31, 25,
+ 51, 25, 36, 54, 47, 71, 53, 59, 41, 42,
+ 57, 50, 38, 31, 27, 33, 26, 40, 42, 31,
+ 25,
// Acts
- 26, 47, 26, 37, 42, 15, 60, 40, 43, 48, 30, 25, 52, 28, 41, 40, 34, 28, 40, 38, 40, 30, 35, 27, 27, 32, 44, 31,
+ 26, 47, 26, 37, 42, 15, 60, 40, 43, 48,
+ 30, 25, 52, 28, 41, 40, 34, 28, 40, 38,
+ 40, 30, 35, 27, 27, 32, 44, 31,
// Romans
- 32, 29, 31, 25, 21, 23, 25, 39, 33, 21, 36, 21, 14, 23, 33, 27,
+ 32, 29, 31, 25, 21, 23, 25, 39, 33, 21,
+ 36, 21, 14, 23, 33, 27,
// I Corinthians
- 31, 16, 23, 21, 13, 20, 40, 13, 27, 33, 34, 31, 13, 40, 58, 24,
+ 31, 16, 23, 21, 13, 20, 40, 13, 27, 33,
+ 34, 31, 13, 40, 58, 24,
// II Corinthians
- 24, 17, 18, 18, 21, 18, 16, 24, 15, 18, 33, 21, 13,
+ 24, 17, 18, 18, 21, 18, 16, 24, 15, 18,
+ 33, 21, 13,
// Galatians
24, 21, 29, 31, 26, 18,
// Ephesians
@@ -192,7 +281,8 @@ int vm_german[] = {
// Philemon
25,
// Hebrews
- 14, 18, 19, 16, 14, 20, 28, 13, 28, 39, 40, 29, 25,
+ 14, 18, 19, 16, 14, 20, 28, 13, 28, 39,
+ 40, 29, 25,
// James
27, 26, 18, 17, 20,
// I Peter
@@ -208,7 +298,9 @@ int vm_german[] = {
// Jude
25,
// Revelation of John
- 20, 29, 22, 11, 14, 17, 17, 13, 21, 11, 19, 18, 18, 20, 8, 21, 18, 24, 21, 15, 27, 21
+ 20, 29, 22, 11, 14, 17, 17, 13, 21, 11,
+ 19, 18, 18, 20, 8, 21, 18, 24, 21, 15,
+ 27, 21
};
diff --git a/include/canon_kjva.h b/include/canon_kjva.h
index 866ec83..e97dd01 100644
--- a/include/canon_kjva.h
+++ b/include/canon_kjva.h
@@ -1,7 +1,10 @@
/******************************************************************************
- * canon_kjva.h - Versification data for the KJVA system
*
- * Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
+ * canon_kjva.h - Versification data for the KJVA system
+ *
+ * $Id: canon_kjva.h 2915 2013-07-23 16:55:54Z chrislit $
+ *
+ * Copyright 2009-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -94,61 +97,134 @@ struct sbook otbooks_kjva[] = {
int vm_kjva[] = {
// Genesis
- 31, 25, 24, 26, 32, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38, 18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 55, 32, 20, 31, 29, 43, 36, 30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
+ 31, 25, 24, 26, 32, 22, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 38, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 55, 32, 20, 31, 29, 43, 36, 30, 23, 23,
+ 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
// Exodus
- 22, 25, 22, 31, 23, 30, 25, 32, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25, 26, 36, 31, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
+ 22, 25, 22, 31, 23, 30, 25, 32, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 36, 31, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
// Leviticus
- 17, 16, 17, 35, 19, 30, 38, 36, 24, 20, 47, 8, 59, 57, 33, 34, 16, 30, 37, 27, 24, 33, 44, 23, 55, 46, 34,
+ 17, 16, 17, 35, 19, 30, 38, 36, 24, 20,
+ 47, 8, 59, 57, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
// Numbers
- 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 35, 16, 33, 45, 41, 50, 13, 32, 22, 29, 35, 41, 30, 25, 18, 65, 23, 31, 40, 16, 54, 42, 56, 29, 34, 13,
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 16, 33, 45, 41, 50, 13, 32, 22, 29,
+ 35, 41, 30, 25, 18, 65, 23, 31, 40, 16,
+ 54, 42, 56, 29, 34, 13,
// Deuteronomy
- 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 32, 18, 29, 23, 22, 20, 22, 21, 20, 23, 30, 25, 22, 19, 19, 26, 68, 29, 20, 30, 52, 29, 12,
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 32, 18, 29, 23, 22, 20, 22, 21, 20,
+ 23, 30, 25, 22, 19, 19, 26, 68, 29, 20,
+ 30, 52, 29, 12,
// Joshua
- 18, 24, 17, 24, 15, 27, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51, 9, 45, 34, 16, 33,
+ 18, 24, 17, 24, 15, 27, 26, 35, 27, 43,
+ 23, 24, 33, 15, 63, 10, 18, 28, 51, 9,
+ 45, 34, 16, 33,
// Judges
- 36, 23, 31, 24, 31, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30, 48, 25,
+ 36, 23, 31, 24, 31, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 31, 30, 48,
+ 25,
// Ruth
22, 23, 18, 22,
// I Samuel
- 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24, 42, 15, 23, 29, 22, 44, 25, 12, 25, 11, 31, 13,
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 42,
+ 15, 23, 29, 22, 44, 25, 12, 25, 11, 31,
+ 13,
// II Samuel
- 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 33, 43, 26, 22, 51, 39, 25,
+ 27, 32, 39, 12, 25, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 33, 43, 26,
+ 22, 51, 39, 25,
// I Kings
- 53, 46, 28, 34, 18, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21, 43, 29, 53,
+ 53, 46, 28, 34, 18, 38, 51, 66, 28, 29,
+ 43, 33, 34, 31, 34, 34, 24, 46, 21, 43,
+ 29, 53,
// II Kings
- 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 21, 21, 25, 29, 38, 20, 41, 37, 37, 21, 26, 20, 37, 20, 30,
+ 18, 25, 27, 44, 27, 33, 20, 29, 37, 36,
+ 21, 21, 25, 29, 38, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
// I Chronicles
- 54, 55, 24, 43, 26, 81, 40, 40, 44, 14, 47, 40, 14, 17, 29, 43, 27, 17, 19, 8, 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ 54, 55, 24, 43, 26, 81, 40, 40, 44, 14,
+ 47, 40, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
// II Chronicles
- 17, 18, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 22, 15, 19, 14, 19, 34, 11, 37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23,
+ 17, 18, 17, 22, 14, 42, 22, 18, 31, 19,
+ 23, 16, 22, 15, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 27, 23,
// Ezra
11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
// Nehemiah
- 11, 20, 32, 23, 19, 19, 73, 18, 38, 39, 36, 47, 31,
+ 11, 20, 32, 23, 19, 19, 73, 18, 38, 39,
+ 36, 47, 31,
// Esther
22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
// Job
- 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 22, 16, 21, 29, 29, 34, 30, 17, 25, 6, 14, 23, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41, 30, 24, 34, 17,
+ 22, 13, 26, 21, 27, 30, 21, 22, 35, 22,
+ 20, 25, 28, 22, 35, 22, 16, 21, 29, 29,
+ 34, 30, 17, 25, 6, 14, 23, 28, 25, 31,
+ 40, 22, 33, 37, 16, 33, 24, 41, 30, 24,
+ 34, 17,
// Psalms
- 6, 12, 8, 8, 12, 10, 17, 9, 20, 18, 7, 8, 6, 7, 5, 11, 15, 50, 14, 9, 13, 31, 6, 10, 22, 12, 14, 9, 11, 12, 24, 11, 22, 22, 28, 12, 40, 22, 13, 17, 13, 11, 5, 26, 17, 11, 9, 14, 20, 23, 19, 9, 6, 7, 23, 13, 11, 11, 17, 12, 8, 12, 11, 10, 13, 20, 7, 35, 36, 5, 24, 20, 28, 23, 10, 12, 20, 72, 13, 19, 16, 8, 18, 12, 13, 17, 7, 18, 52, 17, 16, 15, 5, 23, 11, 13, 12, 9, 9, 5, 8, 28, 22, 35, 45, 48, 43, 13, 31, 7, 10, 10, 9, 8, 18, 19, 2, 29, 176, 7, 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, 3, 18, 3, 3, 21, 26, 9, 8, 24, 13, 10, 7, 12, 15, 21, 10, 20, 14, 9, 6,
+ 6, 12, 8, 8, 12, 10, 17, 9, 20, 18,
+ 7, 8, 6, 7, 5, 11, 15, 50, 14, 9,
+ 13, 31, 6, 10, 22, 12, 14, 9, 11, 12,
+ 24, 11, 22, 22, 28, 12, 40, 22, 13, 17,
+ 13, 11, 5, 26, 17, 11, 9, 14, 20, 23,
+ 19, 9, 6, 7, 23, 13, 11, 11, 17, 12,
+ 8, 12, 11, 10, 13, 20, 7, 35, 36, 5,
+ 24, 20, 28, 23, 10, 12, 20, 72, 13, 19,
+ 16, 8, 18, 12, 13, 17, 7, 18, 52, 17,
+ 16, 15, 5, 23, 11, 13, 12, 9, 9, 5,
+ 8, 28, 22, 35, 45, 48, 43, 13, 31, 7,
+ 10, 10, 9, 8, 18, 19, 2, 29, 176, 7,
+ 8, 9, 4, 8, 5, 6, 5, 6, 8, 8,
+ 3, 18, 3, 3, 21, 26, 9, 8, 24, 13,
+ 10, 7, 12, 15, 21, 10, 20, 14, 9, 6,
// Proverbs
- 33, 22, 35, 27, 23, 35, 27, 36, 18, 32, 31, 28, 25, 35, 33, 33, 28, 24, 29, 30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
+ 33, 22, 35, 27, 23, 35, 27, 36, 18, 32,
+ 31, 28, 25, 35, 33, 33, 28, 24, 29, 30,
+ 31, 29, 35, 34, 28, 28, 27, 28, 27, 33,
+ 31,
// Ecclesiastes
- 18, 26, 22, 16, 20, 12, 29, 17, 18, 20, 10, 14,
+ 18, 26, 22, 16, 20, 12, 29, 17, 18, 20,
+ 10, 14,
// Song of Solomon
17, 17, 11, 16, 16, 13, 13, 14,
// Isaiah
- 31, 22, 26, 6, 30, 13, 25, 22, 21, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6, 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8, 31, 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21, 14, 21, 22, 11, 12, 19, 12, 25, 24,
+ 31, 22, 26, 6, 30, 13, 25, 22, 21, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 25, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 19, 12, 25, 24,
// Jeremiah
- 19, 37, 25, 31, 31, 30, 34, 22, 26, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15, 18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 21, 28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
+ 19, 37, 25, 31, 31, 30, 34, 22, 26, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 40, 10, 38, 24, 22, 17, 32, 24,
+ 40, 44, 26, 22, 19, 32, 21, 28, 18, 16,
+ 18, 22, 13, 30, 5, 28, 7, 47, 39, 46,
+ 64, 34,
// Lamentations
22, 22, 66, 22, 22,
// Ezekiel
- 28, 10, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14, 49, 32, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28, 23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
+ 28, 10, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 49,
+ 32, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
// Daniel
- 21, 49, 30, 37, 31, 28, 28, 27, 27, 21, 45, 13,
+ 21, 49, 30, 37, 31, 28, 28, 27, 27, 21,
+ 45, 13,
// Hosea
- 11, 23, 5, 19, 15, 11, 16, 14, 17, 15, 12, 14, 16, 9,
+ 11, 23, 5, 19, 15, 11, 16, 14, 17, 15,
+ 12, 14, 16, 9,
// Joel
20, 32, 21,
// Amos
@@ -168,23 +244,34 @@ int vm_kjva[] = {
// Haggai
15, 23,
// Zechariah
- 21, 13, 10, 14, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
+ 21, 13, 10, 14, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
// Malachi
14, 17, 18, 6,
// I Esdras
58, 30, 24, 63, 73, 34, 15, 96, 55,
// II Esdras
- 40, 48, 36, 52, 56, 59, 70, 63, 47, 59, 46, 51, 58, 48, 63, 78,
+ 40, 48, 36, 52, 56, 59, 70, 63, 47, 59,
+ 46, 51, 58, 48, 63, 78,
// Tobit
- 22, 14, 17, 21, 22, 17, 18, 21, 6, 12, 19, 22, 18, 15,
+ 22, 14, 17, 21, 22, 17, 18, 21, 6, 12,
+ 19, 22, 18, 15,
// Judith
- 16, 28, 10, 15, 24, 21, 32, 36, 14, 23, 23, 20, 20, 19, 13, 25,
+ 16, 28, 10, 15, 24, 21, 32, 36, 14, 23,
+ 23, 20, 20, 19, 13, 25,
// Additions to Esther
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 13, 12, 6, 18, 19, 16, 24,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 13,
+ 12, 6, 18, 19, 16, 24,
// Wisdom
- 16, 24, 19, 20, 23, 25, 30, 21, 18, 21, 26, 27, 19, 31, 19, 29, 21, 25, 22,
+ 16, 24, 19, 20, 23, 25, 30, 21, 18, 21,
+ 26, 27, 19, 31, 19, 29, 21, 25, 22,
// Sirach
- 30, 18, 31, 31, 15, 37, 36, 19, 18, 31, 34, 18, 26, 27, 20, 30, 32, 33, 30, 32, 28, 27, 28, 34, 26, 29, 30, 26, 28, 25, 31, 24, 31, 26, 20, 26, 31, 34, 35, 30, 24, 25, 33, 22, 26, 20, 25, 25, 16, 29, 30,
+ 30, 18, 31, 31, 15, 37, 36, 19, 18, 31,
+ 34, 18, 26, 27, 20, 30, 32, 33, 30, 32,
+ 28, 27, 28, 34, 26, 29, 30, 26, 28, 25,
+ 31, 24, 31, 26, 20, 26, 31, 34, 35, 30,
+ 24, 25, 33, 22, 26, 20, 25, 25, 16, 29,
+ 30,
// Baruch
22, 35, 37, 37, 9, 73,
// Prayer of Azariah
@@ -196,25 +283,39 @@ int vm_kjva[] = {
// Prayer of Manasses
1,
// I Maccabees
- 64, 70, 60, 61, 68, 63, 50, 32, 73, 89, 74, 53, 53, 49, 41, 24,
+ 64, 70, 60, 61, 68, 63, 50, 32, 73, 89,
+ 74, 53, 53, 49, 41, 24,
// II Maccabees
- 36, 32, 40, 50, 27, 31, 42, 36, 29, 38, 38, 45, 26, 46, 39,
+ 36, 32, 40, 50, 27, 31, 42, 36, 29, 38,
+ 38, 45, 26, 46, 39,
// Matthew
- 25, 23, 17, 25, 48, 34, 29, 34, 38, 42, 30, 50, 58, 36, 39, 28, 27, 35, 30, 34, 46, 46, 39, 51, 46, 75, 66, 20,
+ 25, 23, 17, 25, 48, 34, 29, 34, 38, 42,
+ 30, 50, 58, 36, 39, 28, 27, 35, 30, 34,
+ 46, 46, 39, 51, 46, 75, 66, 20,
// Mark
- 45, 28, 35, 41, 43, 56, 37, 38, 50, 52, 33, 44, 37, 72, 47, 20,
+ 45, 28, 35, 41, 43, 56, 37, 38, 50, 52,
+ 33, 44, 37, 72, 47, 20,
// Luke
- 80, 52, 38, 44, 39, 49, 50, 56, 62, 42, 54, 59, 35, 35, 32, 31, 37, 43, 48, 47, 38, 71, 56, 53,
+ 80, 52, 38, 44, 39, 49, 50, 56, 62, 42,
+ 54, 59, 35, 35, 32, 31, 37, 43, 48, 47,
+ 38, 71, 56, 53,
// John
- 51, 25, 36, 54, 47, 71, 53, 59, 41, 42, 57, 50, 38, 31, 27, 33, 26, 40, 42, 31, 25,
+ 51, 25, 36, 54, 47, 71, 53, 59, 41, 42,
+ 57, 50, 38, 31, 27, 33, 26, 40, 42, 31,
+ 25,
// Acts
- 26, 47, 26, 37, 42, 15, 60, 40, 43, 48, 30, 25, 52, 28, 41, 40, 34, 28, 41, 38, 40, 30, 35, 27, 27, 32, 44, 31,
+ 26, 47, 26, 37, 42, 15, 60, 40, 43, 48,
+ 30, 25, 52, 28, 41, 40, 34, 28, 41, 38,
+ 40, 30, 35, 27, 27, 32, 44, 31,
// Romans
- 32, 29, 31, 25, 21, 23, 25, 39, 33, 21, 36, 21, 14, 23, 33, 27,
+ 32, 29, 31, 25, 21, 23, 25, 39, 33, 21,
+ 36, 21, 14, 23, 33, 27,
// I Corinthians
- 31, 16, 23, 21, 13, 20, 40, 13, 27, 33, 34, 31, 13, 40, 58, 24,
+ 31, 16, 23, 21, 13, 20, 40, 13, 27, 33,
+ 34, 31, 13, 40, 58, 24,
// II Corinthians
- 24, 17, 18, 18, 21, 18, 16, 24, 15, 18, 33, 21, 14,
+ 24, 17, 18, 18, 21, 18, 16, 24, 15, 18,
+ 33, 21, 14,
// Galatians
24, 21, 29, 31, 26, 18,
// Ephesians
@@ -236,7 +337,8 @@ int vm_kjva[] = {
// Philemon
25,
// Hebrews
- 14, 18, 19, 16, 14, 20, 28, 13, 28, 39, 40, 29, 25,
+ 14, 18, 19, 16, 14, 20, 28, 13, 28, 39,
+ 40, 29, 25,
// James
27, 26, 18, 17, 20,
// I Peter
@@ -252,7 +354,9 @@ int vm_kjva[] = {
// Jude
25,
// Revelation of John
- 20, 29, 22, 11, 14, 17, 17, 13, 21, 11, 19, 17, 18, 20, 8, 21, 18, 24, 21, 15, 27, 21
+ 20, 29, 22, 11, 14, 17, 17, 13, 21, 11,
+ 19, 17, 18, 20, 8, 21, 18, 24, 21, 15,
+ 27, 21
};
diff --git a/include/canon_leningrad.h b/include/canon_leningrad.h
index 54b1669..edd576b 100644
--- a/include/canon_leningrad.h
+++ b/include/canon_leningrad.h
@@ -1,7 +1,10 @@
/******************************************************************************
- * canon_leningrad.h - Versification data for the Leningrad system
*
- * Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
+ * canon_leningrad.h - Versification data for the Leningrad system
+ *
+ * $Id: canon_leningrad.h 2915 2013-07-23 16:55:54Z chrislit $
+ *
+ * Copyright 2009-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -80,35 +83,79 @@ struct sbook otbooks_leningrad[] = {
int vm_leningrad[] = {
// Genesis
- 31, 25, 24, 26, 32, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38, 18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 54, 33, 20, 31, 29, 43, 36, 30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
+ 31, 25, 24, 26, 32, 22, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 38, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 54, 33, 20, 31, 29, 43, 36, 30, 23, 23,
+ 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
// Exodus
- 22, 25, 22, 31, 23, 30, 29, 28, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25, 26, 37, 30, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
+ 22, 25, 22, 31, 23, 30, 29, 28, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 37, 30, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
// Leviticus
- 17, 16, 17, 35, 26, 23, 38, 36, 24, 20, 47, 8, 59, 57, 33, 34, 16, 30, 37, 27, 24, 33, 44, 23, 55, 46, 34,
+ 17, 16, 17, 35, 26, 23, 38, 36, 24, 20,
+ 47, 8, 59, 57, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
// Numbers
- 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 35, 16, 33, 45, 41, 35, 28, 32, 22, 29, 35, 41, 30, 25, 19, 65, 23, 31, 39, 17, 54, 42, 56, 29, 34, 13,
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 16, 33, 45, 41, 35, 28, 32, 22, 29,
+ 35, 41, 30, 25, 19, 65, 23, 31, 39, 17,
+ 54, 42, 56, 29, 34, 13,
// Deuteronomy
- 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 31, 19, 29, 23, 22, 20, 22, 21, 20, 23, 29, 26, 22, 19, 19, 26, 69, 28, 20, 30, 52, 29, 12,
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 31, 19, 29, 23, 22, 20, 22, 21, 20,
+ 23, 29, 26, 22, 19, 19, 26, 69, 28, 20,
+ 30, 52, 29, 12,
// Joshua
- 18, 24, 17, 24, 15, 27, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51, 9, 45, 34, 16, 33,
+ 18, 24, 17, 24, 15, 27, 26, 35, 27, 43,
+ 23, 24, 33, 15, 63, 10, 18, 28, 51, 9,
+ 45, 34, 16, 33,
// Judges
- 36, 23, 31, 24, 31, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30, 48, 25,
+ 36, 23, 31, 24, 31, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 31, 30, 48,
+ 25,
// I Samuel
- 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24, 42, 16, 23, 28, 23, 44, 25, 12, 25, 11, 31, 13,
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 42,
+ 16, 23, 28, 23, 44, 25, 12, 25, 11, 31,
+ 13,
// II Samuel
- 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 32, 44, 26, 22, 51, 39, 25,
+ 27, 32, 39, 12, 25, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 32, 44, 26,
+ 22, 51, 39, 25,
// I Kings
- 53, 46, 28, 20, 32, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21, 43, 29, 54,
+ 53, 46, 28, 20, 32, 38, 51, 66, 28, 29,
+ 43, 33, 34, 31, 34, 34, 24, 46, 21, 43,
+ 29, 54,
// II Kings
- 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 20, 22, 25, 29, 38, 20, 41, 37, 37, 21, 26, 20, 37, 20, 30,
+ 18, 25, 27, 44, 27, 33, 20, 29, 37, 36,
+ 20, 22, 25, 29, 38, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
// Isaiah
- 31, 22, 26, 6, 30, 13, 25, 23, 20, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6, 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8, 31, 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21, 14, 21, 22, 11, 12, 19, 11, 25, 24,
+ 31, 22, 26, 6, 30, 13, 25, 23, 20, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 25, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 19, 11, 25, 24,
// Jeremiah
- 19, 37, 25, 31, 31, 30, 34, 23, 25, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15, 18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 21, 28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
+ 19, 37, 25, 31, 31, 30, 34, 23, 25, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 40, 10, 38, 24, 22, 17, 32, 24,
+ 40, 44, 26, 22, 19, 32, 21, 28, 18, 16,
+ 18, 22, 13, 30, 5, 28, 7, 47, 39, 46,
+ 64, 34,
// Ezekiel
- 28, 10, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14, 44, 37, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28, 23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
+ 28, 10, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 44,
+ 37, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
// Hosea
- 9, 25, 5, 19, 15, 11, 16, 14, 17, 15, 11, 15, 15, 10,
+ 9, 25, 5, 19, 15, 11, 16, 14, 17, 15,
+ 11, 15, 15, 10,
// Joel
20, 27, 5, 21,
// Amos
@@ -128,35 +175,65 @@ int vm_leningrad[] = {
// Haggai
15, 23,
// Zechariah
- 17, 17, 10, 14, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
+ 17, 17, 10, 14, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
// Malachi
14, 17, 24,
// I Chronicles
- 54, 55, 24, 43, 41, 66, 40, 40, 44, 14, 47, 41, 14, 17, 29, 43, 27, 17, 19, 8, 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ 54, 55, 24, 43, 41, 66, 40, 40, 44, 14,
+ 47, 41, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
// II Chronicles
- 18, 17, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 23, 14, 19, 14, 19, 34, 11, 37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23,
+ 18, 17, 17, 22, 14, 42, 22, 18, 31, 19,
+ 23, 16, 23, 14, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 27, 23,
// Psalms
- 6, 12, 9, 9, 13, 11, 18, 10, 21, 18, 7, 9, 6, 7, 5, 11, 15, 51, 15, 10, 14, 32, 6, 10, 22, 12, 14, 9, 11, 13, 25, 11, 22, 23, 28, 13, 40, 23, 14, 18, 14, 12, 5, 27, 18, 12, 10, 15, 21, 23, 21, 11, 7, 9, 24, 14, 12, 12, 18, 14, 9, 13, 12, 11, 14, 20, 8, 36, 37, 6, 24, 20, 28, 23, 11, 13, 21, 72, 13, 20, 17, 8, 19, 13, 14, 17, 7, 19, 53, 17, 16, 16, 5, 23, 11, 13, 12, 9, 9, 5, 8, 29, 22, 35, 45, 48, 43, 14, 31, 7, 10, 10, 9, 8, 18, 19, 2, 29, 176, 7, 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, 3, 18, 3, 3, 21, 26, 9, 8, 24, 14, 10, 8, 12, 15, 21, 10, 20, 14, 9, 6,
+ 6, 12, 9, 9, 13, 11, 18, 10, 21, 18,
+ 7, 9, 6, 7, 5, 11, 15, 51, 15, 10,
+ 14, 32, 6, 10, 22, 12, 14, 9, 11, 13,
+ 25, 11, 22, 23, 28, 13, 40, 23, 14, 18,
+ 14, 12, 5, 27, 18, 12, 10, 15, 21, 23,
+ 21, 11, 7, 9, 24, 14, 12, 12, 18, 14,
+ 9, 13, 12, 11, 14, 20, 8, 36, 37, 6,
+ 24, 20, 28, 23, 11, 13, 21, 72, 13, 20,
+ 17, 8, 19, 13, 14, 17, 7, 19, 53, 17,
+ 16, 16, 5, 23, 11, 13, 12, 9, 9, 5,
+ 8, 29, 22, 35, 45, 48, 43, 14, 31, 7,
+ 10, 10, 9, 8, 18, 19, 2, 29, 176, 7,
+ 8, 9, 4, 8, 5, 6, 5, 6, 8, 8,
+ 3, 18, 3, 3, 21, 26, 9, 8, 24, 14,
+ 10, 8, 12, 15, 21, 10, 20, 14, 9, 6,
// Job
- 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 22, 16, 21, 29, 29, 34, 30, 17, 25, 6, 14, 23, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41, 30, 32, 26, 17,
+ 22, 13, 26, 21, 27, 30, 21, 22, 35, 22,
+ 20, 25, 28, 22, 35, 22, 16, 21, 29, 29,
+ 34, 30, 17, 25, 6, 14, 23, 28, 25, 31,
+ 40, 22, 33, 37, 16, 33, 24, 41, 30, 32,
+ 26, 17,
// Proverbs
- 33, 22, 35, 27, 23, 35, 27, 36, 18, 32, 31, 28, 25, 35, 33, 33, 28, 24, 29, 30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
+ 33, 22, 35, 27, 23, 35, 27, 36, 18, 32,
+ 31, 28, 25, 35, 33, 33, 28, 24, 29, 30,
+ 31, 29, 35, 34, 28, 28, 27, 28, 27, 33,
+ 31,
// Ruth
22, 23, 18, 22,
// Song of Solomon
17, 17, 11, 16, 16, 12, 14, 14,
// Ecclesiastes
- 18, 26, 22, 17, 19, 12, 29, 17, 18, 20, 10, 14,
+ 18, 26, 22, 17, 19, 12, 29, 17, 18, 20,
+ 10, 14,
// Lamentations
22, 22, 66, 22, 22,
// Esther
22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
// Daniel
- 21, 49, 33, 34, 30, 29, 28, 27, 27, 21, 45, 13,
+ 21, 49, 33, 34, 30, 29, 28, 27, 27, 21,
+ 45, 13,
// Ezra
11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
// Nehemiah
- 11, 20, 38, 17, 19, 19, 72, 18, 37, 40, 36, 47, 31
+ 11, 20, 38, 17, 19, 19, 72, 18, 37, 40,
+ 36, 47, 31
};
diff --git a/include/canon_luther.h b/include/canon_luther.h
index e3c8ef0..f007358 100644
--- a/include/canon_luther.h
+++ b/include/canon_luther.h
@@ -1,7 +1,10 @@
/******************************************************************************
- * canon_luther.h - Versification data for the Luther system
*
- * Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
+ * canon_luther.h - Versification data for the Luther system
+ *
+ * $Id: canon_luther.h 2915 2013-07-23 16:55:54Z chrislit $
+ *
+ * Copyright 2009-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -119,61 +122,134 @@ struct sbook ntbooks_luther[] = {
int vm_luther[] = {
// Genesis
- 31, 25, 24, 26, 32, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38, 18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 54, 33, 20, 31, 29, 43, 36, 30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
+ 31, 25, 24, 26, 32, 22, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 38, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 54, 33, 20, 31, 29, 43, 36, 30, 23, 23,
+ 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
// Exodus
- 22, 25, 22, 31, 23, 30, 29, 28, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25, 26, 37, 30, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
+ 22, 25, 22, 31, 23, 30, 29, 28, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 37, 30, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
// Leviticus
- 17, 16, 17, 35, 26, 23, 38, 36, 24, 20, 47, 8, 59, 57, 33, 34, 16, 30, 37, 27, 24, 33, 44, 23, 55, 46, 34,
+ 17, 16, 17, 35, 26, 23, 38, 36, 24, 20,
+ 47, 8, 59, 57, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
// Numbers
- 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 35, 16, 33, 45, 41, 35, 28, 32, 22, 29, 35, 41, 30, 25, 19, 65, 23, 31, 39, 17, 54, 42, 56, 29, 34, 13,
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 16, 33, 45, 41, 35, 28, 32, 22, 29,
+ 35, 41, 30, 25, 19, 65, 23, 31, 39, 17,
+ 54, 42, 56, 29, 34, 13,
// Deuteronomy
- 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 31, 19, 29, 23, 22, 20, 22, 21, 20, 23, 29, 26, 22, 19, 19, 26, 69, 28, 20, 30, 52, 29, 12,
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 31, 19, 29, 23, 22, 20, 22, 21, 20,
+ 23, 29, 26, 22, 19, 19, 26, 69, 28, 20,
+ 30, 52, 29, 12,
// Joshua
- 18, 24, 17, 24, 15, 27, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51, 9, 45, 34, 16, 33,
+ 18, 24, 17, 24, 15, 27, 26, 35, 27, 43,
+ 23, 24, 33, 15, 63, 10, 18, 28, 51, 9,
+ 45, 34, 16, 33,
// Judges
- 36, 23, 31, 24, 31, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30, 48, 25,
+ 36, 23, 31, 24, 31, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 31, 30, 48,
+ 25,
// Ruth
22, 23, 18, 22,
// I Samuel
- 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24, 42, 16, 23, 28, 23, 44, 25, 12, 25, 11, 31, 13,
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 42,
+ 16, 23, 28, 23, 44, 25, 12, 25, 11, 31,
+ 13,
// II Samuel
- 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 32, 44, 26, 22, 51, 39, 25,
+ 27, 32, 39, 12, 25, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 32, 44, 26,
+ 22, 51, 39, 25,
// I Kings
- 53, 46, 28, 20, 32, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21, 43, 29, 54,
+ 53, 46, 28, 20, 32, 38, 51, 66, 28, 29,
+ 43, 33, 34, 31, 34, 34, 24, 46, 21, 43,
+ 29, 54,
// II Kings
- 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 20, 22, 25, 29, 39, 20, 41, 37, 37, 21, 26, 20, 37, 20, 30,
+ 18, 25, 27, 44, 27, 33, 20, 29, 37, 36,
+ 20, 22, 25, 29, 39, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
// I Chronicles
- 54, 55, 24, 43, 41, 66, 40, 40, 44, 14, 47, 41, 14, 17, 29, 43, 27, 17, 19, 8, 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ 54, 55, 24, 43, 41, 66, 40, 40, 44, 14,
+ 47, 41, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
// II Chronicles
- 18, 17, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 23, 14, 19, 14, 19, 34, 11, 37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23,
+ 18, 17, 17, 22, 14, 42, 22, 18, 31, 19,
+ 23, 16, 23, 14, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 27, 23,
// Ezra
11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
// Nehemiah
- 11, 20, 38, 17, 19, 19, 73, 18, 37, 40, 36, 47, 31,
+ 11, 20, 38, 17, 19, 19, 73, 18, 37, 40,
+ 36, 47, 31,
// Esther
22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
// Job
- 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 22, 16, 21, 29, 29, 34, 30, 17, 25, 6, 14, 23, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41, 30, 32, 26, 17,
+ 22, 13, 26, 21, 27, 30, 21, 22, 35, 22,
+ 20, 25, 28, 22, 35, 22, 16, 21, 29, 29,
+ 34, 30, 17, 25, 6, 14, 23, 28, 25, 31,
+ 40, 22, 33, 37, 16, 33, 24, 41, 30, 32,
+ 26, 17,
// Psalms
- 6, 12, 9, 9, 13, 11, 18, 10, 21, 18, 7, 9, 6, 7, 5, 11, 15, 51, 15, 10, 14, 32, 6, 10, 22, 12, 14, 9, 11, 13, 25, 11, 22, 23, 28, 13, 40, 23, 14, 18, 14, 12, 5, 27, 18, 12, 10, 15, 21, 23, 21, 11, 7, 9, 24, 14, 12, 12, 18, 14, 9, 13, 12, 11, 14, 20, 8, 36, 37, 6, 24, 20, 28, 23, 11, 13, 21, 72, 13, 20, 17, 8, 19, 13, 14, 17, 7, 19, 53, 17, 16, 16, 5, 23, 11, 13, 12, 9, 9, 5, 8, 29, 22, 35, 45, 48, 43, 14, 31, 7, 10, 10, 9, 8, 18, 19, 2, 29, 176, 7, 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, 3, 18, 3, 3, 21, 26, 9, 8, 24, 14, 10, 8, 12, 15, 21, 10, 20, 14, 9, 6,
+ 6, 12, 9, 9, 13, 11, 18, 10, 21, 18,
+ 7, 9, 6, 7, 5, 11, 15, 51, 15, 10,
+ 14, 32, 6, 10, 22, 12, 14, 9, 11, 13,
+ 25, 11, 22, 23, 28, 13, 40, 23, 14, 18,
+ 14, 12, 5, 27, 18, 12, 10, 15, 21, 23,
+ 21, 11, 7, 9, 24, 14, 12, 12, 18, 14,
+ 9, 13, 12, 11, 14, 20, 8, 36, 37, 6,
+ 24, 20, 28, 23, 11, 13, 21, 72, 13, 20,
+ 17, 8, 19, 13, 14, 17, 7, 19, 53, 17,
+ 16, 16, 5, 23, 11, 13, 12, 9, 9, 5,
+ 8, 29, 22, 35, 45, 48, 43, 14, 31, 7,
+ 10, 10, 9, 8, 18, 19, 2, 29, 176, 7,
+ 8, 9, 4, 8, 5, 6, 5, 6, 8, 8,
+ 3, 18, 3, 3, 21, 26, 9, 8, 24, 14,
+ 10, 8, 12, 15, 21, 10, 20, 14, 9, 6,
// Proverbs
- 33, 22, 35, 27, 23, 35, 27, 36, 18, 32, 31, 28, 25, 35, 33, 33, 28, 24, 29, 30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
+ 33, 22, 35, 27, 23, 35, 27, 36, 18, 32,
+ 31, 28, 25, 35, 33, 33, 28, 24, 29, 30,
+ 31, 29, 35, 34, 28, 28, 27, 28, 27, 33,
+ 31,
// Ecclesiastes
- 18, 26, 22, 17, 19, 12, 29, 17, 18, 20, 10, 14,
+ 18, 26, 22, 17, 19, 12, 29, 17, 18, 20,
+ 10, 14,
// Song of Solomon
17, 17, 11, 16, 16, 12, 14, 14,
// Isaiah
- 31, 22, 26, 6, 30, 13, 25, 23, 20, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6, 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8, 31, 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21, 14, 21, 22, 11, 12, 19, 11, 25, 24,
+ 31, 22, 26, 6, 30, 13, 25, 23, 20, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 25, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 19, 11, 25, 24,
// Jeremiah
- 19, 37, 25, 31, 31, 30, 34, 23, 25, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15, 18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 21, 28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
+ 19, 37, 25, 31, 31, 30, 34, 23, 25, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 40, 10, 38, 24, 22, 17, 32, 24,
+ 40, 44, 26, 22, 19, 32, 21, 28, 18, 16,
+ 18, 22, 13, 30, 5, 28, 7, 47, 39, 46,
+ 64, 34,
// Lamentations
22, 22, 66, 22, 22,
// Ezekiel
- 28, 10, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14, 44, 37, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28, 23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
+ 28, 10, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 44,
+ 37, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
// Daniel
- 21, 49, 33, 34, 30, 29, 28, 27, 27, 21, 45, 13,
+ 21, 49, 33, 34, 30, 29, 28, 27, 27, 21,
+ 45, 13,
// Hosea
- 9, 25, 5, 19, 15, 11, 16, 14, 17, 15, 11, 15, 15, 10,
+ 9, 25, 5, 19, 15, 11, 16, 14, 17, 15,
+ 11, 15, 15, 10,
// Joel
20, 27, 5, 21,
// Amos
@@ -193,23 +269,34 @@ int vm_luther[] = {
// Haggai
15, 23,
// Zechariah
- 17, 17, 10, 14, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
+ 17, 17, 10, 14, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
// Malachi
14, 17, 24,
// Judith
- 11, 18, 12, 14, 26, 20, 24, 28, 15, 21, 17, 21, 31, 16, 16, 31,
+ 11, 18, 12, 14, 26, 20, 24, 28, 15, 21,
+ 17, 21, 31, 16, 16, 31,
// Wisdom
- 16, 25, 19, 20, 24, 27, 30, 21, 19, 21, 26, 27, 19, 31, 19, 29, 21, 25, 21,
+ 16, 25, 19, 20, 24, 27, 30, 21, 19, 21,
+ 26, 27, 19, 31, 19, 29, 21, 25, 21,
// Tobit
- 25, 23, 25, 22, 29, 23, 20, 23, 12, 13, 20, 22, 22, 17,
+ 25, 23, 25, 22, 29, 23, 20, 23, 12, 13,
+ 20, 22, 22, 17,
// Sirach
- 38, 23, 34, 36, 18, 37, 40, 22, 25, 34, 35, 19, 32, 27, 21, 30, 31, 33, 27, 33, 31, 33, 37, 47, 34, 28, 33, 30, 35, 27, 40, 28, 32, 31, 26, 28, 34, 39, 41, 32, 29, 26, 37, 26, 32, 23, 31, 28, 20, 31, 38,
+ 38, 23, 34, 36, 18, 37, 40, 22, 25, 34,
+ 35, 19, 32, 27, 21, 30, 31, 33, 27, 33,
+ 31, 33, 37, 47, 34, 28, 33, 30, 35, 27,
+ 40, 28, 32, 31, 26, 28, 34, 39, 41, 32,
+ 29, 26, 37, 26, 32, 23, 31, 28, 20, 31,
+ 38,
// Baruch
22, 35, 38, 37, 9, 73,
// I Maccabees
- 68, 70, 60, 61, 68, 63, 50, 32, 73, 89, 74, 54, 54, 49, 41, 24,
+ 68, 70, 60, 61, 68, 63, 50, 32, 73, 89,
+ 74, 54, 54, 49, 41, 24,
// II Maccabees
- 36, 33, 40, 50, 27, 31, 42, 36, 29, 38, 38, 46, 26, 46, 40,
+ 36, 33, 40, 50, 27, 31, 42, 36, 29, 38,
+ 38, 46, 26, 46, 40,
// Additions to Esther
4, 8, 12, 12, 16, 9, 8,
// Additions to Daniel
@@ -217,21 +304,33 @@ int vm_luther[] = {
// Prayer of Manasses
16,
// Matthew
- 25, 23, 17, 25, 48, 34, 29, 34, 38, 42, 30, 50, 58, 36, 39, 28, 27, 35, 30, 34, 46, 46, 39, 51, 46, 75, 66, 20,
+ 25, 23, 17, 25, 48, 34, 29, 34, 38, 42,
+ 30, 50, 58, 36, 39, 28, 27, 35, 30, 34,
+ 46, 46, 39, 51, 46, 75, 66, 20,
// Mark
- 45, 28, 35, 41, 43, 56, 37, 38, 50, 52, 33, 44, 37, 72, 47, 20,
+ 45, 28, 35, 41, 43, 56, 37, 38, 50, 52,
+ 33, 44, 37, 72, 47, 20,
// Luke
- 80, 52, 38, 44, 39, 49, 50, 56, 62, 42, 54, 59, 35, 35, 32, 31, 37, 43, 48, 47, 38, 71, 56, 53,
+ 80, 52, 38, 44, 39, 49, 50, 56, 62, 42,
+ 54, 59, 35, 35, 32, 31, 37, 43, 48, 47,
+ 38, 71, 56, 53,
// John
- 51, 25, 36, 54, 47, 71, 53, 59, 41, 42, 57, 50, 38, 31, 27, 33, 26, 40, 42, 31, 25,
+ 51, 25, 36, 54, 47, 71, 53, 59, 41, 42,
+ 57, 50, 38, 31, 27, 33, 26, 40, 42, 31,
+ 25,
// Acts
- 26, 47, 26, 37, 42, 15, 60, 40, 43, 48, 30, 25, 52, 28, 41, 40, 34, 28, 40, 38, 40, 30, 35, 27, 27, 32, 44, 31,
+ 26, 47, 26, 37, 42, 15, 60, 40, 43, 48,
+ 30, 25, 52, 28, 41, 40, 34, 28, 40, 38,
+ 40, 30, 35, 27, 27, 32, 44, 31,
// Romans
- 32, 29, 31, 25, 21, 23, 25, 39, 33, 21, 36, 21, 14, 23, 33, 27,
+ 32, 29, 31, 25, 21, 23, 25, 39, 33, 21,
+ 36, 21, 14, 23, 33, 27,
// I Corinthians
- 31, 16, 23, 21, 13, 20, 40, 13, 27, 33, 34, 31, 13, 40, 58, 24,
+ 31, 16, 23, 21, 13, 20, 40, 13, 27, 33,
+ 34, 31, 13, 40, 58, 24,
// II Corinthians
- 24, 17, 18, 18, 21, 18, 16, 24, 15, 18, 33, 21, 13,
+ 24, 17, 18, 18, 21, 18, 16, 24, 15, 18,
+ 33, 21, 13,
// Galatians
24, 21, 29, 31, 26, 18,
// Ephesians
@@ -263,13 +362,16 @@ int vm_luther[] = {
// III John
15,
// Hebrews
- 14, 18, 19, 16, 14, 20, 28, 13, 28, 39, 40, 29, 25,
+ 14, 18, 19, 16, 14, 20, 28, 13, 28, 39,
+ 40, 29, 25,
// James
27, 26, 18, 17, 20,
// Jude
25,
// Revelation of John
- 20, 29, 22, 11, 14, 17, 17, 13, 21, 11, 19, 18, 18, 20, 8, 21, 18, 24, 21, 15, 27, 21
+ 20, 29, 22, 11, 14, 17, 17, 13, 21, 11,
+ 19, 18, 18, 20, 8, 21, 18, 24, 21, 15,
+ 27, 21
};
diff --git a/include/canon_lxx.h b/include/canon_lxx.h
new file mode 100644
index 0000000..574ea63
--- /dev/null
+++ b/include/canon_lxx.h
@@ -0,0 +1,403 @@
+/******************************************************************************
+ *
+ * canon_lxx.h - Versification data for the LXX system
+ *
+ * $Id: canon_lxx.h 2936 2013-08-02 18:00:19Z chrislit $
+ *
+ * Copyright 2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ */
+
+#ifndef CANON_LXX_H
+#define CANON_LXX_H
+
+SWORD_NAMESPACE_START
+
+
+// Versification system: LXX
+// Book order: Gen Exod Lev Num Deut Josh Judg Ruth 1Sam 2Sam 1Kgs 2Kgs 1Chr 2Chr 1Esd Ezra Neh Esth Jdt Tob 1Macc 2Macc 3Macc 4Macc Ps PrMan Prov Eccl Song Job Wis Sir PssSol Hos Amos Mic Joel Obad Jonah Nah Hab Zeph Hag Zech Mal Isa Jer Bar Lam EpJer Ezek PrAzar Sus Dan Bel 1En Odes Matt Mark Luke John Acts Rom 1Cor 2Cor Gal Eph Phil Col 1Thess 2Thess 1Tim 2Tim Titus Phlm Heb Jas 1Pet 2Pet 1John 2John 3John Jude Rev
+
+// This is a compromise versification system, intended to allow encoding of Bibles using a number of slightly varying LXX-based versification systems. In particular, it was produced in consultation with OTs:
+// Rahlfs', Swete's, Tischendorf's, & Thomson's editions of the LXX
+// the NETS, SAAS (OSB OT), Brenton, & Asser translations
+// R. H. Charles' & James H. Charlesworth's anthologies of Apocrypha & Pseudepigrapha
+// Henry E. J. Howard's Pentateuch and R. R. Ottley's Isaiah translations from the LXX
+
+// In addition to the LXX OT, the GNT has been included in this system to facilitate production of modern Bibles such as the OSB, which are translated from the LXX but include the NT as well. The following NTs were consulted in producing this versification system:
+// Antoniades' Patriarchal GNT and its translation, the EOB
+// the NKJV (OSB NT) & NRSV translations
+
+// All of these Bibles & texts should be accomodated by this versification definition without requiring that any extra verses be appended; as a consequence, no Bible will include every verse of this system.
+
+
+/******************************************************************************
+ * [on]tbooks_lxx - initialize static instance for all canonical
+ * text names and chapmax
+ */
+struct sbook otbooks_lxx[] = {
+ {"Genesis", "Gen", "Gen", 50},
+ {"Exodus", "Exod", "Exod", 40},
+ {"Leviticus", "Lev", "Lev", 27},
+ {"Numbers", "Num", "Num", 36},
+ {"Deuteronomy", "Deut", "Deut", 34},
+ {"Joshua", "Josh", "Josh", 24},
+ {"Judges", "Judg", "Judg", 21},
+ {"Ruth", "Ruth", "Ruth", 4},
+ {"I Samuel", "1Sam", "1Sam", 31},
+ {"II Samuel", "2Sam", "2Sam", 24},
+ {"I Kings", "1Kgs", "1Kgs", 22},
+ {"II Kings", "2Kgs", "2Kgs", 25},
+ {"I Chronicles", "1Chr", "1Chr", 29},
+ {"II Chronicles", "2Chr", "2Chr", 36},
+ {"I Esdras", "1Esd", "1Esd", 9},
+ {"Ezra", "Ezra", "Ezra", 10},
+ {"Nehemiah", "Neh", "Neh", 13},
+ {"Esther", "Esth", "Esth", 16},
+ {"Judith", "Jdt", "Jdt", 16},
+ {"Tobit", "Tob", "Tob", 14},
+ {"I Maccabees", "1Macc", "1Macc", 16},
+ {"II Maccabees", "2Macc", "2Macc", 15},
+ {"III Maccabees", "3Macc", "3Macc", 7},
+ {"IV Maccabees", "4Macc", "4Macc", 18},
+ {"Psalms", "Ps", "Ps", 151},
+ {"Prayer of Manasses", "PrMan", "PrMan", 1},
+ {"Proverbs", "Prov", "Prov", 31},
+ {"Ecclesiastes", "Eccl", "Eccl", 12},
+ {"Song of Solomon", "Song", "Song", 8},
+ {"Job", "Job", "Job", 42},
+ {"Wisdom", "Wis", "Wis", 19},
+ {"Sirach", "Sir", "Sir", 51},
+ {"Psalms of Solomon", "PssSol", "PssSol", 18},
+ {"Hosea", "Hos", "Hos", 14},
+ {"Amos", "Amos", "Amos", 9},
+ {"Micah", "Mic", "Mic", 7},
+ {"Joel", "Joel", "Joel", 4},
+ {"Obadiah", "Obad", "Obad", 1},
+ {"Jonah", "Jonah", "Jonah", 4},
+ {"Nahum", "Nah", "Nah", 3},
+ {"Habakkuk", "Hab", "Hab", 3},
+ {"Zephaniah", "Zeph", "Zeph", 3},
+ {"Haggai", "Hag", "Hag", 2},
+ {"Zechariah", "Zech", "Zech", 14},
+ {"Malachi", "Mal", "Mal", 4},
+ {"Isaiah", "Isa", "Isa", 66},
+ {"Jeremiah", "Jer", "Jer", 52},
+ {"Baruch", "Bar", "Bar", 5},
+ {"Lamentations", "Lam", "Lam", 5},
+ {"Epistle of Jeremiah", "EpJer", "EpJer", 1},
+ {"Ezekiel", "Ezek", "Ezek", 48},
+ {"Prayer of Azariah", "PrAzar", "PrAzar", 1},
+ {"Susanna", "Sus", "Sus", 1},
+ {"Daniel", "Dan", "Dan", 12},
+ {"Bel and the Dragon", "Bel", "Bel", 1},
+ {"I Enoch", "1En", "1En", 108},
+ {"Odes", "Odes", "Odes", 14},
+ {"", "", "", 0}
+};
+
+// for ntbooks_lxx, use ntbooks
+
+/******************************************************************************
+ * Maximum verses per chapter
+ */
+int vm_lxx[] = {
+ // Genesis
+ 31, 25, 25, 26, 32, 23, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 39, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 55, 33, 20, 31, 29, 44, 36, 30, 23, 23,
+ 57, 39, 34, 34, 28, 34, 31, 22, 33, 26,
+ // Exodus
+ 22, 25, 22, 31, 23, 30, 29, 32, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 37, 31, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 40, 21, 29, 23, 38,
+ // Leviticus
+ 17, 16, 17, 35, 26, 40, 38, 36, 24, 20,
+ 47, 8, 59, 57, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
+ // Numbers
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 16, 34, 45, 41, 50, 28, 32, 22, 29,
+ 35, 41, 30, 25, 18, 65, 23, 31, 40, 17,
+ 54, 42, 56, 29, 34, 13,
+ // Deuteronomy
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 32, 19, 29, 23, 22, 20, 22, 21, 20,
+ 23, 30, 26, 24, 19, 19, 27, 69, 29, 20,
+ 30, 52, 29, 12,
+ // Joshua
+ 18, 24, 17, 24, 16, 27, 26, 35, 33, 43,
+ 23, 24, 33, 15, 64, 10, 18, 28, 54, 9,
+ 49, 34, 16, 36,
+ // Judges
+ 36, 23, 31, 24, 32, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 32, 30, 48,
+ 25,
+ // Ruth
+ 22, 23, 18, 22,
+ // I Samuel
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 43,
+ 16, 23, 29, 23, 44, 25, 12, 25, 11, 32,
+ 13,
+ // II Samuel
+ 27, 32, 39, 12, 26, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 33, 44, 26,
+ 22, 51, 41, 25,
+ // I Kings
+ 53, 71, 39, 34, 32, 38, 51, 66, 28, 33,
+ 44, 54, 34, 31, 34, 42, 24, 46, 21, 43,
+ 43, 54,
+ // II Kings
+ 22, 25, 27, 44, 27, 35, 20, 29, 37, 36,
+ 21, 22, 25, 29, 38, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
+ // I Chronicles
+ 54, 55, 24, 43, 41, 81, 40, 40, 44, 14,
+ 47, 41, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ // II Chronicles
+ 18, 18, 17, 23, 14, 42, 22, 18, 31, 19,
+ 23, 16, 23, 15, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 31, 31,
+ // I Esdras
+ 58, 30, 24, 63, 73, 34, 15, 96, 55,
+ // Ezra
+ 11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
+ // Nehemiah
+ 11, 20, 37, 23, 19, 19, 73, 18, 38, 40,
+ 36, 47, 31,
+ // Esther
+ 22, 23, 15, 17, 22, 14, 10, 17, 35, 13,
+ 17, 7, 30, 19, 24, 24,
+ // Judith
+ 16, 28, 10, 15, 24, 21, 32, 36, 14, 23,
+ 23, 20, 20, 19, 14, 25,
+ // Tobit
+ 22, 14, 17, 21, 23, 19, 18, 21, 6, 14,
+ 19, 22, 19, 15,
+ // I Maccabees
+ 64, 70, 60, 61, 68, 63, 50, 32, 73, 89,
+ 74, 53, 54, 49, 41, 24,
+ // II Maccabees
+ 36, 32, 40, 50, 27, 31, 42, 36, 29, 38,
+ 38, 46, 26, 46, 39,
+ // III Maccabees
+ 29, 33, 30, 21, 51, 41, 23,
+ // IV Maccabees
+ 35, 24, 21, 26, 38, 35, 25, 29, 32, 21,
+ 27, 20, 27, 20, 32, 25, 24, 24,
+ // Psalms
+ 6, 13, 9, 9, 13, 11, 18, 10, 40, 8,
+ 9, 6, 7, 6, 11, 15, 51, 15, 10, 14,
+ 32, 6, 10, 22, 12, 14, 9, 11, 13, 25,
+ 11, 22, 23, 28, 13, 40, 23, 14, 18, 14,
+ 12, 6, 27, 18, 12, 10, 15, 21, 23, 21,
+ 11, 7, 9, 24, 14, 12, 12, 19, 14, 9,
+ 13, 12, 11, 14, 20, 8, 36, 37, 7, 24,
+ 20, 28, 23, 11, 13, 21, 72, 13, 20, 17,
+ 8, 19, 13, 14, 17, 7, 19, 53, 17, 16,
+ 16, 5, 23, 11, 13, 12, 9, 9, 5, 8,
+ 29, 22, 36, 45, 48, 43, 14, 31, 7, 10,
+ 10, 9, 26, 18, 19, 2, 29, 176, 7, 8,
+ 9, 4, 8, 5, 7, 5, 6, 8, 8, 3,
+ 18, 3, 3, 21, 26, 9, 8, 24, 15, 10,
+ 8, 12, 15, 22, 10, 11, 20, 14, 9, 6,
+ 7,
+ // Prayer of Manasses
+ 15,
+ // Proverbs
+ 35, 23, 38, 28, 23, 40, 28, 37, 25, 33,
+ 31, 31, 27, 36, 38, 33, 30, 24, 29, 30,
+ 31, 31, 36, 77, 31, 29, 29, 30, 49, 35,
+ 31,
+ // Ecclesiastes
+ 18, 26, 22, 17, 20, 12, 30, 17, 18, 20,
+ 10, 14,
+ // Song of Solomon
+ 17, 17, 11, 16, 17, 13, 14, 15,
+ // Job
+ 22, 18, 26, 21, 27, 30, 22, 22, 35, 22,
+ 20, 25, 28, 22, 35, 23, 16, 21, 29, 29,
+ 34, 30, 17, 25, 6, 14, 23, 28, 25, 31,
+ 40, 22, 33, 37, 16, 34, 24, 41, 35, 32,
+ 34, 22,
+ // Wisdom
+ 16, 25, 19, 20, 24, 27, 30, 21, 19, 21,
+ 27, 27, 19, 31, 19, 29, 21, 25, 22,
+ // Sirach
+ 30, 18, 31, 31, 15, 37, 36, 19, 18, 31,
+ 34, 18, 26, 27, 20, 30, 32, 33, 31, 32,
+ 28, 27, 28, 34, 26, 29, 30, 26, 28, 40,
+ 31, 26, 33, 31, 26, 31, 31, 35, 35, 30,
+ 27, 27, 33, 24, 26, 20, 25, 25, 16, 29,
+ 30,
+ // Psalms of Solomon
+ 8, 41, 16, 29, 22, 9, 10, 40, 20, 9,
+ 9, 8, 12, 10, 15, 15, 51, 14,
+ // Hosea
+ 11, 25, 5, 19, 15, 12, 16, 14, 17, 15,
+ 12, 15, 16, 10,
+ // Amos
+ 15, 16, 15, 13, 27, 15, 17, 14, 15,
+ // Micah
+ 16, 13, 12, 14, 15, 16, 20,
+ // Joel
+ 20, 32, 21, 21,
+ // Obadiah
+ 21,
+ // Jonah
+ 17, 11, 10, 11,
+ // Nahum
+ 15, 14, 19,
+ // Habakkuk
+ 17, 20, 19,
+ // Zephaniah
+ 18, 15, 21,
+ // Haggai
+ 15, 24,
+ // Zechariah
+ 21, 17, 11, 14, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
+ // Malachi
+ 14, 17, 24, 6,
+ // Isaiah
+ 31, 22, 26, 6, 30, 13, 25, 23, 21, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 26, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 20, 12, 25, 24,
+ // Jeremiah
+ 19, 37, 25, 31, 31, 30, 34, 23, 26, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 42, 10, 39, 28, 46, 64, 31, 33,
+ 47, 44, 24, 22, 19, 32, 24, 40, 44, 26,
+ 22, 22, 32, 30, 28, 28, 16, 44, 38, 46,
+ 63, 34,
+ // Baruch
+ 22, 35, 38, 37, 9,
+ // Lamentations
+ 22, 22, 66, 22, 22,
+ // Epistle of Jeremiah
+ 73,
+ // Ezekiel
+ 28, 13, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 49,
+ 37, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
+ // Prayer of Azariah
+ 68,
+ // Susanna
+ 64,
+ // Daniel
+ 21, 49, 100, 37, 31, 29, 28, 27, 27, 21,
+ 45, 13,
+ // Bel and the Dragon
+ 42,
+ // I Enoch
+ 9, 3, 1, 1, 10, 8, 6, 4, 11, 22,
+ 2, 6, 10, 25, 12, 4, 8, 16, 3, 8,
+ 10, 14, 4, 6, 7, 6, 5, 3, 2, 3,
+ 3, 6, 4, 3, 1, 4, 6, 6, 14, 10,
+ 9, 3, 4, 1, 6, 8, 4, 10, 4, 5,
+ 5, 9, 7, 10, 4, 8, 3, 6, 3, 25,
+ 13, 16, 12, 2, 12, 3, 13, 5, 30, 4,
+ 17, 37, 8, 17, 9, 14, 9, 17, 6, 8,
+ 10, 20, 11, 6, 10, 6, 4, 3, 77, 43,
+ 19, 17, 14, 11, 7, 8, 10, 16, 16, 13,
+ 9, 11, 15, 13, 2, 19, 3, 15,
+ // Odes
+ 19, 43, 10, 20, 20, 19, 45, 88, 79, 88,
+ 55, 32, 79, 46,
+ // Matthew
+ 25, 23, 17, 25, 48, 34, 29, 34, 38, 42,
+ 30, 50, 58, 36, 39, 28, 27, 35, 30, 34,
+ 46, 46, 39, 51, 46, 75, 66, 20,
+ // Mark
+ 45, 28, 35, 41, 43, 56, 37, 38, 50, 52,
+ 33, 44, 37, 72, 47, 20,
+ // Luke
+ 80, 52, 38, 44, 39, 49, 50, 56, 62, 42,
+ 54, 59, 35, 35, 32, 31, 37, 43, 48, 47,
+ 38, 71, 56, 53,
+ // John
+ 52, 25, 36, 54, 47, 71, 53, 59, 41, 42,
+ 57, 50, 38, 31, 27, 33, 26, 40, 42, 31,
+ 25,
+ // Acts
+ 26, 47, 26, 37, 42, 15, 60, 40, 43, 48,
+ 30, 25, 52, 28, 41, 40, 34, 28, 41, 38,
+ 40, 30, 35, 27, 27, 32, 44, 31,
+ // Romans
+ 32, 29, 31, 25, 21, 23, 25, 39, 33, 21,
+ 36, 21, 14, 26, 33, 27,
+ // I Corinthians
+ 31, 16, 23, 21, 13, 20, 40, 13, 27, 33,
+ 34, 31, 13, 40, 58, 24,
+ // II Corinthians
+ 24, 17, 18, 18, 21, 18, 16, 24, 15, 18,
+ 33, 21, 14,
+ // Galatians
+ 24, 21, 29, 31, 26, 18,
+ // Ephesians
+ 23, 22, 21, 32, 33, 24,
+ // Philippians
+ 30, 30, 21, 23,
+ // Colossians
+ 29, 23, 25, 18,
+ // I Thessalonians
+ 10, 20, 13, 18, 28,
+ // II Thessalonians
+ 12, 17, 18,
+ // I Timothy
+ 20, 15, 16, 16, 25, 21,
+ // II Timothy
+ 18, 26, 17, 22,
+ // Titus
+ 16, 15, 15,
+ // Philemon
+ 25,
+ // Hebrews
+ 14, 18, 19, 16, 14, 20, 28, 13, 28, 39,
+ 40, 29, 25,
+ // James
+ 27, 26, 18, 17, 20,
+ // I Peter
+ 25, 25, 22, 19, 14,
+ // II Peter
+ 21, 22, 18,
+ // I John
+ 10, 29, 24, 21, 21,
+ // II John
+ 13,
+ // III John
+ 15,
+ // Jude
+ 25,
+ // Revelation of John
+ 20, 29, 22, 11, 14, 17, 17, 13, 21, 11,
+ 19, 18, 18, 20, 9, 21, 18, 24, 21, 15,
+ 27, 21
+};
+
+
+SWORD_NAMESPACE_END
+
+
+#endif
diff --git a/include/canon_mt.h b/include/canon_mt.h
index c350bb4..306d7c3 100644
--- a/include/canon_mt.h
+++ b/include/canon_mt.h
@@ -1,7 +1,10 @@
/******************************************************************************
- * canon_mt.h - Versification data for the Masoretic Text (MT) system
*
- * Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
+ * canon_mt.h - Versification data for the Masoretic Text (MT) system
+ *
+ * $Id: canon_mt.h 2915 2013-07-23 16:55:54Z chrislit $
+ *
+ * Copyright 2009-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -80,35 +83,79 @@ struct sbook otbooks_mt[] = {
int vm_mt[] = {
// Genesis
- 31, 25, 24, 26, 32, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38, 18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 54, 33, 20, 31, 29, 43, 36, 30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
+ 31, 25, 24, 26, 32, 22, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 38, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 54, 33, 20, 31, 29, 43, 36, 30, 23, 23,
+ 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
// Exodus
- 22, 25, 22, 31, 23, 30, 29, 28, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25, 26, 37, 30, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
+ 22, 25, 22, 31, 23, 30, 29, 28, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 37, 30, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
// Leviticus
- 17, 16, 17, 35, 26, 23, 38, 36, 24, 20, 47, 8, 59, 57, 33, 34, 16, 30, 37, 27, 24, 33, 44, 23, 55, 46, 34,
+ 17, 16, 17, 35, 26, 23, 38, 36, 24, 20,
+ 47, 8, 59, 57, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
// Numbers
- 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 35, 16, 33, 45, 41, 35, 28, 32, 22, 29, 35, 41, 30, 25, 19, 65, 23, 31, 39, 17, 54, 42, 56, 29, 34, 13,
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 16, 33, 45, 41, 35, 28, 32, 22, 29,
+ 35, 41, 30, 25, 19, 65, 23, 31, 39, 17,
+ 54, 42, 56, 29, 34, 13,
// Deuteronomy
- 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 31, 19, 29, 23, 22, 20, 22, 21, 20, 23, 29, 26, 22, 19, 19, 26, 69, 28, 20, 30, 52, 29, 12,
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 31, 19, 29, 23, 22, 20, 22, 21, 20,
+ 23, 29, 26, 22, 19, 19, 26, 69, 28, 20,
+ 30, 52, 29, 12,
// Joshua
- 18, 24, 17, 24, 15, 27, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51, 9, 45, 34, 16, 33,
+ 18, 24, 17, 24, 15, 27, 26, 35, 27, 43,
+ 23, 24, 33, 15, 63, 10, 18, 28, 51, 9,
+ 45, 34, 16, 33,
// Judges
- 36, 23, 31, 24, 31, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30, 48, 25,
+ 36, 23, 31, 24, 31, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 31, 30, 48,
+ 25,
// I Samuel
- 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24, 42, 16, 23, 28, 23, 44, 25, 12, 25, 11, 31, 13,
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 42,
+ 16, 23, 28, 23, 44, 25, 12, 25, 11, 31,
+ 13,
// II Samuel
- 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 32, 44, 26, 22, 51, 39, 25,
+ 27, 32, 39, 12, 25, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 32, 44, 26,
+ 22, 51, 39, 25,
// I Kings
- 53, 46, 28, 20, 32, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21, 43, 29, 54,
+ 53, 46, 28, 20, 32, 38, 51, 66, 28, 29,
+ 43, 33, 34, 31, 34, 34, 24, 46, 21, 43,
+ 29, 54,
// II Kings
- 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 20, 22, 25, 29, 38, 20, 41, 37, 37, 21, 26, 20, 37, 20, 30,
+ 18, 25, 27, 44, 27, 33, 20, 29, 37, 36,
+ 20, 22, 25, 29, 38, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
// Isaiah
- 31, 22, 26, 6, 30, 13, 25, 23, 20, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6, 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8, 31, 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21, 14, 21, 22, 11, 12, 19, 11, 25, 24,
+ 31, 22, 26, 6, 30, 13, 25, 23, 20, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 25, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 19, 11, 25, 24,
// Jeremiah
- 19, 37, 25, 31, 31, 30, 34, 23, 25, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15, 18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 21, 28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
+ 19, 37, 25, 31, 31, 30, 34, 23, 25, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 40, 10, 38, 24, 22, 17, 32, 24,
+ 40, 44, 26, 22, 19, 32, 21, 28, 18, 16,
+ 18, 22, 13, 30, 5, 28, 7, 47, 39, 46,
+ 64, 34,
// Ezekiel
- 28, 10, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14, 44, 37, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28, 23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
+ 28, 10, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 44,
+ 37, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
// Hosea
- 9, 25, 5, 19, 15, 11, 16, 14, 17, 15, 11, 15, 15, 10,
+ 9, 25, 5, 19, 15, 11, 16, 14, 17, 15,
+ 11, 15, 15, 10,
// Joel
20, 27, 5, 21,
// Amos
@@ -128,35 +175,65 @@ int vm_mt[] = {
// Haggai
15, 23,
// Zechariah
- 17, 17, 10, 14, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
+ 17, 17, 10, 14, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
// Malachi
14, 17, 24,
// Psalms
- 6, 12, 9, 9, 13, 11, 18, 10, 21, 18, 7, 9, 6, 7, 5, 11, 15, 51, 15, 10, 14, 32, 6, 10, 22, 12, 14, 9, 11, 13, 25, 11, 22, 23, 28, 13, 40, 23, 14, 18, 14, 12, 5, 27, 18, 12, 10, 15, 21, 23, 21, 11, 7, 9, 24, 14, 12, 12, 18, 14, 9, 13, 12, 11, 14, 20, 8, 36, 37, 6, 24, 20, 28, 23, 11, 13, 21, 72, 13, 20, 17, 8, 19, 13, 14, 17, 7, 19, 53, 17, 16, 16, 5, 23, 11, 13, 12, 9, 9, 5, 8, 29, 22, 35, 45, 48, 43, 14, 31, 7, 10, 10, 9, 8, 18, 19, 2, 29, 176, 7, 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, 3, 18, 3, 3, 21, 26, 9, 8, 24, 14, 10, 8, 12, 15, 21, 10, 20, 14, 9, 6,
+ 6, 12, 9, 9, 13, 11, 18, 10, 21, 18,
+ 7, 9, 6, 7, 5, 11, 15, 51, 15, 10,
+ 14, 32, 6, 10, 22, 12, 14, 9, 11, 13,
+ 25, 11, 22, 23, 28, 13, 40, 23, 14, 18,
+ 14, 12, 5, 27, 18, 12, 10, 15, 21, 23,
+ 21, 11, 7, 9, 24, 14, 12, 12, 18, 14,
+ 9, 13, 12, 11, 14, 20, 8, 36, 37, 6,
+ 24, 20, 28, 23, 11, 13, 21, 72, 13, 20,
+ 17, 8, 19, 13, 14, 17, 7, 19, 53, 17,
+ 16, 16, 5, 23, 11, 13, 12, 9, 9, 5,
+ 8, 29, 22, 35, 45, 48, 43, 14, 31, 7,
+ 10, 10, 9, 8, 18, 19, 2, 29, 176, 7,
+ 8, 9, 4, 8, 5, 6, 5, 6, 8, 8,
+ 3, 18, 3, 3, 21, 26, 9, 8, 24, 14,
+ 10, 8, 12, 15, 21, 10, 20, 14, 9, 6,
// Job
- 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 22, 16, 21, 29, 29, 34, 30, 17, 25, 6, 14, 23, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41, 30, 32, 26, 17,
+ 22, 13, 26, 21, 27, 30, 21, 22, 35, 22,
+ 20, 25, 28, 22, 35, 22, 16, 21, 29, 29,
+ 34, 30, 17, 25, 6, 14, 23, 28, 25, 31,
+ 40, 22, 33, 37, 16, 33, 24, 41, 30, 32,
+ 26, 17,
// Proverbs
- 33, 22, 35, 27, 23, 35, 27, 36, 18, 32, 31, 28, 25, 35, 33, 33, 28, 24, 29, 30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
+ 33, 22, 35, 27, 23, 35, 27, 36, 18, 32,
+ 31, 28, 25, 35, 33, 33, 28, 24, 29, 30,
+ 31, 29, 35, 34, 28, 28, 27, 28, 27, 33,
+ 31,
// Ruth
22, 23, 18, 22,
// Song of Solomon
17, 17, 11, 16, 16, 12, 14, 14,
// Ecclesiastes
- 18, 26, 22, 17, 19, 12, 29, 17, 18, 20, 10, 14,
+ 18, 26, 22, 17, 19, 12, 29, 17, 18, 20,
+ 10, 14,
// Lamentations
22, 22, 66, 22, 22,
// Esther
22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
// Daniel
- 21, 49, 33, 34, 30, 29, 28, 27, 27, 21, 45, 13,
+ 21, 49, 33, 34, 30, 29, 28, 27, 27, 21,
+ 45, 13,
// Ezra
11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
// Nehemiah
- 11, 20, 38, 17, 19, 19, 72, 18, 37, 40, 36, 47, 31,
+ 11, 20, 38, 17, 19, 19, 72, 18, 37, 40,
+ 36, 47, 31,
// I Chronicles
- 54, 55, 24, 43, 41, 66, 40, 40, 44, 14, 47, 41, 14, 17, 29, 43, 27, 17, 19, 8, 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ 54, 55, 24, 43, 41, 66, 40, 40, 44, 14,
+ 47, 41, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
// II Chronicles
- 18, 17, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 23, 14, 19, 14, 19, 34, 11, 37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23
+ 18, 17, 17, 22, 14, 42, 22, 18, 31, 19,
+ 23, 16, 23, 14, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 27, 23
};
diff --git a/include/canon_nrsv.h b/include/canon_nrsv.h
index d6042de..6959512 100644
--- a/include/canon_nrsv.h
+++ b/include/canon_nrsv.h
@@ -1,7 +1,10 @@
/******************************************************************************
- * canon_nrsv.h - Versification data for the NRSV system
*
- * Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
+ * canon_nrsv.h - Versification data for the NRSV system
+ *
+ * $Id: canon_nrsv.h 2915 2013-07-23 16:55:54Z chrislit $
+ *
+ * Copyright 2009-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -39,61 +42,134 @@ SWORD_NAMESPACE_START
int vm_nrsv[] = {
// Genesis
- 31, 25, 24, 26, 32, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38, 18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 55, 32, 20, 31, 29, 43, 36, 30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
+ 31, 25, 24, 26, 32, 22, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 38, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 55, 32, 20, 31, 29, 43, 36, 30, 23, 23,
+ 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
// Exodus
- 22, 25, 22, 31, 23, 30, 25, 32, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25, 26, 36, 31, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
+ 22, 25, 22, 31, 23, 30, 25, 32, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 36, 31, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
// Leviticus
- 17, 16, 17, 35, 19, 30, 38, 36, 24, 20, 47, 8, 59, 57, 33, 34, 16, 30, 37, 27, 24, 33, 44, 23, 55, 46, 34,
+ 17, 16, 17, 35, 19, 30, 38, 36, 24, 20,
+ 47, 8, 59, 57, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
// Numbers
- 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 35, 16, 33, 45, 41, 50, 13, 32, 22, 29, 35, 41, 30, 25, 18, 65, 23, 31, 40, 16, 54, 42, 56, 29, 34, 13,
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 16, 33, 45, 41, 50, 13, 32, 22, 29,
+ 35, 41, 30, 25, 18, 65, 23, 31, 40, 16,
+ 54, 42, 56, 29, 34, 13,
// Deuteronomy
- 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 32, 18, 29, 23, 22, 20, 22, 21, 20, 23, 30, 25, 22, 19, 19, 26, 68, 29, 20, 30, 52, 29, 12,
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 32, 18, 29, 23, 22, 20, 22, 21, 20,
+ 23, 30, 25, 22, 19, 19, 26, 68, 29, 20,
+ 30, 52, 29, 12,
// Joshua
- 18, 24, 17, 24, 15, 27, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51, 9, 45, 34, 16, 33,
+ 18, 24, 17, 24, 15, 27, 26, 35, 27, 43,
+ 23, 24, 33, 15, 63, 10, 18, 28, 51, 9,
+ 45, 34, 16, 33,
// Judges
- 36, 23, 31, 24, 31, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30, 48, 25,
+ 36, 23, 31, 24, 31, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 31, 30, 48,
+ 25,
// Ruth
22, 23, 18, 22,
// I Samuel
- 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24, 42, 15, 23, 29, 22, 44, 25, 12, 25, 11, 31, 13,
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 42,
+ 15, 23, 29, 22, 44, 25, 12, 25, 11, 31,
+ 13,
// II Samuel
- 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 33, 43, 26, 22, 51, 39, 25,
+ 27, 32, 39, 12, 25, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 33, 43, 26,
+ 22, 51, 39, 25,
// I Kings
- 53, 46, 28, 34, 18, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21, 43, 29, 53,
+ 53, 46, 28, 34, 18, 38, 51, 66, 28, 29,
+ 43, 33, 34, 31, 34, 34, 24, 46, 21, 43,
+ 29, 53,
// II Kings
- 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 21, 21, 25, 29, 38, 20, 41, 37, 37, 21, 26, 20, 37, 20, 30,
+ 18, 25, 27, 44, 27, 33, 20, 29, 37, 36,
+ 21, 21, 25, 29, 38, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
// I Chronicles
- 54, 55, 24, 43, 26, 81, 40, 40, 44, 14, 47, 40, 14, 17, 29, 43, 27, 17, 19, 8, 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ 54, 55, 24, 43, 26, 81, 40, 40, 44, 14,
+ 47, 40, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
// II Chronicles
- 17, 18, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 22, 15, 19, 14, 19, 34, 11, 37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23,
+ 17, 18, 17, 22, 14, 42, 22, 18, 31, 19,
+ 23, 16, 22, 15, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 27, 23,
// Ezra
11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
// Nehemiah
- 11, 20, 32, 23, 19, 19, 73, 18, 38, 39, 36, 47, 31,
+ 11, 20, 32, 23, 19, 19, 73, 18, 38, 39,
+ 36, 47, 31,
// Esther
22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
// Job
- 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 22, 16, 21, 29, 29, 34, 30, 17, 25, 6, 14, 23, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41, 30, 24, 34, 17,
+ 22, 13, 26, 21, 27, 30, 21, 22, 35, 22,
+ 20, 25, 28, 22, 35, 22, 16, 21, 29, 29,
+ 34, 30, 17, 25, 6, 14, 23, 28, 25, 31,
+ 40, 22, 33, 37, 16, 33, 24, 41, 30, 24,
+ 34, 17,
// Psalms
- 6, 12, 8, 8, 12, 10, 17, 9, 20, 18, 7, 8, 6, 7, 5, 11, 15, 50, 14, 9, 13, 31, 6, 10, 22, 12, 14, 9, 11, 12, 24, 11, 22, 22, 28, 12, 40, 22, 13, 17, 13, 11, 5, 26, 17, 11, 9, 14, 20, 23, 19, 9, 6, 7, 23, 13, 11, 11, 17, 12, 8, 12, 11, 10, 13, 20, 7, 35, 36, 5, 24, 20, 28, 23, 10, 12, 20, 72, 13, 19, 16, 8, 18, 12, 13, 17, 7, 18, 52, 17, 16, 15, 5, 23, 11, 13, 12, 9, 9, 5, 8, 28, 22, 35, 45, 48, 43, 13, 31, 7, 10, 10, 9, 8, 18, 19, 2, 29, 176, 7, 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, 3, 18, 3, 3, 21, 26, 9, 8, 24, 13, 10, 7, 12, 15, 21, 10, 20, 14, 9, 6,
+ 6, 12, 8, 8, 12, 10, 17, 9, 20, 18,
+ 7, 8, 6, 7, 5, 11, 15, 50, 14, 9,
+ 13, 31, 6, 10, 22, 12, 14, 9, 11, 12,
+ 24, 11, 22, 22, 28, 12, 40, 22, 13, 17,
+ 13, 11, 5, 26, 17, 11, 9, 14, 20, 23,
+ 19, 9, 6, 7, 23, 13, 11, 11, 17, 12,
+ 8, 12, 11, 10, 13, 20, 7, 35, 36, 5,
+ 24, 20, 28, 23, 10, 12, 20, 72, 13, 19,
+ 16, 8, 18, 12, 13, 17, 7, 18, 52, 17,
+ 16, 15, 5, 23, 11, 13, 12, 9, 9, 5,
+ 8, 28, 22, 35, 45, 48, 43, 13, 31, 7,
+ 10, 10, 9, 8, 18, 19, 2, 29, 176, 7,
+ 8, 9, 4, 8, 5, 6, 5, 6, 8, 8,
+ 3, 18, 3, 3, 21, 26, 9, 8, 24, 13,
+ 10, 7, 12, 15, 21, 10, 20, 14, 9, 6,
// Proverbs
- 33, 22, 35, 27, 23, 35, 27, 36, 18, 32, 31, 28, 25, 35, 33, 33, 28, 24, 29, 30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
+ 33, 22, 35, 27, 23, 35, 27, 36, 18, 32,
+ 31, 28, 25, 35, 33, 33, 28, 24, 29, 30,
+ 31, 29, 35, 34, 28, 28, 27, 28, 27, 33,
+ 31,
// Ecclesiastes
- 18, 26, 22, 16, 20, 12, 29, 17, 18, 20, 10, 14,
+ 18, 26, 22, 16, 20, 12, 29, 17, 18, 20,
+ 10, 14,
// Song of Solomon
17, 17, 11, 16, 16, 13, 13, 14,
// Isaiah
- 31, 22, 26, 6, 30, 13, 25, 22, 21, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6, 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8, 31, 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21, 14, 21, 22, 11, 12, 19, 12, 25, 24,
+ 31, 22, 26, 6, 30, 13, 25, 22, 21, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 25, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 19, 12, 25, 24,
// Jeremiah
- 19, 37, 25, 31, 31, 30, 34, 22, 26, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15, 18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 21, 28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
+ 19, 37, 25, 31, 31, 30, 34, 22, 26, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 40, 10, 38, 24, 22, 17, 32, 24,
+ 40, 44, 26, 22, 19, 32, 21, 28, 18, 16,
+ 18, 22, 13, 30, 5, 28, 7, 47, 39, 46,
+ 64, 34,
// Lamentations
22, 22, 66, 22, 22,
// Ezekiel
- 28, 10, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14, 49, 32, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28, 23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
+ 28, 10, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 49,
+ 32, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
// Daniel
- 21, 49, 30, 37, 31, 28, 28, 27, 27, 21, 45, 13,
+ 21, 49, 30, 37, 31, 28, 28, 27, 27, 21,
+ 45, 13,
// Hosea
- 11, 23, 5, 19, 15, 11, 16, 14, 17, 15, 12, 14, 16, 9,
+ 11, 23, 5, 19, 15, 11, 16, 14, 17, 15,
+ 12, 14, 16, 9,
// Joel
20, 32, 21,
// Amos
@@ -113,25 +189,38 @@ int vm_nrsv[] = {
// Haggai
15, 23,
// Zechariah
- 21, 13, 10, 14, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
+ 21, 13, 10, 14, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
// Malachi
14, 17, 18, 6,
// Matthew
- 25, 23, 17, 25, 48, 34, 29, 34, 38, 42, 30, 50, 58, 36, 39, 28, 27, 35, 30, 34, 46, 46, 39, 51, 46, 75, 66, 20,
+ 25, 23, 17, 25, 48, 34, 29, 34, 38, 42,
+ 30, 50, 58, 36, 39, 28, 27, 35, 30, 34,
+ 46, 46, 39, 51, 46, 75, 66, 20,
// Mark
- 45, 28, 35, 41, 43, 56, 37, 38, 50, 52, 33, 44, 37, 72, 47, 20,
+ 45, 28, 35, 41, 43, 56, 37, 38, 50, 52,
+ 33, 44, 37, 72, 47, 20,
// Luke
- 80, 52, 38, 44, 39, 49, 50, 56, 62, 42, 54, 59, 35, 35, 32, 31, 37, 43, 48, 47, 38, 71, 56, 53,
+ 80, 52, 38, 44, 39, 49, 50, 56, 62, 42,
+ 54, 59, 35, 35, 32, 31, 37, 43, 48, 47,
+ 38, 71, 56, 53,
// John
- 51, 25, 36, 54, 47, 71, 53, 59, 41, 42, 57, 50, 38, 31, 27, 33, 26, 40, 42, 31, 25,
+ 51, 25, 36, 54, 47, 71, 53, 59, 41, 42,
+ 57, 50, 38, 31, 27, 33, 26, 40, 42, 31,
+ 25,
// Acts
- 26, 47, 26, 37, 42, 15, 60, 40, 43, 48, 30, 25, 52, 28, 41, 40, 34, 28, 41, 38, 40, 30, 35, 27, 27, 32, 44, 31,
+ 26, 47, 26, 37, 42, 15, 60, 40, 43, 48,
+ 30, 25, 52, 28, 41, 40, 34, 28, 41, 38,
+ 40, 30, 35, 27, 27, 32, 44, 31,
// Romans
- 32, 29, 31, 25, 21, 23, 25, 39, 33, 21, 36, 21, 14, 23, 33, 27,
+ 32, 29, 31, 25, 21, 23, 25, 39, 33, 21,
+ 36, 21, 14, 23, 33, 27,
// I Corinthians
- 31, 16, 23, 21, 13, 20, 40, 13, 27, 33, 34, 31, 13, 40, 58, 24,
+ 31, 16, 23, 21, 13, 20, 40, 13, 27, 33,
+ 34, 31, 13, 40, 58, 24,
// II Corinthians
- 24, 17, 18, 18, 21, 18, 16, 24, 15, 18, 33, 21, 14,
+ 24, 17, 18, 18, 21, 18, 16, 24, 15, 18,
+ 33, 21, 14,
// Galatians
24, 21, 29, 31, 26, 18,
// Ephesians
@@ -153,7 +242,8 @@ int vm_nrsv[] = {
// Philemon
25,
// Hebrews
- 14, 18, 19, 16, 14, 20, 28, 13, 28, 39, 40, 29, 25,
+ 14, 18, 19, 16, 14, 20, 28, 13, 28, 39,
+ 40, 29, 25,
// James
27, 26, 18, 17, 20,
// I Peter
@@ -169,7 +259,9 @@ int vm_nrsv[] = {
// Jude
25,
// Revelation of John
- 20, 29, 22, 11, 14, 17, 17, 13, 21, 11, 19, 18, 18, 20, 8, 21, 18, 24, 21, 15, 27, 21
+ 20, 29, 22, 11, 14, 17, 17, 13, 21, 11,
+ 19, 18, 18, 20, 8, 21, 18, 24, 21, 15,
+ 27, 21
};
diff --git a/include/canon_nrsva.h b/include/canon_nrsva.h
index 47ada7d..3a4c39a 100644
--- a/include/canon_nrsva.h
+++ b/include/canon_nrsva.h
@@ -1,7 +1,10 @@
/******************************************************************************
- * canon_nrsva.h - Versification data for the NRSVA system
*
- * Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
+ * canon_nrsva.h - Versification data for the NRSVA system
+ *
+ * $Id: canon_nrsva.h 2915 2013-07-23 16:55:54Z chrislit $
+ *
+ * Copyright 2009-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -21,7 +24,6 @@
SWORD_NAMESPACE_START
-
// Versification system: NRSVA
// Book order: Gen Exod Lev Num Deut Josh Judg Ruth 1Sam 2Sam 1Kgs 2Kgs 1Chr 2Chr Ezra Neh Esth Job Ps Prov Eccl Song Isa Jer Lam Ezek Dan Hos Joel Amos Obad Jonah Mic Nah Hab Zeph Hag Zech Mal Tob Jdt EsthGr Wis Sir Bar PrAzar Sus Bel 1Macc 2Macc 1Esd PrMan AddPs 3Macc 2Esd 4Macc Matt Mark Luke John Acts Rom 1Cor 2Cor Gal Eph Phil Col 1Thess 2Thess 1Tim 2Tim Titus Phlm Heb Jas 1Pet 2Pet 1John 2John 3John Jude Rev
@@ -97,61 +99,134 @@ struct sbook otbooks_nrsva[] = {
int vm_nrsva[] = {
// Genesis
- 31, 25, 24, 26, 32, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38, 18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 55, 32, 20, 31, 29, 43, 36, 30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
+ 31, 25, 24, 26, 32, 22, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 38, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 55, 32, 20, 31, 29, 43, 36, 30, 23, 23,
+ 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
// Exodus
- 22, 25, 22, 31, 23, 30, 25, 32, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25, 26, 36, 31, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
+ 22, 25, 22, 31, 23, 30, 25, 32, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 36, 31, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
// Leviticus
- 17, 16, 17, 35, 19, 30, 38, 36, 24, 20, 47, 8, 59, 57, 33, 34, 16, 30, 37, 27, 24, 33, 44, 23, 55, 46, 34,
+ 17, 16, 17, 35, 19, 30, 38, 36, 24, 20,
+ 47, 8, 59, 57, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
// Numbers
- 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 35, 16, 33, 45, 41, 50, 13, 32, 22, 29, 35, 41, 30, 25, 18, 65, 23, 31, 40, 16, 54, 42, 56, 29, 34, 13,
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 16, 33, 45, 41, 50, 13, 32, 22, 29,
+ 35, 41, 30, 25, 18, 65, 23, 31, 40, 16,
+ 54, 42, 56, 29, 34, 13,
// Deuteronomy
- 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 32, 18, 29, 23, 22, 20, 22, 21, 20, 23, 30, 25, 22, 19, 19, 26, 68, 29, 20, 30, 52, 29, 12,
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 32, 18, 29, 23, 22, 20, 22, 21, 20,
+ 23, 30, 25, 22, 19, 19, 26, 68, 29, 20,
+ 30, 52, 29, 12,
// Joshua
- 18, 24, 17, 24, 15, 27, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51, 9, 45, 34, 16, 33,
+ 18, 24, 17, 24, 15, 27, 26, 35, 27, 43,
+ 23, 24, 33, 15, 63, 10, 18, 28, 51, 9,
+ 45, 34, 16, 33,
// Judges
- 36, 23, 31, 24, 31, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30, 48, 25,
+ 36, 23, 31, 24, 31, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 31, 30, 48,
+ 25,
// Ruth
22, 23, 18, 22,
// I Samuel
- 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24, 42, 15, 23, 29, 22, 44, 25, 12, 25, 11, 31, 13,
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 42,
+ 15, 23, 29, 22, 44, 25, 12, 25, 11, 31,
+ 13,
// II Samuel
- 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 33, 43, 26, 22, 51, 39, 25,
+ 27, 32, 39, 12, 25, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 33, 43, 26,
+ 22, 51, 39, 25,
// I Kings
- 53, 46, 28, 34, 18, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21, 43, 29, 53,
+ 53, 46, 28, 34, 18, 38, 51, 66, 28, 29,
+ 43, 33, 34, 31, 34, 34, 24, 46, 21, 43,
+ 29, 53,
// II Kings
- 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 21, 21, 25, 29, 38, 20, 41, 37, 37, 21, 26, 20, 37, 20, 30,
+ 18, 25, 27, 44, 27, 33, 20, 29, 37, 36,
+ 21, 21, 25, 29, 38, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
// I Chronicles
- 54, 55, 24, 43, 26, 81, 40, 40, 44, 14, 47, 40, 14, 17, 29, 43, 27, 17, 19, 8, 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ 54, 55, 24, 43, 26, 81, 40, 40, 44, 14,
+ 47, 40, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
// II Chronicles
- 17, 18, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 22, 15, 19, 14, 19, 34, 11, 37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23,
+ 17, 18, 17, 22, 14, 42, 22, 18, 31, 19,
+ 23, 16, 22, 15, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 27, 23,
// Ezra
11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
// Nehemiah
- 11, 20, 32, 23, 19, 19, 73, 18, 38, 39, 36, 47, 31,
+ 11, 20, 32, 23, 19, 19, 73, 18, 38, 39,
+ 36, 47, 31,
// Esther
22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
// Job
- 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 22, 16, 21, 29, 29, 34, 30, 17, 25, 6, 14, 23, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41, 30, 24, 34, 17,
+ 22, 13, 26, 21, 27, 30, 21, 22, 35, 22,
+ 20, 25, 28, 22, 35, 22, 16, 21, 29, 29,
+ 34, 30, 17, 25, 6, 14, 23, 28, 25, 31,
+ 40, 22, 33, 37, 16, 33, 24, 41, 30, 24,
+ 34, 17,
// Psalms
- 6, 12, 8, 8, 12, 10, 17, 9, 20, 18, 7, 8, 6, 7, 5, 11, 15, 50, 14, 9, 13, 31, 6, 10, 22, 12, 14, 9, 11, 12, 24, 11, 22, 22, 28, 12, 40, 22, 13, 17, 13, 11, 5, 26, 17, 11, 9, 14, 20, 23, 19, 9, 6, 7, 23, 13, 11, 11, 17, 12, 8, 12, 11, 10, 13, 20, 7, 35, 36, 5, 24, 20, 28, 23, 10, 12, 20, 72, 13, 19, 16, 8, 18, 12, 13, 17, 7, 18, 52, 17, 16, 15, 5, 23, 11, 13, 12, 9, 9, 5, 8, 28, 22, 35, 45, 48, 43, 13, 31, 7, 10, 10, 9, 8, 18, 19, 2, 29, 176, 7, 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, 3, 18, 3, 3, 21, 26, 9, 8, 24, 13, 10, 7, 12, 15, 21, 10, 20, 14, 9, 6,
+ 6, 12, 8, 8, 12, 10, 17, 9, 20, 18,
+ 7, 8, 6, 7, 5, 11, 15, 50, 14, 9,
+ 13, 31, 6, 10, 22, 12, 14, 9, 11, 12,
+ 24, 11, 22, 22, 28, 12, 40, 22, 13, 17,
+ 13, 11, 5, 26, 17, 11, 9, 14, 20, 23,
+ 19, 9, 6, 7, 23, 13, 11, 11, 17, 12,
+ 8, 12, 11, 10, 13, 20, 7, 35, 36, 5,
+ 24, 20, 28, 23, 10, 12, 20, 72, 13, 19,
+ 16, 8, 18, 12, 13, 17, 7, 18, 52, 17,
+ 16, 15, 5, 23, 11, 13, 12, 9, 9, 5,
+ 8, 28, 22, 35, 45, 48, 43, 13, 31, 7,
+ 10, 10, 9, 8, 18, 19, 2, 29, 176, 7,
+ 8, 9, 4, 8, 5, 6, 5, 6, 8, 8,
+ 3, 18, 3, 3, 21, 26, 9, 8, 24, 13,
+ 10, 7, 12, 15, 21, 10, 20, 14, 9, 6,
// Proverbs
- 33, 22, 35, 27, 23, 35, 27, 36, 18, 32, 31, 28, 25, 35, 33, 33, 28, 24, 29, 30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
+ 33, 22, 35, 27, 23, 35, 27, 36, 18, 32,
+ 31, 28, 25, 35, 33, 33, 28, 24, 29, 30,
+ 31, 29, 35, 34, 28, 28, 27, 28, 27, 33,
+ 31,
// Ecclesiastes
- 18, 26, 22, 16, 20, 12, 29, 17, 18, 20, 10, 14,
+ 18, 26, 22, 16, 20, 12, 29, 17, 18, 20,
+ 10, 14,
// Song of Solomon
17, 17, 11, 16, 16, 13, 13, 14,
// Isaiah
- 31, 22, 26, 6, 30, 13, 25, 22, 21, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6, 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8, 31, 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21, 14, 21, 22, 11, 12, 19, 12, 25, 24,
+ 31, 22, 26, 6, 30, 13, 25, 22, 21, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 25, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 19, 12, 25, 24,
// Jeremiah
- 19, 37, 25, 31, 31, 30, 34, 22, 26, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15, 18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 21, 28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
+ 19, 37, 25, 31, 31, 30, 34, 22, 26, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 40, 10, 38, 24, 22, 17, 32, 24,
+ 40, 44, 26, 22, 19, 32, 21, 28, 18, 16,
+ 18, 22, 13, 30, 5, 28, 7, 47, 39, 46,
+ 64, 34,
// Lamentations
22, 22, 66, 22, 22,
// Ezekiel
- 28, 10, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14, 49, 32, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28, 23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
+ 28, 10, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 49,
+ 32, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
// Daniel
- 21, 49, 30, 37, 31, 28, 28, 27, 27, 21, 45, 13,
+ 21, 49, 30, 37, 31, 28, 28, 27, 27, 21,
+ 45, 13,
// Hosea
- 11, 23, 5, 19, 15, 11, 16, 14, 17, 15, 12, 14, 16, 9,
+ 11, 23, 5, 19, 15, 11, 16, 14, 17, 15,
+ 12, 14, 16, 9,
// Joel
20, 32, 21,
// Amos
@@ -171,19 +246,29 @@ int vm_nrsva[] = {
// Haggai
15, 23,
// Zechariah
- 21, 13, 10, 14, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
+ 21, 13, 10, 14, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
// Malachi
14, 17, 18, 6,
// Tobit
- 22, 14, 17, 21, 22, 18, 16, 21, 6, 13, 18, 22, 17, 15,
+ 22, 14, 17, 21, 22, 18, 16, 21, 6, 13,
+ 18, 22, 17, 15,
// Judith
- 16, 28, 10, 15, 24, 21, 32, 36, 14, 23, 23, 20, 20, 19, 14, 25,
+ 16, 28, 10, 15, 24, 21, 32, 36, 14, 23,
+ 23, 20, 20, 19, 14, 25,
// Esther (Greek)
- 22, 23, 15, 17, 14, 14, 10, 17, 32, 13, 12, 6, 18, 19, 16, 24,
+ 22, 23, 15, 17, 14, 14, 10, 17, 32, 13,
+ 12, 6, 18, 19, 16, 24,
// Wisdom
- 16, 24, 19, 20, 23, 25, 30, 21, 18, 21, 26, 27, 19, 31, 19, 29, 21, 25, 22,
+ 16, 24, 19, 20, 23, 25, 30, 21, 18, 21,
+ 26, 27, 19, 31, 19, 29, 21, 25, 22,
// Sirach
- 30, 18, 31, 31, 15, 37, 36, 19, 18, 31, 34, 18, 26, 27, 20, 30, 32, 33, 30, 31, 28, 27, 27, 34, 26, 29, 30, 26, 28, 25, 31, 24, 33, 31, 26, 31, 31, 34, 35, 30, 22, 25, 33, 23, 26, 20, 25, 25, 16, 29, 30,
+ 30, 18, 31, 31, 15, 37, 36, 19, 18, 31,
+ 34, 18, 26, 27, 20, 30, 32, 33, 30, 31,
+ 28, 27, 27, 34, 26, 29, 30, 26, 28, 25,
+ 31, 24, 33, 31, 26, 31, 31, 34, 35, 30,
+ 22, 25, 33, 23, 26, 20, 25, 25, 16, 29,
+ 30,
// Baruch
22, 35, 37, 37, 9, 73,
// Prayer of Azariah
@@ -193,9 +278,11 @@ int vm_nrsva[] = {
// Bel and the Dragon
42,
// I Maccabees
- 64, 70, 60, 61, 68, 63, 50, 32, 73, 89, 74, 53, 53, 49, 41, 24,
+ 64, 70, 60, 61, 68, 63, 50, 32, 73, 89,
+ 74, 53, 53, 49, 41, 24,
// II Maccabees
- 36, 32, 40, 50, 27, 31, 42, 36, 29, 38, 38, 45, 26, 46, 39,
+ 36, 32, 40, 50, 27, 31, 42, 36, 29, 38,
+ 38, 45, 26, 46, 39,
// I Esdras
58, 30, 24, 63, 73, 34, 15, 96, 55,
// Prayer of Manasses
@@ -205,25 +292,39 @@ int vm_nrsva[] = {
// III Maccabees
29, 33, 30, 21, 51, 41, 23,
// II Esdras
- 40, 48, 36, 52, 56, 59, 140, 63, 47, 59, 46, 51, 58, 48, 63, 78,
+ 40, 48, 36, 52, 56, 59, 140, 63, 47, 59,
+ 46, 51, 58, 48, 63, 78,
// IV Maccabees
- 35, 24, 21, 26, 38, 35, 23, 29, 32, 21, 27, 19, 27, 20, 32, 25, 24, 24,
+ 35, 24, 21, 26, 38, 35, 23, 29, 32, 21,
+ 27, 19, 27, 20, 32, 25, 24, 24,
// Matthew
- 25, 23, 17, 25, 48, 34, 29, 34, 38, 42, 30, 50, 58, 36, 39, 28, 27, 35, 30, 34, 46, 46, 39, 51, 46, 75, 66, 20,
+ 25, 23, 17, 25, 48, 34, 29, 34, 38, 42,
+ 30, 50, 58, 36, 39, 28, 27, 35, 30, 34,
+ 46, 46, 39, 51, 46, 75, 66, 20,
// Mark
- 45, 28, 35, 41, 43, 56, 37, 38, 50, 52, 33, 44, 37, 72, 47, 20,
+ 45, 28, 35, 41, 43, 56, 37, 38, 50, 52,
+ 33, 44, 37, 72, 47, 20,
// Luke
- 80, 52, 38, 44, 39, 49, 50, 56, 62, 42, 54, 59, 35, 35, 32, 31, 37, 43, 48, 47, 38, 71, 56, 53,
+ 80, 52, 38, 44, 39, 49, 50, 56, 62, 42,
+ 54, 59, 35, 35, 32, 31, 37, 43, 48, 47,
+ 38, 71, 56, 53,
// John
- 51, 25, 36, 54, 47, 71, 53, 59, 41, 42, 57, 50, 38, 31, 27, 33, 26, 40, 42, 31, 25,
+ 51, 25, 36, 54, 47, 71, 53, 59, 41, 42,
+ 57, 50, 38, 31, 27, 33, 26, 40, 42, 31,
+ 25,
// Acts
- 26, 47, 26, 37, 42, 15, 60, 40, 43, 48, 30, 25, 52, 28, 41, 40, 34, 28, 41, 38, 40, 30, 35, 27, 27, 32, 44, 31,
+ 26, 47, 26, 37, 42, 15, 60, 40, 43, 48,
+ 30, 25, 52, 28, 41, 40, 34, 28, 41, 38,
+ 40, 30, 35, 27, 27, 32, 44, 31,
// Romans
- 32, 29, 31, 25, 21, 23, 25, 39, 33, 21, 36, 21, 14, 23, 33, 27,
+ 32, 29, 31, 25, 21, 23, 25, 39, 33, 21,
+ 36, 21, 14, 23, 33, 27,
// I Corinthians
- 31, 16, 23, 21, 13, 20, 40, 13, 27, 33, 34, 31, 13, 40, 58, 24,
+ 31, 16, 23, 21, 13, 20, 40, 13, 27, 33,
+ 34, 31, 13, 40, 58, 24,
// II Corinthians
- 24, 17, 18, 18, 21, 18, 16, 24, 15, 18, 33, 21, 14,
+ 24, 17, 18, 18, 21, 18, 16, 24, 15, 18,
+ 33, 21, 14,
// Galatians
24, 21, 29, 31, 26, 18,
// Ephesians
@@ -245,7 +346,8 @@ int vm_nrsva[] = {
// Philemon
25,
// Hebrews
- 14, 18, 19, 16, 14, 20, 28, 13, 28, 39, 40, 29, 25,
+ 14, 18, 19, 16, 14, 20, 28, 13, 28, 39,
+ 40, 29, 25,
// James
27, 26, 18, 17, 20,
// I Peter
@@ -261,7 +363,9 @@ int vm_nrsva[] = {
// Jude
25,
// Revelation of John
- 20, 29, 22, 11, 14, 17, 17, 13, 21, 11, 19, 18, 18, 20, 8, 21, 18, 24, 21, 15, 27, 21
+ 20, 29, 22, 11, 14, 17, 17, 13, 21, 11,
+ 19, 18, 18, 20, 8, 21, 18, 24, 21, 15,
+ 27, 21
};
diff --git a/include/canon_null.h b/include/canon_null.h
index ade2276..03c72da 100644
--- a/include/canon_null.h
+++ b/include/canon_null.h
@@ -1,7 +1,10 @@
/******************************************************************************
- * canon_null.h - Versification data for the null system
*
- * Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
+ * canon_null.h - Versification data for the null system
+ *
+ * $Id: canon_null.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2009-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/canon_orthodox.h b/include/canon_orthodox.h
new file mode 100644
index 0000000..dad23ca
--- /dev/null
+++ b/include/canon_orthodox.h
@@ -0,0 +1,370 @@
+/******************************************************************************
+ *
+ * canon_orthodox.h - Versification data for the Orthodox system
+ *
+ * $Id: canon_orthodox.h 2936 2013-08-02 18:00:19Z chrislit $
+ *
+ * Copyright 2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ */
+
+#ifndef CANON_ORTHODOX_H
+#define CANON_ORTHODOX_H
+
+SWORD_NAMESPACE_START
+
+
+// Versification system: Orthodox
+// Book order: Gen Exod Lev Num Deut Josh Judg Ruth 1Sam 2Sam 1Kgs 2Kgs 1Chr 2Chr 1Esd Ezra Neh Tob Jdt Esth 1Macc 2Macc 3Macc Ps PrMan Job Prov Eccl Song Wis Sir Hos Amos Mic Joel Obad Jonah Nah Hab Zeph Hag Zech Mal Isa Jer Bar Lam EpJer Ezek Sus Dan Bel 4Macc Matt Mark Luke John Acts Rom 1Cor 2Cor Gal Eph Phil Col 1Thess 2Thess 1Tim 2Tim Titus Phlm Heb Jas 1Pet 2Pet 1John 2John 3John Jude Rev
+
+// This versification system is based on the LXX versification system, q.v. for more information on the method of its compilation.
+// However, this versification system differs from the LXX system in that the book order follows that seen in modern Orthodox Bibles and books seen in some editions of the LXX but absent from modern Orthodox Bibles have been omitted.
+
+
+/******************************************************************************
+ * [on]tbooks_orthodox - initialize static instance for all canonical
+ * text names and chapmax
+ */
+struct sbook otbooks_orthodox[] = {
+ {"Genesis", "Gen", "Gen", 50},
+ {"Exodus", "Exod", "Exod", 40},
+ {"Leviticus", "Lev", "Lev", 27},
+ {"Numbers", "Num", "Num", 36},
+ {"Deuteronomy", "Deut", "Deut", 34},
+ {"Joshua", "Josh", "Josh", 24},
+ {"Judges", "Judg", "Judg", 21},
+ {"Ruth", "Ruth", "Ruth", 4},
+ {"I Samuel", "1Sam", "1Sam", 31},
+ {"II Samuel", "2Sam", "2Sam", 24},
+ {"I Kings", "1Kgs", "1Kgs", 22},
+ {"II Kings", "2Kgs", "2Kgs", 25},
+ {"I Chronicles", "1Chr", "1Chr", 29},
+ {"II Chronicles", "2Chr", "2Chr", 36},
+ {"I Esdras", "1Esd", "1Esd", 9},
+ {"Ezra", "Ezra", "Ezra", 10},
+ {"Nehemiah", "Neh", "Neh", 13},
+ {"Tobit", "Tob", "Tob", 14},
+ {"Judith", "Jdt", "Jdt", 16},
+ {"Esther", "Esth", "Esth", 16},
+ {"I Maccabees", "1Macc", "1Macc", 16},
+ {"II Maccabees", "2Macc", "2Macc", 15},
+ {"III Maccabees", "3Macc", "3Macc", 7},
+ {"Psalms", "Ps", "Ps", 151},
+ {"Prayer of Manasses", "PrMan", "PrMan", 1},
+ {"Job", "Job", "Job", 42},
+ {"Proverbs", "Prov", "Prov", 31},
+ {"Ecclesiastes", "Eccl", "Eccl", 12},
+ {"Song of Solomon", "Song", "Song", 8},
+ {"Wisdom", "Wis", "Wis", 19},
+ {"Sirach", "Sir", "Sir", 51},
+ {"Hosea", "Hos", "Hos", 14},
+ {"Amos", "Amos", "Amos", 9},
+ {"Micah", "Mic", "Mic", 7},
+ {"Joel", "Joel", "Joel", 4},
+ {"Obadiah", "Obad", "Obad", 1},
+ {"Jonah", "Jonah", "Jonah", 4},
+ {"Nahum", "Nah", "Nah", 3},
+ {"Habakkuk", "Hab", "Hab", 3},
+ {"Zephaniah", "Zeph", "Zeph", 3},
+ {"Haggai", "Hag", "Hag", 2},
+ {"Zechariah", "Zech", "Zech", 14},
+ {"Malachi", "Mal", "Mal", 4},
+ {"Isaiah", "Isa", "Isa", 66},
+ {"Jeremiah", "Jer", "Jer", 52},
+ {"Baruch", "Bar", "Bar", 5},
+ {"Lamentations", "Lam", "Lam", 5},
+ {"Epistle of Jeremiah", "EpJer", "EpJer", 1},
+ {"Ezekiel", "Ezek", "Ezek", 48},
+ {"Susanna", "Sus", "Sus", 1},
+ {"Daniel", "Dan", "Dan", 12},
+ {"Bel and the Dragon", "Bel", "Bel", 1},
+ {"IV Maccabees", "4Macc", "4Macc", 18},
+ {"", "", "", 0}
+};
+
+// for ntbooks_orthodox, use ntbooks
+
+/******************************************************************************
+ * Maximum verses per chapter
+ */
+int vm_orthodox[] = {
+ // Genesis
+ 31, 25, 25, 26, 32, 23, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 39, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 55, 33, 20, 31, 29, 44, 36, 30, 23, 23,
+ 57, 39, 34, 34, 28, 34, 31, 22, 33, 26,
+ // Exodus
+ 22, 25, 22, 31, 23, 30, 29, 32, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 37, 31, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 40, 21, 29, 23, 38,
+ // Leviticus
+ 17, 16, 17, 35, 26, 40, 38, 36, 24, 20,
+ 47, 8, 59, 57, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
+ // Numbers
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 16, 34, 45, 41, 50, 28, 32, 22, 29,
+ 35, 41, 30, 25, 18, 65, 23, 31, 40, 17,
+ 54, 42, 56, 29, 34, 13,
+ // Deuteronomy
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 32, 19, 29, 23, 22, 20, 22, 21, 20,
+ 23, 30, 26, 24, 19, 19, 27, 69, 29, 20,
+ 30, 52, 29, 12,
+ // Joshua
+ 18, 24, 17, 24, 16, 27, 26, 35, 33, 43,
+ 23, 24, 33, 15, 64, 10, 18, 28, 54, 9,
+ 49, 34, 16, 36,
+ // Judges
+ 36, 23, 31, 24, 32, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 32, 30, 48,
+ 25,
+ // Ruth
+ 22, 23, 18, 22,
+ // I Samuel
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 43,
+ 16, 23, 29, 23, 44, 25, 12, 25, 11, 32,
+ 13,
+ // II Samuel
+ 27, 32, 39, 12, 26, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 33, 44, 26,
+ 22, 51, 41, 25,
+ // I Kings
+ 53, 71, 39, 34, 32, 38, 51, 66, 28, 33,
+ 44, 54, 34, 31, 34, 42, 24, 46, 21, 43,
+ 43, 54,
+ // II Kings
+ 22, 25, 27, 44, 27, 35, 20, 29, 37, 36,
+ 21, 22, 25, 29, 38, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
+ // I Chronicles
+ 54, 55, 24, 43, 41, 81, 40, 40, 44, 14,
+ 47, 41, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ // II Chronicles
+ 18, 18, 17, 23, 14, 42, 22, 18, 31, 19,
+ 23, 16, 23, 15, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 31, 31,
+ // I Esdras
+ 58, 30, 24, 63, 73, 34, 15, 96, 55,
+ // Ezra
+ 11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
+ // Nehemiah
+ 11, 20, 37, 23, 19, 19, 73, 18, 38, 40,
+ 36, 47, 31,
+ // Tobit
+ 22, 14, 17, 21, 23, 19, 18, 21, 6, 14,
+ 19, 22, 19, 15,
+ // Judith
+ 16, 28, 10, 15, 24, 21, 32, 36, 14, 23,
+ 23, 20, 20, 19, 14, 25,
+ // Esther
+ 22, 23, 15, 17, 22, 14, 10, 17, 35, 13,
+ 17, 7, 30, 19, 24, 24,
+ // I Maccabees
+ 64, 70, 60, 61, 68, 63, 50, 32, 73, 89,
+ 74, 53, 54, 49, 41, 24,
+ // II Maccabees
+ 36, 32, 40, 50, 27, 31, 42, 36, 29, 38,
+ 38, 46, 26, 46, 39,
+ // III Maccabees
+ 29, 33, 30, 21, 51, 41, 23,
+ // Psalms
+ 6, 13, 9, 9, 13, 11, 18, 10, 40, 8,
+ 9, 6, 7, 6, 11, 15, 51, 15, 10, 14,
+ 32, 6, 10, 22, 12, 14, 9, 11, 13, 25,
+ 11, 22, 23, 28, 13, 40, 23, 14, 18, 14,
+ 12, 6, 27, 18, 12, 10, 15, 21, 23, 21,
+ 11, 7, 9, 24, 14, 12, 12, 19, 14, 9,
+ 13, 12, 11, 14, 20, 8, 36, 37, 7, 24,
+ 20, 28, 23, 11, 13, 21, 72, 13, 20, 17,
+ 8, 19, 13, 14, 17, 7, 19, 53, 17, 16,
+ 16, 5, 23, 11, 13, 12, 9, 9, 5, 8,
+ 29, 22, 36, 45, 48, 43, 14, 31, 7, 10,
+ 10, 9, 26, 18, 19, 2, 29, 176, 7, 8,
+ 9, 4, 8, 5, 7, 5, 6, 8, 8, 3,
+ 18, 3, 3, 21, 26, 9, 8, 24, 15, 10,
+ 8, 12, 15, 22, 10, 11, 20, 14, 9, 6,
+ 7,
+ // Prayer of Manasses
+ 15,
+ // Job
+ 22, 18, 26, 21, 27, 30, 22, 22, 35, 22,
+ 20, 25, 28, 22, 35, 23, 16, 21, 29, 29,
+ 34, 30, 17, 25, 6, 14, 23, 28, 25, 31,
+ 40, 22, 33, 37, 16, 34, 24, 41, 35, 32,
+ 34, 22,
+ // Proverbs
+ 35, 23, 38, 28, 23, 40, 28, 37, 25, 33,
+ 31, 31, 27, 36, 38, 33, 30, 24, 29, 30,
+ 31, 31, 36, 77, 31, 29, 29, 30, 49, 35,
+ 31,
+ // Ecclesiastes
+ 18, 26, 22, 17, 20, 12, 30, 17, 18, 20,
+ 10, 14,
+ // Song of Solomon
+ 17, 17, 11, 16, 17, 13, 14, 15,
+ // Wisdom
+ 16, 25, 19, 20, 24, 27, 30, 21, 19, 21,
+ 27, 27, 19, 31, 19, 29, 21, 25, 22,
+ // Sirach
+ 30, 18, 31, 31, 15, 37, 36, 19, 18, 31,
+ 34, 18, 26, 27, 20, 30, 32, 33, 31, 32,
+ 28, 27, 28, 34, 26, 29, 30, 26, 28, 40,
+ 31, 26, 33, 31, 26, 31, 31, 35, 35, 30,
+ 27, 27, 33, 24, 26, 20, 25, 25, 16, 29,
+ 30,
+ // Hosea
+ 11, 25, 5, 19, 15, 12, 16, 14, 17, 15,
+ 12, 15, 16, 10,
+ // Amos
+ 15, 16, 15, 13, 27, 15, 17, 14, 15,
+ // Micah
+ 16, 13, 12, 14, 15, 16, 20,
+ // Joel
+ 20, 32, 21, 21,
+ // Obadiah
+ 21,
+ // Jonah
+ 17, 11, 10, 11,
+ // Nahum
+ 15, 14, 19,
+ // Habakkuk
+ 17, 20, 19,
+ // Zephaniah
+ 18, 15, 21,
+ // Haggai
+ 15, 24,
+ // Zechariah
+ 21, 17, 11, 14, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
+ // Malachi
+ 14, 17, 24, 6,
+ // Isaiah
+ 31, 22, 26, 6, 30, 13, 25, 23, 21, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 26, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 20, 12, 25, 24,
+ // Jeremiah
+ 19, 37, 25, 31, 31, 30, 34, 23, 26, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 42, 10, 39, 28, 46, 64, 31, 33,
+ 47, 44, 24, 22, 19, 32, 24, 40, 44, 26,
+ 22, 22, 32, 30, 28, 28, 16, 44, 38, 46,
+ 63, 34,
+ // Baruch
+ 22, 35, 38, 37, 9,
+ // Lamentations
+ 22, 22, 66, 22, 22,
+ // Epistle of Jeremiah
+ 73,
+ // Ezekiel
+ 28, 13, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 49,
+ 37, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
+ // Susanna
+ 64,
+ // Daniel
+ 21, 49, 100, 37, 31, 29, 28, 27, 27, 21,
+ 45, 13,
+ // Bel and the Dragon
+ 42,
+ // IV Maccabees
+ 35, 24, 21, 26, 38, 35, 25, 29, 32, 21,
+ 27, 20, 27, 20, 32, 25, 24, 24,
+ // Matthew
+ 25, 23, 17, 25, 48, 34, 29, 34, 38, 42,
+ 30, 50, 58, 36, 39, 28, 27, 35, 30, 34,
+ 46, 46, 39, 51, 46, 75, 66, 20,
+ // Mark
+ 45, 28, 35, 41, 43, 56, 37, 38, 50, 52,
+ 33, 44, 37, 72, 47, 20,
+ // Luke
+ 80, 52, 38, 44, 39, 49, 50, 56, 62, 42,
+ 54, 59, 35, 35, 32, 31, 37, 43, 48, 47,
+ 38, 71, 56, 53,
+ // John
+ 52, 25, 36, 54, 47, 71, 53, 59, 41, 42,
+ 57, 50, 38, 31, 27, 33, 26, 40, 42, 31,
+ 25,
+ // Acts
+ 26, 47, 26, 37, 42, 15, 60, 40, 43, 48,
+ 30, 25, 52, 28, 41, 40, 34, 28, 41, 38,
+ 40, 30, 35, 27, 27, 32, 44, 31,
+ // Romans
+ 32, 29, 31, 25, 21, 23, 25, 39, 33, 21,
+ 36, 21, 14, 26, 33, 27,
+ // I Corinthians
+ 31, 16, 23, 21, 13, 20, 40, 13, 27, 33,
+ 34, 31, 13, 40, 58, 24,
+ // II Corinthians
+ 24, 17, 18, 18, 21, 18, 16, 24, 15, 18,
+ 33, 21, 14,
+ // Galatians
+ 24, 21, 29, 31, 26, 18,
+ // Ephesians
+ 23, 22, 21, 32, 33, 24,
+ // Philippians
+ 30, 30, 21, 23,
+ // Colossians
+ 29, 23, 25, 18,
+ // I Thessalonians
+ 10, 20, 13, 18, 28,
+ // II Thessalonians
+ 12, 17, 18,
+ // I Timothy
+ 20, 15, 16, 16, 25, 21,
+ // II Timothy
+ 18, 26, 17, 22,
+ // Titus
+ 16, 15, 15,
+ // Philemon
+ 25,
+ // Hebrews
+ 14, 18, 19, 16, 14, 20, 28, 13, 28, 39,
+ 40, 29, 25,
+ // James
+ 27, 26, 18, 17, 20,
+ // I Peter
+ 25, 25, 22, 19, 14,
+ // II Peter
+ 21, 22, 18,
+ // I John
+ 10, 29, 24, 21, 21,
+ // II John
+ 13,
+ // III John
+ 15,
+ // Jude
+ 25,
+ // Revelation of John
+ 20, 29, 22, 11, 14, 17, 17, 13, 21, 11,
+ 19, 18, 18, 20, 9, 21, 18, 24, 21, 15,
+ 27, 21
+};
+
+
+SWORD_NAMESPACE_END
+
+
+#endif
diff --git a/include/canon_synodal.h b/include/canon_synodal.h
index 417013b..c153d81 100644
--- a/include/canon_synodal.h
+++ b/include/canon_synodal.h
@@ -1,7 +1,10 @@
/******************************************************************************
- * canon_synodal.h - Versification data for the Synodal system
*
- * Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
+ * canon_synodal.h - Versification data for the Synodal system
+ *
+ * $Id: canon_synodal.h 2915 2013-07-23 16:55:54Z chrislit $
+ *
+ * Copyright 2009-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -128,65 +131,145 @@ struct sbook ntbooks_synodal[] = {
int vm_synodal[] = {
// Genesis
- 31, 25, 24, 26, 32, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38, 18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 55, 32, 20, 31, 29, 43, 36, 30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
+ 31, 25, 24, 26, 32, 22, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 38, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 55, 32, 20, 31, 29, 43, 36, 30, 23, 23,
+ 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
+
// Exodus
- 22, 25, 22, 31, 23, 30, 25, 32, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25, 26, 36, 31, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
+ 22, 25, 22, 31, 23, 30, 25, 32, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 36, 31, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
+
// Leviticus
- 17, 16, 17, 35, 19, 30, 38, 36, 24, 20, 47, 8, 59, 56, 33, 34, 16, 30, 37, 27, 24, 33, 44, 23, 55, 46, 34,
+ 17, 16, 17, 35, 19, 30, 38, 36, 24, 20,
+ 47, 8, 59, 56, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
// Numbers
- 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 35, 15, 34, 45, 41, 50, 13, 32, 22, 29, 35, 41, 30, 25, 18, 65, 23, 31, 39, 17, 54, 42, 56, 29, 34, 13,
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 15, 34, 45, 41, 50, 13, 32, 22, 29,
+ 35, 41, 30, 25, 18, 65, 23, 31, 39, 17,
+ 54, 42, 56, 29, 34, 13,
// Deuteronomy
- 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 32, 18, 29, 23, 22, 20, 22, 21, 20, 23, 30, 25, 22, 19, 19, 26, 68, 29, 20, 30, 52, 29, 12,
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 32, 18, 29, 23, 22, 20, 22, 21, 20,
+ 23, 30, 25, 22, 19, 19, 26, 68, 29, 20,
+ 30, 52, 29, 12,
// Joshua
- 18, 24, 17, 24, 16, 26, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51, 9, 45, 34, 16, 36,
+ 18, 24, 17, 24, 16, 26, 26, 35, 27, 43,
+ 23, 24, 33, 15, 63, 10, 18, 28, 51, 9,
+ 45, 34, 16, 36,
// Judges
- 36, 23, 31, 24, 31, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30, 48, 25,
+ 36, 23, 31, 24, 31, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 31, 30, 48,
+ 25,
// Ruth
22, 23, 18, 22,
// I Samuel
- 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24, 43, 15, 23, 28, 23, 44, 25, 12, 25, 11, 31, 13,
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 43,
+ 15, 23, 28, 23, 44, 25, 12, 25, 11, 31,
+ 13,
// II Samuel
- 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 33, 43, 26, 22, 51, 39, 25,
+ 27, 32, 39, 12, 25, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 33, 43, 26,
+ 22, 51, 39, 25,
// I Kings
- 53, 46, 28, 34, 18, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21, 43, 29, 53,
+ 53, 46, 28, 34, 18, 38, 51, 66, 28, 29,
+ 43, 33, 34, 31, 34, 34, 24, 46, 21, 43,
+ 29, 53,
// II Kings
- 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 21, 21, 25, 29, 38, 20, 41, 37, 37, 21, 26, 20, 37, 20, 30,
+ 18, 25, 27, 44, 27, 33, 20, 29, 37, 36,
+ 21, 21, 25, 29, 38, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
// I Chronicles
- 54, 55, 24, 43, 26, 81, 40, 40, 44, 14, 47, 40, 14, 17, 29, 43, 27, 17, 19, 8, 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ 54, 55, 24, 43, 26, 81, 40, 40, 44, 14,
+ 47, 40, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
// II Chronicles
- 17, 18, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 22, 15, 19, 14, 19, 34, 11, 37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23,
+ 17, 18, 17, 22, 14, 42, 22, 18, 31, 19,
+ 23, 16, 22, 15, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 27, 23,
// Prayer of Manasses
12,
// Ezra
- 11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
+ 11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
+
// Nehemiah
- 11, 20, 32, 23, 19, 19, 73, 18, 38, 39, 36, 47, 31,
+ 11, 20, 32, 23, 19, 19, 73, 18, 38, 39,
+ 36, 47, 31,
// I Esdras
58, 31, 24, 63, 70, 34, 15, 92, 55,
// Tobit
- 22, 14, 17, 21, 22, 18, 17, 21, 6, 13, 18, 22, 18, 15,
+ 22, 14, 17, 21, 22, 18, 17, 21, 6, 13,
+ 18, 22, 18, 15,
// Judith
- 16, 28, 10, 15, 24, 21, 32, 36, 14, 23, 23, 20, 20, 19, 14, 25,
+ 16, 28, 10, 15, 24, 21, 32, 36, 14, 23,
+ 23, 20, 20, 19, 14, 25,
// Esther
- 22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
+ 22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
+
// Job
- 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 22, 16, 21, 29, 29, 34, 30, 17, 25, 6, 14, 23, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41, 35, 27, 26, 17,
+ 22, 13, 26, 21, 27, 30, 21, 22, 35, 22,
+ 20, 25, 28, 22, 35, 22, 16, 21, 29, 29,
+ 34, 30, 17, 25, 6, 14, 23, 28, 25, 31,
+ 40, 22, 33, 37, 16, 33, 24, 41, 35, 27,
+ 26, 17,
// Psalms
- 6, 12, 9, 9, 13, 11, 18, 10, 39, 7, 9, 6, 7, 5, 11, 15, 51, 15, 10, 14, 32, 6, 10, 22, 12, 14, 9, 11, 13, 25, 11, 22, 23, 28, 13, 40, 23, 14, 18, 14, 12, 5, 27, 18, 12, 10, 15, 21, 23, 21, 11, 7, 9, 24, 14, 12, 12, 18, 14, 9, 13, 12, 11, 14, 20, 8, 36, 37, 6, 24, 20, 28, 23, 11, 13, 21, 72, 13, 20, 17, 8, 19, 13, 14, 17, 7, 19, 53, 17, 16, 16, 5, 23, 11, 13, 12, 9, 9, 5, 8, 29, 22, 35, 45, 48, 43, 14, 31, 7, 10, 10, 9, 26, 9, 10, 2, 29, 176, 7, 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, 3, 18, 3, 3, 21, 26, 9, 8, 24, 14, 10, 7, 12, 15, 21, 10, 11, 9, 14, 9, 6, 7,
+ 6, 12, 9, 9, 13, 11, 18, 10, 39, 7,
+ 9, 6, 7, 5, 11, 15, 51, 15, 10, 14,
+ 32, 6, 10, 22, 12, 14, 9, 11, 13, 25,
+ 11, 22, 23, 28, 13, 40, 23, 14, 18, 14,
+ 12, 5, 27, 18, 12, 10, 15, 21, 23, 21,
+ 11, 7, 9, 24, 14, 12, 12, 18, 14, 9,
+ 13, 12, 11, 14, 20, 8, 36, 37, 6, 24,
+ 20, 28, 23, 11, 13, 21, 72, 13, 20, 17,
+ 8, 19, 13, 14, 17, 7, 19, 53, 17, 16,
+ 16, 5, 23, 11, 13, 12, 9, 9, 5, 8,
+ 29, 22, 35, 45, 48, 43, 14, 31, 7, 10,
+ 10, 9, 26, 9, 10, 2, 29, 176, 7, 8,
+ 9, 4, 8, 5, 6, 5, 6, 8, 8, 3,
+ 18, 3, 3, 21, 26, 9, 8, 24, 14, 10,
+ 7, 12, 15, 21, 10, 11, 9, 14, 9, 6,
+ 7,
// Proverbs
- 33, 22, 35, 29, 23, 35, 27, 36, 18, 32, 31, 28, 26, 35, 33, 33, 28, 25, 29, 30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
+ 33, 22, 35, 29, 23, 35, 27, 36, 18, 32,
+ 31, 28, 26, 35, 33, 33, 28, 25, 29, 30,
+ 31, 29, 35, 34, 28, 28, 27, 28, 27, 33,
+ 31,
// Ecclesiastes
- 18, 26, 22, 17, 19, 12, 29, 17, 18, 20, 10, 14,
+ 18, 26, 22, 17, 19, 12, 29, 17, 18, 20,
+ 10, 14,
// Song of Solomon
16, 17, 11, 16, 16, 12, 14, 14,
// Wisdom
- 16, 24, 19, 20, 24, 27, 30, 21, 19, 21, 27, 28, 19, 31, 19, 29, 20, 25, 21,
+ 16, 24, 19, 20, 24, 27, 30, 21, 19, 21,
+ 27, 28, 19, 31, 19, 29, 20, 25, 21,
// Sirach
- 30, 18, 31, 35, 18, 37, 39, 22, 23, 34, 34, 18, 32, 27, 20, 31, 31, 33, 28, 31, 31, 31, 37, 37, 29, 27, 33, 30, 31, 27, 37, 25, 33, 26, 23, 29, 34, 39, 42, 32, 29, 26, 36, 27, 31, 23, 31, 28, 18, 31, 38,
+ 30, 18, 31, 35, 18, 37, 39, 22, 23, 34,
+ 34, 18, 32, 27, 20, 31, 31, 33, 28, 31,
+ 31, 31, 37, 37, 29, 27, 33, 30, 31, 27,
+ 37, 25, 33, 26, 23, 29, 34, 39, 42, 32,
+ 29, 26, 36, 27, 31, 23, 31, 28, 18, 31,
+ 38,
// Isaiah
- 31, 22, 25, 6, 30, 13, 25, 22, 21, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6, 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8, 31, 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21, 14, 21, 22, 11, 12, 19, 12, 25, 24,
+ 31, 22, 25, 6, 30, 13, 25, 22, 21, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 25, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 19, 12, 25, 24,
// Jeremiah
- 19, 37, 25, 31, 31, 30, 34, 22, 26, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15, 18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 21, 28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
+ 19, 37, 25, 31, 31, 30, 34, 22, 26, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 40, 10, 38, 24, 22, 17, 32, 24,
+ 40, 44, 26, 22, 19, 32, 21, 28, 18, 16,
+ 18, 22, 13, 30, 5, 28, 7, 47, 39, 46,
+ 64, 34,
// Lamentations
22, 22, 66, 22, 22,
// Epistle of Jeremiah
@@ -194,11 +277,17 @@ int vm_synodal[] = {
// Baruch
22, 35, 38, 37, 9,
// Ezekiel
- 28, 10, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14, 49, 32, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28, 23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
+ 28, 10, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 49,
+ 32, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
// Daniel
- 21, 49, 100, 34, 31, 28, 28, 27, 27, 21, 45, 13, 64, 42,
+ 21, 49, 100, 34, 31, 28, 28, 27, 27, 21,
+ 45, 13, 64, 42,
// Hosea
- 11, 23, 5, 19, 15, 11, 16, 14, 17, 15, 12, 14, 15, 10,
+ 11, 23, 5, 19, 15, 11, 16, 14, 17, 15,
+ 12, 14, 15, 10,
// Joel
20, 32, 21,
// Amos
@@ -218,27 +307,40 @@ int vm_synodal[] = {
// Haggai
15, 23,
// Zechariah
- 21, 13, 10, 14, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
+ 21, 13, 10, 14, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
// Malachi
14, 17, 18, 6,
// I Maccabees
- 64, 70, 60, 61, 68, 63, 50, 32, 73, 89, 74, 53, 53, 49, 41, 24,
+ 64, 70, 60, 61, 68, 63, 50, 32, 73, 89,
+ 74, 53, 53, 49, 41, 24,
// II Maccabees
- 36, 33, 40, 50, 27, 31, 42, 36, 29, 38, 38, 45, 26, 46, 39,
+ 36, 33, 40, 50, 27, 31, 42, 36, 29, 38,
+ 38, 45, 26, 46, 39,
// III Maccabees
25, 24, 22, 16, 36, 37, 20,
// II Esdras
- 40, 48, 36, 52, 56, 59, 70, 63, 47, 60, 46, 51, 58, 48, 63, 78,
+ 40, 48, 36, 52, 56, 59, 70, 63, 47, 60,
+ 46, 51, 58, 48, 63, 78,
// Matthew
- 25, 23, 17, 25, 48, 34, 29, 34, 38, 42, 30, 50, 58, 36, 39, 28, 27, 35, 30, 34, 46, 46, 39, 51, 46, 75, 66, 20,
+ 25, 23, 17, 25, 48, 34, 29, 34, 38, 42,
+ 30, 50, 58, 36, 39, 28, 27, 35, 30, 34,
+ 46, 46, 39, 51, 46, 75, 66, 20,
// Mark
- 45, 28, 35, 41, 43, 56, 37, 38, 50, 52, 33, 44, 37, 72, 47, 20,
+ 45, 28, 35, 41, 43, 56, 37, 38, 50, 52,
+ 33, 44, 37, 72, 47, 20,
// Luke
- 80, 52, 38, 44, 39, 49, 50, 56, 62, 42, 54, 59, 35, 35, 32, 31, 37, 43, 48, 47, 38, 71, 56, 53,
+ 80, 52, 38, 44, 39, 49, 50, 56, 62, 42,
+ 54, 59, 35, 35, 32, 31, 37, 43, 48, 47,
+ 38, 71, 56, 53,
// John
- 51, 25, 36, 54, 47, 71, 53, 59, 41, 42, 57, 50, 38, 31, 27, 33, 26, 40, 42, 31, 25,
+ 51, 25, 36, 54, 47, 71, 53, 59, 41, 42,
+ 57, 50, 38, 31, 27, 33, 26, 40, 42, 31,
+ 25,
// Acts
- 26, 47, 26, 37, 42, 15, 60, 40, 43, 48, 30, 25, 52, 28, 41, 40, 34, 28, 40, 38, 40, 30, 35, 27, 27, 32, 44, 31,
+ 26, 47, 26, 37, 42, 15, 60, 40, 43, 48,
+ 30, 25, 52, 28, 41, 40, 34, 28, 40, 38,
+ 40, 30, 35, 27, 27, 32, 44, 31,
// James
27, 26, 18, 17, 20,
// I Peter
@@ -254,11 +356,14 @@ int vm_synodal[] = {
// Jude
25,
// Romans
- 32, 29, 31, 25, 21, 23, 25, 39, 33, 21, 36, 21, 14, 26, 33, 24,
+ 32, 29, 31, 25, 21, 23, 25, 39, 33, 21,
+ 36, 21, 14, 26, 33, 24,
// I Corinthians
- 31, 16, 23, 21, 13, 20, 40, 13, 27, 33, 34, 31, 13, 40, 58, 24,
+ 31, 16, 23, 21, 13, 20, 40, 13, 27, 33,
+ 34, 31, 13, 40, 58, 24,
// II Corinthians
- 24, 17, 18, 18, 21, 18, 16, 24, 15, 18, 32, 21, 13,
+ 24, 17, 18, 18, 21, 18, 16, 24, 15, 18,
+ 32, 21, 13,
// Galatians
24, 21, 29, 31, 26, 18,
// Ephesians
@@ -280,9 +385,12 @@ int vm_synodal[] = {
// Philemon
25,
// Hebrews
- 14, 18, 19, 16, 14, 20, 28, 13, 28, 39, 40, 29, 25,
+ 14, 18, 19, 16, 14, 20, 28, 13, 28, 39,
+ 40, 29, 25,
// Revelation of John
- 20, 29, 22, 11, 14, 17, 17, 13, 21, 11, 19, 17, 18, 20, 8, 21, 18, 24, 21, 15, 27, 21
+ 20, 29, 22, 11, 14, 17, 17, 13, 21, 11,
+ 19, 17, 18, 20, 8, 21, 18, 24, 21, 15,
+ 27, 21
};
diff --git a/include/canon_synodalp.h b/include/canon_synodalp.h
deleted file mode 100644
index 8ec2f9f..0000000
--- a/include/canon_synodalp.h
+++ /dev/null
@@ -1,173 +0,0 @@
-/******************************************************************************
- * canon_synodalp.h - Versification data for the SynodalP system
- *
- * Copyright 2010 CrossWire Bible Society (http://www.crosswire.org)
- * CrossWire Bible Society
- * P. O. Box 2528
- * Tempe, AZ 85280-2528
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the
- * Free Software Foundation version 2.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- */
-
-#ifndef CANON_SYNODALP_H
-#define CANON_SYNODALP_H
-
-SWORD_NAMESPACE_START
-
-
-// Versification system: synodalp
-// Book order: Gen Exod Lev Num Deut Josh Judg Ruth 1Sam 2Sam 1Kgs 2Kgs 1Chr 2Chr Ezra Neh Esth Job Ps Prov Eccl Song Isa Jer Lam Ezek Dan Hos Joel Amos Obad Jonah Mic Nah Hab Zeph Hag Zech Mal Matt Mark Luke John Acts Rom 1Cor 2Cor Gal Eph Phil Col 1Thess 2Thess 1Tim 2Tim Titus Phlm Heb Jas 1Pet 2Pet 1John 2John 3John Jude Rev
-
-// This v11n is essentially the KJV v11n, using its book order & chapter counts, but merged with verse counts similar to those of the Synodal v11n
-
-/******************************************************************************
- * Maximum verses per chapter
- */
-
-int vm_synodalp[] = {
- // Genesis
- 31, 25, 24, 26, 32, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38, 18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 55, 32, 20, 31, 29, 43, 36, 30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
- // Exodus
- 22, 25, 22, 31, 23, 30, 25, 32, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25, 26, 36, 31, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
- // Leviticus
- 17, 16, 17, 35, 19, 30, 38, 36, 24, 20, 47, 8, 59, 56, 33, 34, 16, 30, 37, 27, 24, 33, 44, 23, 55, 46, 34,
- // Numbers
- 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 35, 15, 34, 45, 41, 50, 13, 32, 22, 29, 35, 41, 30, 25, 18, 65, 23, 31, 39, 17, 54, 42, 56, 29, 34, 13,
- // Deuteronomy
- 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 32, 18, 29, 23, 22, 20, 22, 21, 20, 23, 30, 25, 22, 19, 19, 26, 68, 29, 20, 30, 52, 29, 12,
- // Joshua
- 18, 24, 17, 24, 16, 26, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51, 9, 45, 34, 16, 33,
- // Judges
- 36, 23, 31, 24, 31, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30, 48, 25,
- // Ruth
- 22, 23, 18, 22,
- // I Samuel
- 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24, 43, 15, 23, 28, 23, 44, 25, 12, 25, 11, 31, 13,
- // II Samuel
- 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 33, 43, 26, 22, 51, 39, 25,
- // I Kings
- 53, 46, 28, 34, 18, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21, 43, 29, 53,
- // II Kings
- 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 21, 21, 25, 29, 38, 20, 41, 37, 37, 21, 26, 20, 37, 20, 30,
- // I Chronicles
- 54, 55, 24, 43, 26, 81, 40, 40, 44, 14, 47, 40, 14, 17, 29, 43, 27, 17, 19, 8, 30, 19, 32, 31, 31, 32, 34, 21, 30,
- // II Chronicles
- 17, 18, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 22, 15, 19, 14, 19, 34, 11, 37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23,
- // Ezra
- 11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
- // Nehemiah
- 11, 20, 32, 23, 19, 19, 73, 18, 38, 39, 36, 47, 31,
- // Esther
- 22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
- // Job
- 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 22, 16, 21, 29, 29, 34, 30, 17, 25, 6, 14, 23, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41, 35, 27, 26, 17,
- // Psalms
- 6, 12, 9, 9, 13, 11, 18, 10, 39, 7, 9, 6, 7, 5, 11, 15, 51, 15, 10, 14, 32, 6, 10, 22, 12, 14, 9, 11, 13, 25, 11, 22, 23, 28, 13, 40, 23, 14, 18, 14, 12, 5, 27, 18, 12, 10, 15, 21, 23, 21, 11, 7, 9, 24, 14, 12, 12, 18, 14, 9, 13, 12, 11, 14, 20, 8, 36, 37, 6, 24, 20, 28, 23, 11, 13, 21, 72, 13, 20, 17, 8, 19, 13, 14, 17, 7, 19, 53, 17, 16, 16, 5, 23, 11, 13, 12, 9, 9, 5, 8, 29, 22, 35, 45, 48, 43, 14, 31, 7, 10, 10, 9, 26, 9, 10, 2, 29, 176, 7, 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, 3, 18, 3, 3, 21, 26, 9, 8, 24, 14, 10, 7, 12, 15, 21, 10, 11, 9, 14, 9, 6,
- // Proverbs
- 33, 22, 35, 27, 23, 35, 27, 36, 18, 32, 31, 28, 25, 35, 33, 33, 28, 24, 29, 30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
- // Ecclesiastes
- 18, 26, 22, 17, 19, 12, 29, 17, 18, 20, 10, 14,
- // Song of Solomon
- 16, 17, 11, 16, 16, 12, 14, 14,
- // Isaiah
- 31, 22, 25, 6, 30, 13, 25, 22, 21, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6, 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8, 31, 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21, 14, 21, 22, 11, 12, 19, 12, 25, 24,
- // Jeremiah
- 19, 37, 25, 31, 31, 30, 34, 22, 26, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15, 18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 21, 28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
- // Lamentations
- 22, 22, 66, 22, 22,
- // Ezekiel
- 28, 10, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14, 49, 32, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28, 23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
- // Daniel
- 21, 49, 33, 34, 31, 28, 28, 27, 27, 21, 45, 13,
- // Hosea
- 11, 23, 5, 19, 15, 11, 16, 14, 17, 15, 12, 14, 15, 10,
- // Joel
- 20, 32, 21,
- // Amos
- 15, 16, 15, 13, 27, 14, 17, 14, 15,
- // Obadiah
- 21,
- // Jonah
- 16, 11, 10, 11,
- // Micah
- 16, 13, 12, 13, 15, 16, 20,
- // Nahum
- 15, 13, 19,
- // Habakkuk
- 17, 20, 19,
- // Zephaniah
- 18, 15, 20,
- // Haggai
- 15, 23,
- // Zechariah
- 21, 13, 10, 14, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
- // Malachi
- 14, 17, 18, 6,
- // Matthew
- 25, 23, 17, 25, 48, 34, 29, 34, 38, 42, 30, 50, 58, 36, 39, 28, 27, 35, 30, 34, 46, 46, 39, 51, 46, 75, 66, 20,
- // Mark
- 45, 28, 35, 41, 43, 56, 37, 38, 50, 52, 33, 44, 37, 72, 47, 20,
- // Luke
- 80, 52, 38, 44, 39, 49, 50, 56, 62, 42, 54, 59, 35, 35, 32, 31, 37, 43, 48, 47, 38, 71, 56, 53,
- // John
- 51, 25, 36, 54, 47, 71, 53, 59, 41, 42, 57, 50, 38, 31, 27, 33, 26, 40, 42, 31, 25,
- // Acts
- 26, 47, 26, 37, 42, 15, 60, 40, 43, 48, 30, 25, 52, 28, 41, 40, 34, 28, 40, 38, 40, 30, 35, 27, 27, 32, 44, 31,
- // Romans
- 32, 29, 31, 25, 21, 23, 25, 39, 33, 21, 36, 21, 14, 26, 33, 24,
- // I Corinthians
- 31, 16, 23, 21, 13, 20, 40, 13, 27, 33, 34, 31, 13, 40, 58, 24,
- // II Corinthians
- 24, 17, 18, 18, 21, 18, 16, 24, 15, 18, 32, 21, 13,
- // Galatians
- 24, 21, 29, 31, 26, 18,
- // Ephesians
- 23, 22, 21, 32, 33, 24,
- // Philippians
- 30, 30, 21, 23,
- // Colossians
- 29, 23, 25, 18,
- // I Thessalonians
- 10, 20, 13, 18, 28,
- // II Thessalonians
- 12, 17, 18,
- // I Timothy
- 20, 15, 16, 16, 25, 21,
- // II Timothy
- 18, 26, 17, 22,
- // Titus
- 16, 15, 15,
- // Philemon
- 25,
- // Hebrews
- 14, 18, 19, 16, 14, 20, 28, 13, 28, 39, 40, 29, 25,
- // James
- 27, 26, 18, 17, 20,
- // I Peter
- 25, 25, 22, 19, 14,
- // II Peter
- 21, 22, 18,
- // I John
- 10, 29, 24, 21, 21,
- // II John
- 13,
- // III John
- 15,
- // Jude
- 25,
- // Revelation of John
- 20, 29, 22, 11, 14, 17, 17, 13, 21, 11, 19, 17, 18, 20, 8, 21, 18, 24, 21, 15, 27, 21
-};
-
-
-SWORD_NAMESPACE_END
-
-
-#endif
diff --git a/include/canon_synodalprot.h b/include/canon_synodalprot.h
new file mode 100644
index 0000000..07387bd
--- /dev/null
+++ b/include/canon_synodalprot.h
@@ -0,0 +1,316 @@
+/******************************************************************************
+ *
+ * canon_synodalprot.h - Versification data for the SynodalProt system
+ *
+ * $Id: canon_synodalprot.h 2930 2013-07-31 12:09:08Z chrislit $
+ *
+ * Copyright 2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ */
+
+#ifndef CANON_SYNODALPROT_H
+#define CANON_SYNODALPROT_H
+
+SWORD_NAMESPACE_START
+
+// Versification system: SynodalProt
+// This versification data is based on the synodal system. The only change is the removal of the deuterocanonical passages: PrMan, 1Esd, Tob, Jdt, Wis, Sir, EpJer, Bar, 1Macc, 2Macc, 3Macc, 2Esd, Dan 13-14, Ps 151, Josh 24:34-36, Prov 4:28-29, 13:14, 18:8, and Dan 3:24-90.
+
+/******************************************************************************
+ * [on]tbooks_synodalProt - initialize static instance for all canonical
+ * text names and chapmax
+ */
+struct sbook otbooks_synodalProt[] = {
+ {"Genesis", "Gen", "Gen", 50},
+ {"Exodus", "Exod", "Exod", 40},
+ {"Leviticus", "Lev", "Lev", 27},
+ {"Numbers", "Num", "Num", 36},
+ {"Deuteronomy", "Deut", "Deut", 34},
+ {"Joshua", "Josh", "Josh", 24},
+ {"Judges", "Judg", "Judg", 21},
+ {"Ruth", "Ruth", "Ruth", 4},
+ {"I Samuel", "1Sam", "1Sam", 31},
+ {"II Samuel", "2Sam", "2Sam", 24},
+ {"I Kings", "1Kgs", "1Kgs", 22},
+ {"II Kings", "2Kgs", "2Kgs", 25},
+ {"I Chronicles", "1Chr", "1Chr", 29},
+ {"II Chronicles", "2Chr", "2Chr", 36},
+ {"Ezra", "Ezra", "Ezra", 10},
+ {"Nehemiah", "Neh", "Neh", 13},
+ {"Esther", "Esth", "Esth", 10},
+ {"Job", "Job", "Job", 42},
+ {"Psalms", "Ps", "Ps", 150},
+ {"Proverbs", "Prov", "Prov", 31},
+ {"Ecclesiastes", "Eccl", "Eccl", 12},
+ {"Song of Solomon", "Song", "Song", 8},
+ {"Isaiah", "Isa", "Isa", 66},
+ {"Jeremiah", "Jer", "Jer", 52},
+ {"Lamentations", "Lam", "Lam", 5},
+ {"Ezekiel", "Ezek", "Ezek", 48},
+ {"Daniel", "Dan", "Dan", 12},
+ {"Hosea", "Hos", "Hos", 14},
+ {"Joel", "Joel", "Joel", 3},
+ {"Amos", "Amos", "Amos", 9},
+ {"Obadiah", "Obad", "Obad", 1},
+ {"Jonah", "Jonah", "Jonah", 4},
+ {"Micah", "Mic", "Mic", 7},
+ {"Nahum", "Nah", "Nah", 3},
+ {"Habakkuk", "Hab", "Hab", 3},
+ {"Zephaniah", "Zeph", "Zeph", 3},
+ {"Haggai", "Hag", "Hag", 2},
+ {"Zechariah", "Zech", "Zech", 14},
+ {"Malachi", "Mal", "Mal", 4},
+ {"", "", "", 0}
+};
+
+// for ntbooks_synodalprot, use ntbooks_synodal
+
+/******************************************************************************
+ * Maximum verses per chapter
+ */
+
+int vm_synodalProt[] = {
+ // Genesis
+ 31, 25, 24, 26, 32, 22, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 38, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 55, 32, 20, 31, 29, 43, 36, 30, 23, 23,
+ 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
+
+ // Exodus
+ 22, 25, 22, 31, 23, 30, 25, 32, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 36, 31, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 38, 29, 31, 43, 38,
+
+ // Leviticus
+ 17, 16, 17, 35, 19, 30, 38, 36, 24, 20,
+ 47, 8, 59, 56, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 46, 34,
+ // Numbers
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 35, 15, 34, 45, 41, 50, 13, 32, 22, 29,
+ 35, 41, 30, 25, 18, 65, 23, 31, 39, 17,
+ 54, 42, 56, 29, 34, 13,
+ // Deuteronomy
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 32, 18, 29, 23, 22, 20, 22, 21, 20,
+ 23, 30, 25, 22, 19, 19, 26, 68, 29, 20,
+ 30, 52, 29, 12,
+ // Joshua
+ 18, 24, 17, 24, 16, 26, 26, 35, 27, 43,
+ 23, 24, 33, 15, 63, 10, 18, 28, 51, 9,
+ 45, 34, 16, 33,
+ // Judges
+ 36, 23, 31, 24, 31, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 31, 30, 48,
+ 25,
+ // Ruth
+ 22, 23, 18, 22,
+ // I Samuel
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 43,
+ 15, 23, 28, 23, 44, 25, 12, 25, 11, 31,
+ 13,
+ // II Samuel
+ 27, 32, 39, 12, 25, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 33, 43, 26,
+ 22, 51, 39, 25,
+ // I Kings
+ 53, 46, 28, 34, 18, 38, 51, 66, 28, 29,
+ 43, 33, 34, 31, 34, 34, 24, 46, 21, 43,
+ 29, 53,
+ // II Kings
+ 18, 25, 27, 44, 27, 33, 20, 29, 37, 36,
+ 21, 21, 25, 29, 38, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
+ // I Chronicles
+ 54, 55, 24, 43, 26, 81, 40, 40, 44, 14,
+ 47, 40, 14, 17, 29, 43, 27, 17, 19, 8,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ // II Chronicles
+ 17, 18, 17, 22, 14, 42, 22, 18, 31, 19,
+ 23, 16, 22, 15, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 27, 23,
+ // Ezra
+ 11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
+
+ // Nehemiah
+ 11, 20, 32, 23, 19, 19, 73, 18, 38, 39,
+ 36, 47, 31,
+ // Esther
+ 22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
+
+ // Job
+ 22, 13, 26, 21, 27, 30, 21, 22, 35, 22,
+ 20, 25, 28, 22, 35, 22, 16, 21, 29, 29,
+ 34, 30, 17, 25, 6, 14, 23, 28, 25, 31,
+ 40, 22, 33, 37, 16, 33, 24, 41, 35, 27,
+ 26, 17,
+ // Psalms
+ 6, 12, 9, 9, 13, 11, 18, 10, 39, 7,
+ 9, 6, 7, 5, 11, 15, 51, 15, 10, 14,
+ 32, 6, 10, 22, 12, 14, 9, 11, 13, 25,
+ 11, 22, 23, 28, 13, 40, 23, 14, 18, 14,
+ 12, 5, 27, 18, 12, 10, 15, 21, 23, 21,
+ 11, 7, 9, 24, 14, 12, 12, 18, 14, 9,
+ 13, 12, 11, 14, 20, 8, 36, 37, 6, 24,
+ 20, 28, 23, 11, 13, 21, 72, 13, 20, 17,
+ 8, 19, 13, 14, 17, 7, 19, 53, 17, 16,
+ 16, 5, 23, 11, 13, 12, 9, 9, 5, 8,
+ 29, 22, 35, 45, 48, 43, 14, 31, 7, 10,
+ 10, 9, 26, 9, 10, 2, 29, 176, 7, 8,
+ 9, 4, 8, 5, 6, 5, 6, 8, 8, 3,
+ 18, 3, 3, 21, 26, 9, 8, 24, 14, 10,
+ 7, 12, 15, 21, 10, 11, 9, 14, 9, 6,
+ // Proverbs
+ 33, 22, 35, 27, 23, 35, 27, 36, 18, 32,
+ 31, 28, 25, 35, 33, 33, 28, 24, 29, 30,
+ 31, 29, 35, 34, 28, 28, 27, 28, 27, 33,
+ 31,
+ // Ecclesiastes
+ 18, 26, 22, 17, 19, 12, 29, 17, 18, 20,
+ 10, 14,
+ // Song of Solomon
+ 16, 17, 11, 16, 16, 12, 14, 14,
+ // Isaiah
+ 31, 22, 25, 6, 30, 13, 25, 22, 21, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 25, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 19, 12, 25, 24,
+ // Jeremiah
+ 19, 37, 25, 31, 31, 30, 34, 22, 26, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 40, 10, 38, 24, 22, 17, 32, 24,
+ 40, 44, 26, 22, 19, 32, 21, 28, 18, 16,
+ 18, 22, 13, 30, 5, 28, 7, 47, 39, 46,
+ 64, 34,
+ // Lamentations
+ 22, 22, 66, 22, 22,
+ // Ezekiel
+ 28, 10, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 49,
+ 32, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
+ // Daniel
+ 21, 49, 33, 34, 31, 28, 28, 27, 27, 21,
+ 45, 13,
+ // Hosea
+ 11, 23, 5, 19, 15, 11, 16, 14, 17, 15,
+ 12, 14, 15, 10,
+ // Joel
+ 20, 32, 21,
+ // Amos
+ 15, 16, 15, 13, 27, 14, 17, 14, 15,
+ // Obadiah
+ 21,
+ // Jonah
+ 16, 11, 10, 11,
+ // Micah
+ 16, 13, 12, 13, 15, 16, 20,
+ // Nahum
+ 15, 13, 19,
+ // Habakkuk
+ 17, 20, 19,
+ // Zephaniah
+ 18, 15, 20,
+ // Haggai
+ 15, 23,
+ // Zechariah
+ 21, 13, 10, 14, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
+ // Malachi
+ 14, 17, 18, 6,
+
+ // Matthew
+ 25, 23, 17, 25, 48, 34, 29, 34, 38, 42,
+ 30, 50, 58, 36, 39, 28, 27, 35, 30, 34,
+ 46, 46, 39, 51, 46, 75, 66, 20,
+ // Mark
+ 45, 28, 35, 41, 43, 56, 37, 38, 50, 52,
+ 33, 44, 37, 72, 47, 20,
+ // Luke
+ 80, 52, 38, 44, 39, 49, 50, 56, 62, 42,
+ 54, 59, 35, 35, 32, 31, 37, 43, 48, 47,
+ 38, 71, 56, 53,
+ // John
+ 51, 25, 36, 54, 47, 71, 53, 59, 41, 42,
+ 57, 50, 38, 31, 27, 33, 26, 40, 42, 31,
+ 25,
+ // Acts
+ 26, 47, 26, 37, 42, 15, 60, 40, 43, 48,
+ 30, 25, 52, 28, 41, 40, 34, 28, 40, 38,
+ 40, 30, 35, 27, 27, 32, 44, 31,
+ // James
+ 27, 26, 18, 17, 20,
+ // I Peter
+ 25, 25, 22, 19, 14,
+ // II Peter
+ 21, 22, 18,
+ // I John
+ 10, 29, 24, 21, 21,
+ // II John
+ 13,
+ // III John
+ 15,
+ // Jude
+ 25,
+ // Romans
+ 32, 29, 31, 25, 21, 23, 25, 39, 33, 21,
+ 36, 21, 14, 26, 33, 24,
+ // I Corinthians
+ 31, 16, 23, 21, 13, 20, 40, 13, 27, 33,
+ 34, 31, 13, 40, 58, 24,
+ // II Corinthians
+ 24, 17, 18, 18, 21, 18, 16, 24, 15, 18,
+ 32, 21, 13,
+ // Galatians
+ 24, 21, 29, 31, 26, 18,
+ // Ephesians
+ 23, 22, 21, 32, 33, 24,
+ // Philippians
+ 30, 30, 21, 23,
+ // Colossians
+ 29, 23, 25, 18,
+ // I Thessalonians
+ 10, 20, 13, 18, 28,
+ // II Thessalonians
+ 12, 17, 18,
+ // I Timothy
+ 20, 15, 16, 16, 25, 21,
+ // II Timothy
+ 18, 26, 17, 22,
+ // Titus
+ 16, 15, 15,
+ // Philemon
+ 25,
+ // Hebrews
+ 14, 18, 19, 16, 14, 20, 28, 13, 28, 39,
+ 40, 29, 25,
+ // Revelation of John
+ 20, 29, 22, 11, 14, 17, 17, 13, 21, 11,
+ 19, 17, 18, 20, 8, 21, 18, 24, 21, 15,
+ 27, 21
+};
+
+
+SWORD_NAMESPACE_END
+
+
+#endif
diff --git a/include/canon_vulg.h b/include/canon_vulg.h
index e5d719a..9fa8e04 100644
--- a/include/canon_vulg.h
+++ b/include/canon_vulg.h
@@ -1,7 +1,10 @@
/******************************************************************************
- * canon_vulg.h - Versification data for the Vulg system
*
- * Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
+ * canon_vulg.h - Versification data for the Vulg system
+ *
+ * $Id: canon_vulg.h 2915 2013-07-23 16:55:54Z chrislit $
+ *
+ * Copyright 2009-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -125,71 +128,153 @@ struct sbook ntbooks_vulg[] = {
int vm_vulg[] = {
// Genesis
- 31, 25, 24, 26, 31, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38, 18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 55, 32, 20, 31, 29, 43, 36, 30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 32, 25,
+ 31, 25, 24, 26, 31, 22, 24, 22, 29, 32,
+ 32, 20, 18, 24, 21, 16, 27, 33, 38, 18,
+ 34, 24, 20, 67, 34, 35, 46, 22, 35, 43,
+ 55, 32, 20, 31, 29, 43, 36, 30, 23, 23,
+ 57, 38, 34, 34, 28, 34, 31, 22, 32, 25,
// Exodus
- 22, 25, 22, 31, 23, 30, 25, 32, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25, 26, 36, 31, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29, 31, 43, 36,
+ 22, 25, 22, 31, 23, 30, 25, 32, 35, 29,
+ 10, 51, 22, 31, 27, 36, 16, 27, 25, 26,
+ 36, 31, 33, 18, 40, 37, 21, 43, 46, 38,
+ 18, 35, 23, 35, 35, 38, 29, 31, 43, 36,
// Leviticus
- 17, 16, 17, 35, 19, 30, 38, 36, 24, 20, 47, 8, 59, 57, 33, 34, 16, 30, 37, 27, 24, 33, 44, 23, 55, 45, 34,
+ 17, 16, 17, 35, 19, 30, 38, 36, 24, 20,
+ 47, 8, 59, 57, 33, 34, 16, 30, 37, 27,
+ 24, 33, 44, 23, 55, 45, 34,
// Numbers
- 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 34, 15, 34, 45, 41, 50, 13, 32, 22, 30, 35, 41, 30, 25, 18, 65, 23, 31, 39, 17, 54, 42, 56, 29, 34, 13,
+ 54, 34, 51, 49, 31, 27, 89, 26, 23, 36,
+ 34, 15, 34, 45, 41, 50, 13, 32, 22, 30,
+ 35, 41, 30, 25, 18, 65, 23, 31, 39, 17,
+ 54, 42, 56, 29, 34, 13,
// Deuteronomy
- 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 32, 18, 29, 23, 22, 20, 22, 21, 20, 23, 30, 25, 22, 19, 19, 26, 68, 29, 20, 30, 52, 29, 12,
+ 46, 37, 29, 49, 33, 25, 26, 20, 29, 22,
+ 32, 32, 18, 29, 23, 22, 20, 22, 21, 20,
+ 23, 30, 25, 22, 19, 19, 26, 68, 29, 20,
+ 30, 52, 29, 12,
// Joshua
- 18, 24, 17, 25, 16, 27, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51, 9, 43, 34, 16, 33,
+ 18, 24, 17, 25, 16, 27, 26, 35, 27, 43,
+ 23, 24, 33, 15, 63, 10, 18, 28, 51, 9,
+ 43, 34, 16, 33,
// Judges
- 36, 23, 31, 24, 32, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30, 48, 24,
+ 36, 23, 31, 24, 32, 40, 25, 35, 57, 18,
+ 40, 15, 25, 20, 20, 31, 13, 31, 30, 48,
+ 24,
// Ruth
22, 23, 18, 22,
// I Samuel
- 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24, 43, 15, 23, 28, 23, 44, 25, 12, 25, 11, 31, 13,
+ 28, 36, 21, 22, 12, 21, 17, 22, 27, 27,
+ 15, 25, 23, 52, 35, 23, 58, 30, 24, 43,
+ 15, 23, 28, 23, 44, 25, 12, 25, 11, 31,
+ 13,
// II Samuel
- 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 33, 43, 26, 22, 51, 39, 25,
+ 27, 32, 39, 12, 25, 23, 29, 18, 13, 19,
+ 27, 31, 39, 33, 37, 23, 29, 33, 43, 26,
+ 22, 51, 39, 25,
// I Kings
- 53, 46, 28, 34, 18, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21, 43, 29, 54,
+ 53, 46, 28, 34, 18, 38, 51, 66, 28, 29,
+ 43, 33, 34, 31, 34, 34, 24, 46, 21, 43,
+ 29, 54,
// II Kings
- 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 21, 21, 25, 29, 38, 20, 41, 37, 37, 21, 26, 20, 37, 20, 30,
+ 18, 25, 27, 44, 27, 33, 20, 29, 37, 36,
+ 21, 21, 25, 29, 38, 20, 41, 37, 37, 21,
+ 26, 20, 37, 20, 30,
// I Chronicles
- 54, 55, 24, 43, 26, 81, 40, 40, 44, 14, 46, 40, 14, 17, 29, 43, 27, 17, 19, 7, 30, 19, 32, 31, 31, 32, 34, 21, 30,
+ 54, 55, 24, 43, 26, 81, 40, 40, 44, 14,
+ 46, 40, 14, 17, 29, 43, 27, 17, 19, 7,
+ 30, 19, 32, 31, 31, 32, 34, 21, 30,
// II Chronicles
- 17, 18, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 22, 15, 19, 14, 19, 34, 11, 37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23,
+ 17, 18, 17, 22, 14, 42, 22, 18, 31, 19,
+ 23, 16, 22, 15, 19, 14, 19, 34, 11, 37,
+ 20, 12, 21, 27, 28, 23, 9, 27, 36, 27,
+ 21, 33, 25, 33, 27, 23,
// Ezra
11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
// Nehemiah
- 11, 20, 31, 23, 19, 19, 73, 18, 38, 39, 36, 46, 31,
+ 11, 20, 31, 23, 19, 19, 73, 18, 38, 39,
+ 36, 46, 31,
// Tobit
- 25, 23, 25, 23, 28, 22, 20, 24, 12, 13, 21, 22, 23, 17,
+ 25, 23, 25, 23, 28, 22, 20, 24, 12, 13,
+ 21, 22, 23, 17,
// Judith
- 12, 18, 15, 17, 29, 21, 25, 34, 19, 20, 21, 20, 31, 18, 15, 31,
+ 12, 18, 15, 17, 29, 21, 25, 34, 19, 20,
+ 21, 20, 31, 18, 15, 31,
// Esther
- 22, 23, 15, 17, 14, 14, 10, 17, 32, 13, 12, 6, 18, 19, 19, 24,
+ 22, 23, 15, 17, 14, 14, 10, 17, 32, 13,
+ 12, 6, 18, 19, 19, 24,
// Job
- 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 23, 16, 21, 29, 29, 34, 30, 17, 25, 6, 14, 23, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41, 35, 28, 25, 16,
+ 22, 13, 26, 21, 27, 30, 21, 22, 35, 22,
+ 20, 25, 28, 22, 35, 23, 16, 21, 29, 29,
+ 34, 30, 17, 25, 6, 14, 23, 28, 25, 31,
+ 40, 22, 33, 37, 16, 33, 24, 41, 35, 28,
+ 25, 16,
// Psalms
- 6, 13, 9, 10, 13, 11, 18, 10, 39, 8, 9, 6, 7, 5, 11, 15, 51, 15, 10, 14, 32, 6, 10, 22, 12, 14, 9, 11, 13, 25, 11, 22, 23, 28, 13, 40, 23, 14, 18, 14, 12, 6, 26, 18, 12, 10, 15, 21, 23, 21, 11, 7, 9, 24, 13, 12, 12, 18, 14, 9, 13, 12, 11, 14, 20, 8, 36, 37, 6, 24, 20, 28, 23, 11, 13, 21, 72, 13, 20, 17, 8, 19, 13, 14, 17, 7, 19, 53, 17, 16, 16, 5, 23, 11, 13, 12, 9, 9, 5, 8, 29, 22, 35, 45, 48, 43, 14, 31, 7, 10, 10, 9, 26, 9, 10, 2, 29, 176, 7, 8, 9, 4, 8, 5, 7, 5, 6, 8, 8, 3, 18, 3, 3, 21, 27, 9, 8, 24, 14, 10, 8, 12, 15, 21, 10, 11, 9, 14, 9, 6,
+ 6, 13, 9, 10, 13, 11, 18, 10, 39, 8,
+ 9, 6, 7, 5, 11, 15, 51, 15, 10, 14,
+ 32, 6, 10, 22, 12, 14, 9, 11, 13, 25,
+ 11, 22, 23, 28, 13, 40, 23, 14, 18, 14,
+ 12, 6, 26, 18, 12, 10, 15, 21, 23, 21,
+ 11, 7, 9, 24, 13, 12, 12, 18, 14, 9,
+ 13, 12, 11, 14, 20, 8, 36, 37, 6, 24,
+ 20, 28, 23, 11, 13, 21, 72, 13, 20, 17,
+ 8, 19, 13, 14, 17, 7, 19, 53, 17, 16,
+ 16, 5, 23, 11, 13, 12, 9, 9, 5, 8,
+ 29, 22, 35, 45, 48, 43, 14, 31, 7, 10,
+ 10, 9, 26, 9, 10, 2, 29, 176, 7, 8,
+ 9, 4, 8, 5, 7, 5, 6, 8, 8, 3,
+ 18, 3, 3, 21, 27, 9, 8, 24, 14, 10,
+ 8, 12, 15, 21, 10, 11, 9, 14, 9, 6,
// Proverbs
- 33, 22, 35, 27, 23, 35, 27, 36, 18, 32, 31, 28, 25, 35, 33, 33, 28, 24, 29, 30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
+ 33, 22, 35, 27, 23, 35, 27, 36, 18, 32,
+ 31, 28, 25, 35, 33, 33, 28, 24, 29, 30,
+ 31, 29, 35, 34, 28, 28, 27, 28, 27, 33,
+ 31,
// Ecclesiastes
- 18, 26, 22, 17, 19, 11, 30, 17, 18, 20, 10, 14,
+ 18, 26, 22, 17, 19, 11, 30, 17, 18, 20,
+ 10, 14,
// Song of Solomon
16, 17, 11, 16, 17, 12, 13, 14,
// Wisdom
- 16, 25, 19, 20, 24, 27, 30, 21, 19, 21, 27, 27, 19, 31, 19, 29, 20, 25, 20,
+ 16, 25, 19, 20, 24, 27, 30, 21, 19, 21,
+ 27, 27, 19, 31, 19, 29, 20, 25, 20,
// Sirach
- 40, 23, 34, 36, 18, 37, 40, 22, 25, 34, 36, 19, 32, 27, 22, 31, 31, 33, 28, 33, 31, 33, 38, 47, 36, 28, 33, 30, 35, 27, 42, 28, 33, 31, 26, 28, 34, 39, 41, 32, 28, 26, 37, 27, 31, 23, 31, 28, 19, 31, 38,
+ 40, 23, 34, 36, 18, 37, 40, 22, 25, 34,
+ 36, 19, 32, 27, 22, 31, 31, 33, 28, 33,
+ 31, 33, 38, 47, 36, 28, 33, 30, 35, 27,
+ 42, 28, 33, 31, 26, 28, 34, 39, 41, 32,
+ 28, 26, 37, 27, 31, 23, 31, 28, 19, 31,
+ 38,
// Isaiah
- 31, 22, 26, 6, 30, 13, 25, 22, 21, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6, 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8, 31, 29, 25, 28, 28, 26, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21, 14, 21, 22, 11, 12, 19, 12, 25, 24,
+ 31, 22, 26, 6, 30, 13, 25, 22, 21, 34,
+ 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
+ 17, 25, 18, 23, 12, 21, 13, 29, 24, 33,
+ 9, 20, 24, 17, 10, 22, 38, 22, 8, 31,
+ 29, 25, 28, 28, 26, 13, 15, 22, 26, 11,
+ 23, 15, 12, 17, 13, 12, 21, 14, 21, 22,
+ 11, 12, 19, 12, 25, 24,
// Jeremiah
- 19, 37, 25, 31, 31, 30, 34, 22, 26, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15, 18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 20, 28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
+ 19, 37, 25, 31, 31, 30, 34, 22, 26, 25,
+ 23, 17, 27, 22, 21, 21, 27, 23, 15, 18,
+ 14, 30, 40, 10, 38, 24, 22, 17, 32, 24,
+ 40, 44, 26, 22, 19, 32, 20, 28, 18, 16,
+ 18, 22, 13, 30, 5, 28, 7, 47, 39, 46,
+ 64, 34,
// Lamentations
22, 22, 66, 22, 22,
// Baruch
22, 35, 38, 37, 9, 72,
// Ezekiel
- 28, 9, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14, 49, 32, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28, 23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
+ 28, 9, 27, 17, 17, 14, 27, 18, 11, 22,
+ 25, 28, 23, 23, 8, 63, 24, 32, 14, 49,
+ 32, 31, 49, 27, 17, 21, 36, 26, 21, 26,
+ 18, 32, 33, 31, 15, 38, 28, 23, 29, 49,
+ 26, 20, 27, 31, 25, 24, 23, 35,
// Daniel
- 21, 49, 100, 34, 31, 28, 28, 27, 27, 21, 45, 13, 65, 42,
+ 21, 49, 100, 34, 31, 28, 28, 27, 27, 21,
+ 45, 13, 65, 42,
// Hosea
- 11, 24, 5, 19, 15, 11, 16, 14, 17, 15, 12, 14, 15, 10,
+ 11, 24, 5, 19, 15, 11, 16, 14, 17, 15,
+ 12, 14, 15, 10,
// Joel
20, 32, 21,
// Amos
@@ -209,29 +294,44 @@ int vm_vulg[] = {
// Haggai
14, 24,
// Zechariah
- 21, 13, 10, 14, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
+ 21, 13, 10, 14, 11, 15, 14, 23, 17, 12,
+ 17, 14, 9, 21,
// Malachi
14, 17, 18, 6,
// I Maccabees
- 67, 70, 60, 61, 68, 63, 50, 32, 73, 89, 74, 54, 54, 49, 41, 24,
+ 67, 70, 60, 61, 68, 63, 50, 32, 73, 89,
+ 74, 54, 54, 49, 41, 24,
// II Maccabees
- 36, 33, 40, 50, 27, 31, 42, 36, 29, 38, 38, 46, 26, 46, 40,
+ 36, 33, 40, 50, 27, 31, 42, 36, 29, 38,
+ 38, 46, 26, 46, 40,
// Matthew
- 25, 23, 17, 25, 48, 34, 29, 34, 38, 42, 30, 50, 58, 36, 39, 28, 26, 35, 30, 34, 46, 46, 39, 51, 46, 75, 66, 20,
+ 25, 23, 17, 25, 48, 34, 29, 34, 38, 42,
+ 30, 50, 58, 36, 39, 28, 26, 35, 30, 34,
+ 46, 46, 39, 51, 46, 75, 66, 20,
// Mark
- 45, 28, 35, 40, 43, 56, 37, 39, 49, 52, 33, 44, 37, 72, 47, 20,
+ 45, 28, 35, 40, 43, 56, 37, 39, 49, 52,
+ 33, 44, 37, 72, 47, 20,
// Luke
- 80, 52, 38, 44, 39, 49, 50, 56, 62, 42, 54, 59, 35, 35, 32, 31, 37, 43, 48, 47, 38, 71, 56, 53,
+ 80, 52, 38, 44, 39, 49, 50, 56, 62, 42,
+ 54, 59, 35, 35, 32, 31, 37, 43, 48, 47,
+ 38, 71, 56, 53,
// John
- 51, 25, 36, 54, 47, 72, 53, 59, 41, 42, 57, 50, 38, 31, 27, 33, 26, 40, 42, 31, 25,
+ 51, 25, 36, 54, 47, 72, 53, 59, 41, 42,
+ 57, 50, 38, 31, 27, 33, 26, 40, 42, 31,
+ 25,
// Acts
- 26, 47, 26, 37, 42, 15, 59, 40, 43, 48, 30, 25, 52, 27, 41, 40, 34, 28, 40, 38, 40, 30, 35, 27, 27, 32, 44, 31,
+ 26, 47, 26, 37, 42, 15, 59, 40, 43, 48,
+ 30, 25, 52, 27, 41, 40, 34, 28, 40, 38,
+ 40, 30, 35, 27, 27, 32, 44, 31,
// Romans
- 32, 29, 31, 25, 21, 23, 25, 39, 33, 21, 36, 21, 14, 23, 33, 27,
+ 32, 29, 31, 25, 21, 23, 25, 39, 33, 21,
+ 36, 21, 14, 23, 33, 27,
// I Corinthians
- 31, 16, 23, 21, 13, 20, 40, 13, 27, 33, 34, 31, 13, 40, 58, 24,
+ 31, 16, 23, 21, 13, 20, 40, 13, 27, 33,
+ 34, 31, 13, 40, 58, 24,
// II Corinthians
- 24, 17, 18, 18, 21, 18, 16, 24, 15, 18, 33, 21, 13,
+ 24, 17, 18, 18, 21, 18, 16, 24, 15, 18,
+ 33, 21, 13,
// Galatians
24, 21, 29, 31, 26, 18,
// Ephesians
@@ -253,7 +353,8 @@ int vm_vulg[] = {
// Philemon
25,
// Hebrews
- 14, 18, 19, 16, 14, 20, 28, 13, 28, 39, 40, 29, 25,
+ 14, 18, 19, 16, 14, 20, 28, 13, 28, 39,
+ 40, 29, 25,
// James
27, 26, 18, 17, 20,
// I Peter
@@ -269,13 +370,16 @@ int vm_vulg[] = {
// Jude
25,
// Revelation of John
- 20, 29, 22, 11, 14, 17, 17, 13, 21, 11, 19, 18, 18, 20, 8, 21, 18, 24, 21, 15, 27, 21,
+ 20, 29, 22, 11, 14, 17, 17, 13, 21, 11,
+ 19, 18, 18, 20, 8, 21, 18, 24, 21, 15,
+ 27, 21,
// Prayer of Manasses
15,
// I Esdras
58, 31, 24, 63, 73, 34, 15, 97, 56,
// II Esdras
- 40, 48, 36, 52, 56, 59, 140, 63, 47, 60, 46, 51, 58, 48, 63, 78,
+ 40, 48, 36, 52, 56, 59, 140, 63, 47, 60,
+ 46, 51, 58, 48, 63, 78,
// Additional Psalm
7,
// Laodiceans
diff --git a/include/cipherfil.h b/include/cipherfil.h
index cf48389..99085ae 100644
--- a/include/cipherfil.h
+++ b/include/cipherfil.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: cipherfil.h 1864 2005-11-20 06:06:40Z scribe $
+ * cipherfil.h -
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: cipherfil.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1999-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/config.h b/include/config.h
deleted file mode 100644
index 0f8dbb9..0000000
--- a/include/config.h
+++ /dev/null
@@ -1,84 +0,0 @@
-/* include/config.h. Generated from config.h.in by configure. */
-/* include/config.h.in. Generated from configure.ac by autoheader. */
-
-/* Define if building universal (internal helper macro) */
-/* #undef AC_APPLE_UNIVERSAL_BUILD */
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#define HAVE_DLFCN_H 1
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#define HAVE_INTTYPES_H 1
-
-/* Define to 1 if you have the `z' library (-lz). */
-#define HAVE_LIBZ 1
-
-/* Define to 1 if you have the <memory.h> header file. */
-#define HAVE_MEMORY_H 1
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#define HAVE_STDINT_H 1
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#define HAVE_STDLIB_H 1
-
-/* Define to 1 if you have the <strings.h> header file. */
-#define HAVE_STRINGS_H 1
-
-/* Define to 1 if you have the <string.h> header file. */
-#define HAVE_STRING_H 1
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#define HAVE_SYS_STAT_H 1
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#define HAVE_SYS_TYPES_H 1
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#define HAVE_UNISTD_H 1
-
-/* Define to 1 if you have the `vsnprintf' function. */
-#define HAVE_VSNPRINTF 1
-
-/* Define to the sub-directory in which libtool stores uninstalled libraries.
- */
-#define LT_OBJDIR ".libs/"
-
-/* Name of package */
-#define PACKAGE "sword"
-
-/* Define to the address where bug reports for this package should be sent. */
-#define PACKAGE_BUGREPORT "sword-bugs@crosswire.org"
-
-/* Define to the full name of this package. */
-#define PACKAGE_NAME "sword"
-
-/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "sword 1.6.2"
-
-/* Define to the one symbol short name of this package. */
-#define PACKAGE_TARNAME "sword"
-
-/* Define to the home page for this package. */
-#define PACKAGE_URL "http://crosswire.org/sword"
-
-/* Define to the version of this package. */
-#define PACKAGE_VERSION "1.6.2"
-
-/* Define to 1 if you have the ANSI C header files. */
-#define STDC_HEADERS 1
-
-/* Version number of package */
-#define VERSION "1.6.2"
-
-/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
- significant byte first (like Motorola and SPARC, unlike Intel). */
-#if defined AC_APPLE_UNIVERSAL_BUILD
-# if defined __BIG_ENDIAN__
-# define WORDS_BIGENDIAN 1
-# endif
-#else
-# ifndef WORDS_BIGENDIAN
-/* # undef WORDS_BIGENDIAN */
-# endif
-#endif
diff --git a/include/config.h.in b/include/config.h.in
index a37d095..cde8a27 100644
--- a/include/config.h.in
+++ b/include/config.h.in
@@ -58,6 +58,9 @@
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
+/* Define to the home page for this package. */
+#undef PACKAGE_URL
+
/* Define to the version of this package. */
#undef PACKAGE_VERSION
diff --git a/include/curlftpt.h b/include/curlftpt.h
index 41fd23b..069208b 100644
--- a/include/curlftpt.h
+++ b/include/curlftpt.h
@@ -1,42 +1,37 @@
/******************************************************************************
-* curlftpt.h - code for CURL impl of FTP Transport
-*
-* $Id: swbuf.h 2218 2008-12-23 09:33:38Z scribe $
-*
-* Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
-* CrossWire Bible Society
-* P. O. Box 2528
-* Tempe, AZ 85280-2528
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation version 2.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-*/
+ *
+ * curlftpt.h - code for CURL impl of FTP Transport
+ *
+ * $Id: curlftpt.h 2980 2013-09-14 21:51:47Z scribe $
+ *
+ * Copyright 2004-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
#ifndef CURLFTPT_H
#define CURLFTPT_H
#include <defs.h>
-#include <ftptrans.h>
+#include <remotetrans.h>
SWORD_NAMESPACE_START
class CURL;
-// initialize/cleanup SYSTEMWIDE library with life of this static.
-class CURLFTPTransport_init {
-public:
- CURLFTPTransport_init();
- ~CURLFTPTransport_init();
-};
-
-class SWDLLEXPORT CURLFTPTransport : public FTPTransport {
+class SWDLLEXPORT CURLFTPTransport : public RemoteTransport {
CURL *session;
public:
diff --git a/include/curlhttpt.h b/include/curlhttpt.h
index f48cab4..8079583 100644
--- a/include/curlhttpt.h
+++ b/include/curlhttpt.h
@@ -1,42 +1,37 @@
/******************************************************************************
-* curlhttpt.h - code for CURL impl of HTTP Transport
-*
-* $Id: swbuf.h 2218 2008-12-23 09:33:38Z scribe $
-*
-* Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
-* CrossWire Bible Society
-* P. O. Box 2528
-* Tempe, AZ 85280-2528
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation version 2.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-*/
+ *
+ * curlhttpt.h - code for CURL impl of HTTP Transport
+ *
+ * $Id: curlhttpt.h 2980 2013-09-14 21:51:47Z scribe $
+ *
+ * Copyright 2009-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
#ifndef CURLHTTPT_H
#define CURLHTTPT_H
#include <defs.h>
-#include <ftptrans.h>
+#include <remotetrans.h>
SWORD_NAMESPACE_START
class CURL;
-// initialize/cleanup SYSTEMWIDE library with life of this static.
-class CURLHTTPTransport_init {
-public:
- CURLHTTPTransport_init();
- ~CURLHTTPTransport_init();
-};
-
-class SWDLLEXPORT CURLHTTPTransport : public FTPTransport {
+class SWDLLEXPORT CURLHTTPTransport : public RemoteTransport {
CURL *session;
public:
diff --git a/include/defs.h b/include/defs.h
index d6884d3..fd1ebf5 100644
--- a/include/defs.h
+++ b/include/defs.h
@@ -1,5 +1,26 @@
+/******************************************************************************
+ *
+ * defs.h - Global defines, mostly platform-specific stuff
+ *
+ * $Id: defs.h 2942 2013-08-03 08:39:02Z chrislit $
+ *
+ * Copyright 2000-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
// ----------------------------------------------------------------------------
-// Making or using sword as a Windows DLL
+//
// ----------------------------------------------------------------------------
#ifndef SWORDDEFS_H
#define SWORDDEFS_H
@@ -48,6 +69,9 @@ SWORD_NAMESPACE_START
# define SWDLLEXPORT_CTORFN
# endif
+# define SWDEPRECATED __declspec(deprecated("** WARNING: deprecated method **"))
+
+
#elif defined(__SWPM__)
# ifdef SWMAKINGDLL
@@ -64,6 +88,9 @@ SWORD_NAMESPACE_START
# define SWDLLEXPORT_CTORFN
# endif
+# define SWDEPRECATED
+
+
#elif defined(__GNUWIN32__)
# ifdef SWMAKINGDLL
@@ -80,6 +107,9 @@ SWORD_NAMESPACE_START
# define SWDLLEXPORT_CTORFN
# endif
+# define SWDEPRECATED __attribute__((__deprecated__))
+
+
#elif defined(__BORLANDC__)
# ifdef SWMAKINGDLL
# define SWDLLEXPORT _export
@@ -95,12 +125,26 @@ SWORD_NAMESPACE_START
# define SWDLLEXPORT_CTORFN
# endif
+#define COMMENT SLASH(/)
+#define SLASH(s) /##s
+# define SWDEPRECATED COMMENT
+
+
+#elif defined(__GNUC__)
+# define SWDLLEXPORT
+# define SWDLLEXPORT_DATA(type) type
+# define SWDLLEXPORT_CTORFN
+# define SWDEPRECATED __attribute__((__deprecated__))
+
+
#else
# define SWDLLEXPORT
# define SWDLLEXPORT_DATA(type) type
# define SWDLLEXPORT_CTORFN
+# define SWDEPRECATED
#endif
+
// For ostream, istream ofstream
#if defined(__BORLANDC__) && defined( _RTLDLL )
# define SWDLLIMPORT __import
@@ -108,9 +152,12 @@ SWORD_NAMESPACE_START
# define SWDLLIMPORT
#endif
+
+
enum {DIRECTION_LTR = 0, DIRECTION_RTL, DIRECTION_BIDI};
-enum {FMT_UNKNOWN = 0, FMT_PLAIN, FMT_THML, FMT_GBF, FMT_HTML, FMT_HTMLHREF, FMT_RTF, FMT_OSIS, FMT_WEBIF, FMT_TEI};
-enum {ENC_UNKNOWN = 0, ENC_LATIN1, ENC_UTF8, ENC_UTF16, ENC_RTF, ENC_HTML};
+enum {FMT_UNKNOWN = 0, FMT_PLAIN, FMT_THML, FMT_GBF, FMT_HTML, FMT_HTMLHREF, FMT_RTF, FMT_OSIS, FMT_WEBIF, FMT_TEI, FMT_XHTML};
+enum {ENC_UNKNOWN = 0, ENC_LATIN1, ENC_UTF8, ENC_SCSU, ENC_UTF16, ENC_RTF, ENC_HTML};
+enum {BIB_BIBTEX = 0, /* possible future formats: BIB_MARCXML, BIB_MARC21, BIB_DCMI BIB_OSISHEADER, BIB_SBL_XHTML, BIB_MLA_XHTML, BIB_APA_XHTML, BIB_CHICAGO_XHTML */};
SWORD_NAMESPACE_END
#endif //SWORDDEFS_H
diff --git a/include/echomod.h b/include/echomod.h
index c3873b4..978a3eb 100644
--- a/include/echomod.h
+++ b/include/echomod.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * echomod.h - code for class 'EchoMod' - a test module that just echo back
- * text of key.
*
- * $Id: echomod.h 1864 2005-11-20 06:06:40Z scribe $
+ * echomod.h - code for class 'EchoMod' - a test module that just echo back
+ * text of key.
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: echomod.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1996-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -34,7 +35,7 @@ class SWDLLEXPORT EchoMod : public SWText
public:
EchoMod();
virtual ~EchoMod();
- virtual SWBuf &getRawEntryBuf();
+ virtual SWBuf &getRawEntryBuf() const;
};
SWORD_NAMESPACE_END
diff --git a/include/encfiltmgr.h b/include/encfiltmgr.h
index 8afc208..bf62756 100644
--- a/include/encfiltmgr.h
+++ b/include/encfiltmgr.h
@@ -1,9 +1,12 @@
/******************************************************************************
- * swencodingmgr.h - definition of class SWEncodingMgr, subclass of
- * used to transcode all module text to a requested
- * markup.
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * encfiltmgr.h - definition of class SWEncodingMgr, subclass of
+ * used to transcode all module text to a requested
+ * markup
+ *
+ * $Id: encfiltmgr.h 2846 2013-06-29 14:48:47Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -37,6 +40,7 @@ class SWDLLEXPORT EncodingFilterMgr : public SWFilterMgr {
protected:
SWFilter *latin1utf8;
+ SWFilter *scsuutf8;
SWFilter *targetenc;
diff --git a/include/entriesblk.h b/include/entriesblk.h
index 833be03..6ef7a1e 100644
--- a/include/entriesblk.h
+++ b/include/entriesblk.h
@@ -1,3 +1,25 @@
+/******************************************************************************
+ *
+ * entriesblk.h - Implementation of EntriesBlock
+ *
+ * $Id: entriesblk.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
#ifndef ENTRIESBLK_H
#define ENTRIESBLK_H
diff --git a/include/femain.h b/include/femain.h
index 5f4da3f..3eec2c6 100644
--- a/include/femain.h
+++ b/include/femain.h
@@ -1,8 +1,10 @@
-/*
+/******************************************************************************
*
- * $Id: femain.h 1688 2005-01-01 04:42:26Z scribe $
+ * femain.h - Implementation of FEMain
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: femain.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1998-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/filemgr.h b/include/filemgr.h
index 6ee584d..eedfbcc 100644
--- a/include/filemgr.h
+++ b/include/filemgr.h
@@ -1,23 +1,24 @@
/******************************************************************************
-* filemgr.h - definition of class FileMgr used for pooling file handles
-*
-* $Id: filemgr.h 2295 2009-03-29 17:11:27Z scribe $
-*
-* Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
-* CrossWire Bible Society
-* P. O. Box 2528
-* Tempe, AZ 85280-2528
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation version 2.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-*/
+ *
+ * filemgr.h - definition of class FileMgr used for pooling file handles
+ *
+ * $Id: filemgr.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1998-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
#ifndef FILEMGR_H
#define FILEMGR_H
diff --git a/include/flatapi.h b/include/flatapi.h
index 1123a0e..4c59ba6 100644
--- a/include/flatapi.h
+++ b/include/flatapi.h
@@ -1,10 +1,10 @@
/******************************************************************************
- * swordapi.h - This file contains an api usable by non-C++
- * environments
*
- * $Id: flatapi.h 2324 2009-04-20 18:40:15Z scribe $
+ * flatapi.h - This file contains an api usable by non-C++ environments
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: flatapi.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2002-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/ftplib.h b/include/ftplib.h
index 75a90ae..8eb722f 100644
--- a/include/ftplib.h
+++ b/include/ftplib.h
@@ -1,28 +1,33 @@
/***************************************************************************/
/* ftplib.h - header file for callable ftp access routines */
/* Copyright (C) 1996, 1997 Thomas Pfau, pfau@cnj.digex.net */
-/* 73 Catherine Street, South Bound Brook, NJ, 08880 */
-/* */
-/* This library is free software; you can redistribute it and/or */
-/* modify it under the terms of the GNU Library General Public */
-/* License as published by the Free Software Foundation; either */
-/* version 2 of the License, or (at your option) any later version. */
-/* */
-/* This library is distributed in the hope that it will be useful, */
-/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU */
-/* Library General Public License for more details. */
-/* */
-/* You should have received a copy of the GNU Library General Public */
-/* License along with this progam; if not, write to the */
-/* Free Software Foundation, Inc., 59 Temple Place - Suite 330, */
-/* Boston, MA 02111-1307, USA. */
-/* */
+/* 73 Catherine Street, South Bound Brook, NJ, 08880 */
+/* */
+/* This library is free software; you can redistribute it and/or */
+/* modify it under the terms of the GNU Library General Public */
+/* License as published by the Free Software Foundation; either */
+/* version 2 of the License, or (at your option) any later version. */
+/* */
+/* This library is distributed in the hope that it will be useful, */
+/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
+/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU */
+/* Library General Public License for more details. */
+/* */
+/* You should have received a copy of the GNU Library General Public */
+/* License along with this progam; if not, write to the */
+/* Free Software Foundation, Inc., 59 Temple Place - Suite 330, */
+/* Boston, MA 02111-1307, USA. */
+/* */
/***************************************************************************/
#if !defined(__FTPLIB_H)
#define __FTPLIB_H
+#ifndef _FTPLIB_NO_COMPAT
+#define _FTPLIB_NO_COMPAT
+#endif
+
+
#if defined(__unix__) || defined(VMS)
#define GLOBALDEF
#define GLOBALREF extern
@@ -50,13 +55,14 @@
/* connection modes */
#define FTPLIB_PASSIVE 1
#define FTPLIB_PORT 2
-
/* connection option names */
#define FTPLIB_CONNMODE 1
#define FTPLIB_CALLBACK 2
#define FTPLIB_IDLETIME 3
#define FTPLIB_CALLBACKARG 4
#define FTPLIB_CALLBACKBYTES 5
+#define FTPLIB_CALLBACK_WRITER 6
+#define FTPLIB_CALLBACK_WRITERARG 7
#ifdef __cplusplus
extern "C" {
@@ -64,6 +70,7 @@ extern "C" {
typedef struct NetBuf netbuf;
typedef int (*FtpCallback)(netbuf *nControl, int xfered, void *arg);
+typedef int (*FtpCallbackWriter)(netbuf *nControl, const void *buffer, size_t size, void *arg);
/* v1 compatibility stuff */
#if !defined(_FTPLIB_NO_COMPAT)
diff --git a/include/ftplibftpt.h b/include/ftplibftpt.h
index d07c68b..135cd83 100644
--- a/include/ftplibftpt.h
+++ b/include/ftplibftpt.h
@@ -1,43 +1,38 @@
/******************************************************************************
-* ftplibftpt.h - code for ftplib impl of FTP Transport
-*
-* $Id: swbuf.h 2218 2008-12-23 09:33:38Z scribe $
-*
-* Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
-* CrossWire Bible Society
-* P. O. Box 2528
-* Tempe, AZ 85280-2528
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation version 2.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-*/
+ *
+ * ftplibftpt.h - code for ftplib impl of FTP Transport
+ * (FTPLibFTPTransport)
+ *
+ * $Id: ftplibftpt.h 2980 2013-09-14 21:51:47Z scribe $
+ *
+ * Copyright 2004-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
#ifndef FTPLIBFTPT_H
#define FTPLIBFTPT_H
#include <defs.h>
-#include <ftptrans.h>
+#include <remotetrans.h>
typedef struct NetBuf netbuf;
SWORD_NAMESPACE_START
-// initialize/cleanup SYSTEMWIDE library with life of this static.
-class FTPLibFTPTransport_init {
-public:
- FTPLibFTPTransport_init();
- ~FTPLibFTPTransport_init();
-};
-
-
-class SWDLLEXPORT FTPLibFTPTransport : public FTPTransport {
+class SWDLLEXPORT FTPLibFTPTransport : public RemoteTransport {
netbuf *ftpConnection;
char assureLoggedIn();
diff --git a/include/gbffootnotes.h b/include/gbffootnotes.h
index 22ca18f..15351ad 100644
--- a/include/gbffootnotes.h
+++ b/include/gbffootnotes.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: gbffootnotes.h 1688 2005-01-01 04:42:26Z scribe $
+ * gbffootnotes.h - Implementation of GBFFootnotes
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: gbffootnotes.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/gbfheadings.h b/include/gbfheadings.h
index b847f79..6c7ee31 100644
--- a/include/gbfheadings.h
+++ b/include/gbfheadings.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: gbfheadings.h 2068 2007-08-31 06:40:23Z scribe $
+ * gbfheadings.h - Implementation of GBFHeadings
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: gbfheadings.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/gbfhtml.h b/include/gbfhtml.h
index 5879d8e..433d6f3 100644
--- a/include/gbfhtml.h
+++ b/include/gbfhtml.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: gbfhtml.h 1688 2005-01-01 04:42:26Z scribe $
+ * gbfhtml.h - Implementation of GBFHTML
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: gbfhtml.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1999-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/gbfhtmlhref.h b/include/gbfhtmlhref.h
index 0c849ad..5934fa6 100644
--- a/include/gbfhtmlhref.h
+++ b/include/gbfhtmlhref.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: gbfhtmlhref.h 1688 2005-01-01 04:42:26Z scribe $
+ * gbfhtmlhref.h - Implementation of GBFHTMLHREF
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: gbfhtmlhref.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -28,6 +30,7 @@ SWORD_NAMESPACE_START
/** this filter converts GBF text to HTML text with hrefs
*/
class SWDLLEXPORT GBFHTMLHREF : public SWBasicFilter {
+ bool renderNoteNumbers;
protected:
class MyUserData : public BasicFilterUserData {
public:
@@ -41,6 +44,7 @@ protected:
virtual bool handleToken(SWBuf &buf, const char *token, BasicFilterUserData *userData);
public:
GBFHTMLHREF();
+ void setRenderNoteNumbers(bool val = true) { renderNoteNumbers = val; }
};
SWORD_NAMESPACE_END
diff --git a/include/gbfmorph.h b/include/gbfmorph.h
index 87e5b78..1352b9c 100644
--- a/include/gbfmorph.h
+++ b/include/gbfmorph.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: gbfmorph.h 2068 2007-08-31 06:40:23Z scribe $
+ * gbfmorph.h - Implementation of GBFMorph
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: gbfmorph.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/gbfosis.h b/include/gbfosis.h
index edcbc87..7462118 100644
--- a/include/gbfosis.h
+++ b/include/gbfosis.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: gbfosis.h 1864 2005-11-20 06:06:40Z scribe $
+ * gbfosis.h - Implementation of GBFOSIS
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: gbfosis.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2002-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/gbfplain.h b/include/gbfplain.h
index 3ac9f98..c661d29 100644
--- a/include/gbfplain.h
+++ b/include/gbfplain.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: gbfplain.h 2068 2007-08-31 06:40:23Z scribe $
+ * gbfplain.h - Implementation of GBFPlain
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: gbfplain.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997k-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/gbfredletterwords.h b/include/gbfredletterwords.h
index 26941b8..4fa1963 100644
--- a/include/gbfredletterwords.h
+++ b/include/gbfredletterwords.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: gbfredletterwords.h 1688 2005-01-01 04:42:26Z scribe $
+ * gbfredletterwords.h - Implementation of GBFRedLetterWords
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: gbfredletterwords.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/gbfrtf.h b/include/gbfrtf.h
index 907dfbd..6305767 100644
--- a/include/gbfrtf.h
+++ b/include/gbfrtf.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: gbfrtf.h 1688 2005-01-01 04:42:26Z scribe $
+ * gbfrtf.h - Implementation of GBFRTF
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: gbfrtf.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/gbfstrongs.h b/include/gbfstrongs.h
index 0d08eb2..14534a3 100644
--- a/include/gbfstrongs.h
+++ b/include/gbfstrongs.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: gbfstrongs.h 1688 2005-01-01 04:42:26Z scribe $
+ * gbfstrongs.h - Implementation of GBFStrongs
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: gbfstrongs.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1999-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/gbfthml.h b/include/gbfthml.h
index 0c650ab..2659a81 100644
--- a/include/gbfthml.h
+++ b/include/gbfthml.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: gbfthml.h 1688 2005-01-01 04:42:26Z scribe $
+ * gbfhtml.h - Implementation of GBFHTML
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: gbfthml.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1999-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/gbfwebif.h b/include/gbfwebif.h
index ae96f92..5ecf512 100644
--- a/include/gbfwebif.h
+++ b/include/gbfwebif.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: gbfwebif.h 1688 2005-01-01 04:42:26Z scribe $
+ * gbfwebif.h - Implementation of GBFWEBIF
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: gbfwebif.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -21,13 +23,13 @@
#ifndef GBFWEBIF_H
#define GBFWEBIF_H
-#include <gbfhtmlhref.h>
+#include <gbfxhtml.h>
SWORD_NAMESPACE_START
-/** this filter converts GBF text to HTML text with hrefs
+/** this filter converts GBF text to classed XHTML for web interfaces
*/
-class SWDLLEXPORT GBFWEBIF : public GBFHTMLHREF {
+class SWDLLEXPORT GBFWEBIF : public GBFXHTML {
const SWBuf baseURL;
const SWBuf passageStudyURL;
diff --git a/include/gbfwordjs.h b/include/gbfwordjs.h
index 5f31d29..ef93792 100644
--- a/include/gbfwordjs.h
+++ b/include/gbfwordjs.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: gbfwordjs.h 1688 2005-01-01 04:42:26Z scribe $
+ * gbfwordjs.h - Implementation of GBFWordJS
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: gbfwordjs.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2005-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/gbfxhtml.h b/include/gbfxhtml.h
new file mode 100644
index 0000000..616ccd0
--- /dev/null
+++ b/include/gbfxhtml.h
@@ -0,0 +1,52 @@
+/******************************************************************************
+ *
+ * gbfxhtml.h - Implementation of GBFXHTML
+ *
+ * $Id: gbfxhtml.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2011-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
+#ifndef GBFXHTML_H
+#define GBFXHTML_H
+
+#include <swbasicfilter.h>
+
+SWORD_NAMESPACE_START
+
+/** this filter converts GBF text to classed XHTML text
+ */
+class SWDLLEXPORT GBFXHTML : public SWBasicFilter {
+ bool renderNoteNumbers;
+protected:
+ class MyUserData : public BasicFilterUserData {
+ public:
+ MyUserData(const SWModule *module, const SWKey *key);
+ bool hasFootnotePreTag;
+ SWBuf version;
+ };
+ virtual BasicFilterUserData *createUserData(const SWModule *module, const SWKey *key) {
+ return new MyUserData(module, key);
+ }
+ virtual bool handleToken(SWBuf &buf, const char *token, BasicFilterUserData *userData);
+public:
+ GBFXHTML();
+ virtual const char *getHeader() const;
+ void setRenderNoteNumbers(bool val = true) { renderNoteNumbers = val; }
+};
+
+SWORD_NAMESPACE_END
+#endif
diff --git a/include/greeklexattribs.h b/include/greeklexattribs.h
index 8dfb7d6..4055b5a 100644
--- a/include/greeklexattribs.h
+++ b/include/greeklexattribs.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: greeklexattribs.h 1864 2005-11-20 06:06:40Z scribe $
+ * greeklexattribs.h - Implementation of GreekLexAttribs
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: greeklexattribs.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2002-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/hebrewmcim.h b/include/hebrewmcim.h
index 3c9aa63..ffcb9a1 100644
--- a/include/hebrewmcim.h
+++ b/include/hebrewmcim.h
@@ -1,3 +1,25 @@
+/******************************************************************************
+ *
+ * hebrewmcim.h - Implementation of HebrewMCIM
+ *
+ * $Id: hebrewmcim.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
#ifndef HEBREWMCIM_H
#define HEBREWMCIM_H
diff --git a/include/hrefcom.h b/include/hrefcom.h
index 83d71e6..638b561 100644
--- a/include/hrefcom.h
+++ b/include/hrefcom.h
@@ -1,11 +1,12 @@
/******************************************************************************
- * hrefcom.h - code for class 'HREFCom'- a module that produces HTML HREFs
- * pointing to actual text desired. Uses standard
- * files: ot and nt using indexs ??.bks ??.cps ??.vss
*
- * $Id: hrefcom.h 1688 2005-01-01 04:42:26Z scribe $
+ * hrefcom.h - code for class 'HREFCom'- a module that produces HTML HREFs
+ * pointing to actual text desired. Uses standard
+ * files: ot and nt using indexs ??.bks ??.cps ??.vss
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: hrefcom.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1998-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -40,7 +41,7 @@ public:
HREFCom(const char *ipath, const char *prefix, const char *iname = 0,
const char *idesc = 0, SWDisplay * idisp = 0);
virtual ~HREFCom();
- virtual SWBuf &getRawEntryBuf();
+ virtual SWBuf &getRawEntryBuf() const;
// OPERATORS -----------------------------------------------------------------
diff --git a/include/installmgr.h b/include/installmgr.h
index b3972b6..56ebf7e 100644
--- a/include/installmgr.h
+++ b/include/installmgr.h
@@ -1,3 +1,25 @@
+/******************************************************************************
+ *
+ * installmgr.h - Implementation of InstallMgr
+ *
+ * $Id: installmgr.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2002-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
#ifndef INSTALLMGR_H
#define INSTALLMGR_H
@@ -11,7 +33,7 @@ SWORD_NAMESPACE_START
class SWMgr;
class SWModule;
class SWConfig;
-class FTPTransport;
+class RemoteTransport;
class StatusReporter;
/** A remote installation source configuration
@@ -55,19 +77,19 @@ protected:
bool passive;
SWBuf u, p;
- /** override this method and provide your own custom FTPTransport subclass
+ /** override this method and provide your own custom RemoteTransport subclass
*/
- virtual FTPTransport *createFTPTransport(const char *host, StatusReporter *statusReporter);
+ virtual RemoteTransport *createFTPTransport(const char *host, StatusReporter *statusReporter);
- /** override this method and provide your own custom HTTP RemoteTransport (still called FTPTransport in pre 1.7.x) subclass
+ /** override this method and provide your own custom HTTP RemoteTransport
*/
- virtual FTPTransport *createHTTPTransport(const char *host, StatusReporter *statusReporter);
+ virtual RemoteTransport *createHTTPTransport(const char *host, StatusReporter *statusReporter);
/** we have a transport member to set as current running transport so we
* can ask it to terminate below, if user requests
*/
- FTPTransport *transport;
+ RemoteTransport *transport;
public:
@@ -109,9 +131,9 @@ public:
*/
virtual int removeModule(SWMgr *manager, const char *modName);
- /** mostly an internally used method to ftp download from an remote source to a local destination
+ /** mostly an internally used method to remote download from a remote source to a local destination
*/
- virtual int ftpCopy(InstallSource *is, const char *src, const char *dest, bool dirTransfer = false, const char *suffix = "");
+ virtual int remoteCopy(InstallSource *is, const char *src, const char *dest, bool dirTransfer = false, const char *suffix = "");
/** call to install a module from a local path (fromLocation) or remote InstallSource (is) (leave the other 0)
*/
@@ -214,7 +236,7 @@ A sample implementation, roughly taken from the windows installmgr:
return false;
}
*/
- virtual bool getCipherCode(const char *modName, SWConfig *config) { return false; }
+ virtual bool getCipherCode(const char *modName, SWConfig *config) { (void) modName; (void) config; return false; }
diff --git a/include/latin1utf16.h b/include/latin1utf16.h
index 582a89b..a8f982a 100644
--- a/include/latin1utf16.h
+++ b/include/latin1utf16.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: latin1utf16.h 1688 2005-01-01 04:42:26Z scribe $
+ * latin1utf16.h - Implementation of Latin1UTF16
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: latin1utf16.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/latin1utf8.h b/include/latin1utf8.h
index 1de302d..09767e9 100644
--- a/include/latin1utf8.h
+++ b/include/latin1utf8.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: latin1utf8.h 1688 2005-01-01 04:42:26Z scribe $
+ * latin1utf8.h - Implementation of Latin1UTF8
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: latin1utf8.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/listkey.h b/include/listkey.h
index 2c0a611..a388a06 100644
--- a/include/listkey.h
+++ b/include/listkey.h
@@ -1,12 +1,12 @@
/******************************************************************************
- * listkey.h - code for base class 'listkey'. listkey is the basis for all
- * types of keys for indexing into modules
- * (e.g. verse, word,
- * place, etc.)
*
- * $Id: listkey.h 2195 2008-09-11 00:20:58Z scribe $
+ * listkey.h - code for base class 'listkey'. listkey is the basis for all
+ * types of keys for indexing into modules
+ * (e.g. verse, word, place, etc.)
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: listkey.h 2893 2013-07-16 03:07:02Z scribe $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -64,26 +64,36 @@ public:
/** Clears out elements of list
*/
virtual void clear();
+ // deprecated, use clear(), instead
+ SWDEPRECATED virtual void ClearList() { clear(); }
- /** deprecated, use clear(), instead
- */
- virtual void ClearList() { clear(); }
- /** Returns number of elements in list
- * @return number of elements in list
+ /** Returns number of key elements in list
+ * @return number of key elements in list
*/
- virtual int Count();
+ virtual int getCount() const;
+ //deprecated, use getCount
+ SWDEPRECATED virtual int Count() { return getCount(); }
/** Removes current element from list
*/
- virtual void Remove();
+ virtual void remove();
+ // deprecated use remove
+ SWDEPRECATED virtual void Remove() { remove(); }
+
- /** Sets key to element number
+ /** Sets container to subkey element number and repositions that subkey to either top or bottom
*
- * @param ielement element number to set to
+ * @param ielement - element number to set to
+ * @param pos - set the subkey element to position (TOP) or BOTTOM
* @return error status
+ * deprecated use setToElement
*/
- virtual char SetToElement(int ielement, SW_POSITION = TOP);
+ virtual char setToElement(int ielement, SW_POSITION = TOP);
+ // deprecated use setToElement
+ SWDEPRECATED virtual char SetToElement(int ielement, SW_POSITION pos = TOP) { return setToElement(ielement, pos); }
+
+
/** Gets a key element number
*
@@ -91,9 +101,10 @@ public:
* @return Key or null on error
*/
virtual SWKey *getElement(int pos = -1);
+ virtual const SWKey *getElement(int pos = -1) const;
// deprecated, use above function
- virtual SWKey *GetElement(int pos = -1) { return getElement(pos); }
+ SWDEPRECATED virtual SWKey *GetElement(int pos = -1) { return getElement(pos); }
/** Adds an element to the list
* @param ikey the element to add
@@ -124,15 +135,16 @@ public:
virtual void increment(int step = 1);
virtual bool isTraversable() const { return true; }
- virtual long Index() const { return arraypos; }
+ virtual long getIndex() const { return arraypos; }
virtual const char *getRangeText() const;
virtual const char *getOSISRefRangeText() const;
+ virtual const char *getShortText() const;
/**
* Returns the index for the new one given as as parameter.
* The first parameter is the new index.
*/
- virtual long Index(long index) { SetToElement(index); return Index (); }
+ virtual void setIndex(long index) { setToElement(index); }
virtual const char *getText() const;
virtual void setText(const char *ikey);
virtual void sort();
diff --git a/include/localemgr.h b/include/localemgr.h
index 9e30160..ac9492c 100644
--- a/include/localemgr.h
+++ b/include/localemgr.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * localemgr.h - definition of class LocaleMgr used to interact with
- * registered locales for a sword installation
*
- * $Id: localemgr.h 1864 2005-11-20 06:06:40Z scribe $
+ * localemgr.h - definition of class LocaleMgr used to interact with
+ * registered locales for a sword installation
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: localemgr.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2000-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/lzsscomprs.h b/include/lzsscomprs.h
index 67732a3..b960a55 100644
--- a/include/lzsscomprs.h
+++ b/include/lzsscomprs.h
@@ -1,9 +1,11 @@
/******************************************************************************
- * lzsscomprs.h - definition of Class SWCompress used for data compression
*
- * $Id: lzsscomprs.h 1688 2005-01-01 04:42:26Z scribe $
+ * lzsscomprs.h - definition of Class SWCompress used for data
+ * compression
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: lzsscomprs.h 2935 2013-08-02 11:06:30Z scribe $
+ *
+ * Copyright 1999-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -28,54 +30,15 @@
SWORD_NAMESPACE_START
-// The following are constant sizes used by the compression algorithm.
-//
-// N - This is the size of the ring buffer. It is set
-// to 4K. It is important to note that a position
-// within the ring buffer requires 12 bits.
-//
-// F - This is the maximum length of a character sequence
-// that can be taken from the ring buffer. It is set
-// to 18. Note that a length must be 3 before it is
-// worthwhile to store a position/length pair, so the
-// length can be encoded in only 4 bits. Or, put yet
-// another way, it is not necessary to encode a length
-// of 0-18, it is necessary to encode a length of
-// 3-18, which requires 4 bits.
-//
-// THRESHOLD - It takes 2 bytes to store an offset and
-// a length. If a character sequence only
-// requires 1 or 2 characters to store
-// uncompressed, then it is better to store
-// it uncompressed than as an offset into
-// the ring buffer.
-//
-// Note that the 12 bits used to store the position and the 4 bits
-// used to store the length equal a total of 16 bits, or 2 bytes.
-
-#define N 4096
-#define F 18
-#define THRESHOLD 3
-#define NOT_USED N
-
-
-
-class SWDLLEXPORT LZSSCompress:public SWCompress
+class SWDLLEXPORT LZSSCompress : public SWCompress
{
- static unsigned char m_ring_buffer[N + F - 1];
- static short int m_match_position;
- static short int m_match_length;
- static short int m_lson[N + 1];
- static short int m_rson[N + 257];
- static short int m_dad[N + 1];
- void InitTree ();
- void InsertNode (short int Pos);
- void DeleteNode (short int Node);
+class Private;
+ Private *p;
public:
- LZSSCompress ();
- virtual ~ LZSSCompress ();
- virtual void Encode (void);
- virtual void Decode (void);
+ LZSSCompress ();
+ virtual ~LZSSCompress();
+ virtual void Encode(void);
+ virtual void Decode(void);
};
SWORD_NAMESPACE_END
diff --git a/include/markupfiltmgr.h b/include/markupfiltmgr.h
index 5d9faa6..abef624 100644
--- a/include/markupfiltmgr.h
+++ b/include/markupfiltmgr.h
@@ -1,9 +1,10 @@
/******************************************************************************
- * swmarkupmgr.h - definition of class SWMarkupMgr, subclass of
- * used to transcode all module text to a requested
- * markup.
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * markupfiltmgr.h - definition of class SWMarkupMgr, subclass of
+ * used to transcode all module text to a requested
+ * markup
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/multimapwdef.h b/include/multimapwdef.h
index 89b79a9..956a231 100644
--- a/include/multimapwdef.h
+++ b/include/multimapwdef.h
@@ -1,5 +1,27 @@
-#ifndef MULTIMAPWDEF
-#define MULTIMAPWDEF
+/******************************************************************************
+ *
+ * multimapwdef.h - Implementation of multimapwithdefault
+ *
+ * $Id: multimapwdef.h 2935 2013-08-02 11:06:30Z scribe $
+ *
+ * Copyright 2002-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
+#ifndef MULTIMAPWDEF_H
+#define MULTIMAPWDEF_H
#include <map>
@@ -19,14 +41,14 @@ public:
}
T& operator[](const Key& k) {
- if (find(k) == this->end()) {
- insert(value_type(k, T()));
+ if (this->find(k) == this->end()) {
+ this->insert(value_type(k, T()));
}
- return (*(find(k))).second;
+ return (*(this->find(k))).second;
}
bool has(const Key& k, const T &val) const {
- typename std::multimap<Key, T, Compare>::const_iterator start = lower_bound(k);
- typename std::multimap<Key, T, Compare>::const_iterator end = upper_bound(k);
+ typename std::multimap<Key, T, Compare>::const_iterator start = this->lower_bound(k);
+ typename std::multimap<Key, T, Compare>::const_iterator end = this->upper_bound(k);
for (; start!=end; start++) {
if (start->second == val)
return true;
diff --git a/include/nullim.h b/include/nullim.h
index 217c38f..b07c99e 100644
--- a/include/nullim.h
+++ b/include/nullim.h
@@ -1,3 +1,25 @@
+/******************************************************************************
+ *
+ * nullim.h - Implementation of NullIM
+ *
+ * $Id: nullim.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
#ifndef NULLIM_H
#define NULLIM_H
diff --git a/include/osisruby.h b/include/osisenum.h
index 07cbe49..29b312d 100644
--- a/include/osisruby.h
+++ b/include/osisenum.h
@@ -1,38 +1,40 @@
-/******************************************************************************
- *
- * $Id: osisruby.h 1688 2005-01-01 04:42:26Z scribe $
- *
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
- * CrossWire Bible Society
- * P. O. Box 2528
- * Tempe, AZ 85280-2528
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the
- * Free Software Foundation version 2.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- */
-
-#ifndef OSISRUBY_H
-#define OSISRUBY_H
-
-#include <swoptfilter.h>
-
-SWORD_NAMESPACE_START
-
-/** This Filter shows/hides headings in a OSIS text
- */
-class SWDLLEXPORT OSISRuby : public SWOptionFilter {
-public:
- OSISRuby();
- virtual ~OSISRuby();
- virtual char processText(SWBuf &text, const SWKey *key = 0, const SWModule *module = 0);
-};
-
-SWORD_NAMESPACE_END
-#endif
+/******************************************************************************
+ *
+ * osisenum.h - Implementation of OSISEnum
+ *
+ * $Id: osisenum.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
+#ifndef OSISENUM_H
+#define OSISENUM_H
+
+#include <swoptfilter.h>
+
+SWORD_NAMESPACE_START
+
+/** This Filter shows/hides headings in a OSIS text
+ */
+class SWDLLEXPORT OSISEnum : public SWOptionFilter {
+public:
+ OSISEnum();
+ virtual ~OSISEnum();
+ virtual char processText(SWBuf &text, const SWKey *key = 0, const SWModule *module = 0);
+};
+
+SWORD_NAMESPACE_END
+#endif
diff --git a/include/osisfootnotes.h b/include/osisfootnotes.h
index 2478ce0..c5105d6 100644
--- a/include/osisfootnotes.h
+++ b/include/osisfootnotes.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: osisfootnotes.h 1688 2005-01-01 04:42:26Z scribe $
+ * osisfootnotes.h - Implementation of OSISFootnotes
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osisfootnotes.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/plainhtml.h b/include/osisglosses.h
index e09821a..028638d 100644
--- a/include/plainhtml.h
+++ b/include/osisglosses.h
@@ -1,8 +1,10 @@
-/***************************************************************************
+/******************************************************************************
*
- * $Id: plainhtml.h 1688 2005-01-01 04:42:26Z scribe $
+ * osisglosses.h - Implementation of OSISGlosses
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osisglosses.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -18,19 +20,19 @@
*
*/
-#ifndef PLAINHTML_H
-#define PLAINHTML_H
+#ifndef OSISGLOSSES_H
+#define OSISGLOSSES_H
-#include <swfilter.h>
+#include <swoptfilter.h>
SWORD_NAMESPACE_START
-/** this filter converts plain text to HTML text
- * @author Torsten Uhlmann, begin : Tue Jun 15 15:34:26 CEST 1999
+/** This Filter shows/hides headings in a OSIS text
*/
-class SWDLLEXPORT PLAINHTML : public SWFilter {
+class SWDLLEXPORT OSISGlosses : public SWOptionFilter {
public:
- PLAINHTML();
+ OSISGlosses();
+ virtual ~OSISGlosses();
virtual char processText(SWBuf &text, const SWKey *key = 0, const SWModule *module = 0);
};
diff --git a/include/osisheadings.h b/include/osisheadings.h
index fd1460a..2b4a56d 100644
--- a/include/osisheadings.h
+++ b/include/osisheadings.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: osisheadings.h 1688 2005-01-01 04:42:26Z scribe $
+ * osisheadings.h - Implementation of OSISHeadings
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osisheadings.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -22,16 +24,17 @@
#define OSISHEADINGS_H
#include <swoptfilter.h>
+#include <swbasicfilter.h>
SWORD_NAMESPACE_START
/** This Filter shows/hides headings in a OSIS text
*/
-class SWDLLEXPORT OSISHeadings : public SWOptionFilter {
+class SWDLLEXPORT OSISHeadings : public SWOptionFilter, public SWBasicFilter {
public:
OSISHeadings();
- virtual ~OSISHeadings();
- virtual char processText(SWBuf &text, const SWKey *key = 0, const SWModule *module = 0);
+ virtual BasicFilterUserData *createUserData(const SWModule *module, const SWKey *key);
+ virtual bool handleToken(SWBuf &buf, const char *token, BasicFilterUserData *userData);
};
SWORD_NAMESPACE_END
diff --git a/include/osishtmlhref.h b/include/osishtmlhref.h
index 4b381ab..dedd79b 100644
--- a/include/osishtmlhref.h
+++ b/include/osishtmlhref.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: osishtmlhref.h 2569 2010-10-14 14:13:34Z scribe $
+ * osishtmlhref.h - Implementation of OSISHTMLHREF
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osishtmlhref.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -30,6 +32,7 @@ SWORD_NAMESPACE_START
class SWDLLEXPORT OSISHTMLHREF : public SWBasicFilter {
private:
bool morphFirst;
+ bool renderNoteNumbers;
protected:
// used by derived classes so we have it in the header
class TagStacks;
@@ -58,6 +61,7 @@ protected:
public:
OSISHTMLHREF();
void setMorphFirst(bool val = true) { morphFirst = val; }
+ void setRenderNoteNumbers(bool val = true) { renderNoteNumbers = val; }
};
SWORD_NAMESPACE_END
diff --git a/include/osislemma.h b/include/osislemma.h
index c61dad4..e8ee747 100644
--- a/include/osislemma.h
+++ b/include/osislemma.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: osislemma.h 1688 2005-01-01 04:42:26Z scribe $
+ * osislemma.h - Implementation of OSISLemma
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osislemma.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/osismorph.h b/include/osismorph.h
index 85cd98f..b7454fd 100644
--- a/include/osismorph.h
+++ b/include/osismorph.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: osismorph.h 1688 2005-01-01 04:42:26Z scribe $
+ * osismorph.h - Implementation of OSISMorph
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osismorph.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/osismorphsegmentation.h b/include/osismorphsegmentation.h
index 807237d..d039011 100644
--- a/include/osismorphsegmentation.h
+++ b/include/osismorphsegmentation.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: osismorphsegmentation.h,v 1.3 2005/09/02 22:15:30 joachim Exp $
+ * osismorphsegmentation.h - Implementation of OSISMorphSegmentation
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osismorphsegmentation.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2006-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/osisosis.h b/include/osisosis.h
index 8f0304d..831864d 100644
--- a/include/osisosis.h
+++ b/include/osisosis.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: osisosis.h 1688 2005-01-01 04:42:26Z scribe $
+ * osisosis.h - Implementation of OSISOSIS
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osisosis.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2004-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/osisplain.h b/include/osisplain.h
index facbd67..5d728ca 100644
--- a/include/osisplain.h
+++ b/include/osisplain.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: osisplain.h 2187 2008-07-22 11:00:16Z scribe $
+ * osisplain.h - Implementation of OSISPlain
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osisplain.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/osisredletterwords.h b/include/osisredletterwords.h
index af63291..f8bdf07 100644
--- a/include/osisredletterwords.h
+++ b/include/osisredletterwords.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: osisredletterwords.h 1688 2005-01-01 04:42:26Z scribe $
+ * osisredletterwords.h - Implementation of OSISRedLetterWords
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osisredletterwords.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/osisreferencelinks.h b/include/osisreferencelinks.h
new file mode 100644
index 0000000..4c75850
--- /dev/null
+++ b/include/osisreferencelinks.h
@@ -0,0 +1,55 @@
+/******************************************************************************
+ *
+ * osisreferencelinks.h - SWFilter descendant to toggle OSIS reference
+ * links with specified type/subType
+ *
+ * $Id: osisreferencelinks.h 2995 2013-12-28 06:32:26Z greg.hellings $
+ *
+ * Copyright 2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
+#ifndef OSISREFERENCELINKS_H
+#define OSISREFERENCELINKS_H
+
+#include <swoptfilter.h>
+
+SWORD_NAMESPACE_START
+
+/** This Filter hides reference links with a particular type/subtype in an OSIS text
+ */
+class SWDLLEXPORT OSISReferenceLinks : public SWOptionFilter {
+ SWBuf optionName;
+ SWBuf optionTip;
+ SWBuf type;
+ SWBuf subType;
+public:
+
+ /**
+ * @param optionName - name of this option
+ * @param optionTip - user help tip for this option
+ * @param type - which reference types to hide
+ * @param subType - which reference subTypes to hide (optional)
+ * @param defaultValue - default value of option "On" or "Off" (optional)
+ */
+ OSISReferenceLinks(const char *optionName, const char *optionTip, const char *type, const char *subType = 0, const char *defaultValue = "On");
+ virtual ~OSISReferenceLinks();
+ virtual char processText(SWBuf &text, const SWKey *key = 0, const SWModule *module = 0);
+};
+
+SWORD_NAMESPACE_END
+#endif
+
+
diff --git a/include/osisrtf.h b/include/osisrtf.h
index e5ac9a7..8392356 100644
--- a/include/osisrtf.h
+++ b/include/osisrtf.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: osisrtf.h 1973 2006-09-20 04:09:16Z scribe $
+ * osisrtf.h - Implementation of OSISRTF
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osisrtf.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/osisscripref.h b/include/osisscripref.h
index d3e7362..5cb5d89 100644
--- a/include/osisscripref.h
+++ b/include/osisscripref.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: osisscripref.h 1688 2005-01-01 04:42:26Z scribe $
+ * osisscripref.h - Implementation of OSISScripRef
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osisscripref.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/osisstrongs.h b/include/osisstrongs.h
index c40d8c2..36a4c6d 100644
--- a/include/osisstrongs.h
+++ b/include/osisstrongs.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: osisstrongs.h 1688 2005-01-01 04:42:26Z scribe $
+ * osisstrongs.h - Implementation of OSISStrongs
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osisstrongs.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/osisvariants.h b/include/osisvariants.h
index 76f4806..e561d70 100644
--- a/include/osisvariants.h
+++ b/include/osisvariants.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: osisvariants.h 1688 2005-01-01 04:42:26Z scribe $
+ * osisvariants.h - Implementation of OSISVariants
*
- * Copyright 2001 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osisvariants.h 2980 2013-09-14 21:51:47Z scribe $
+ *
+ * Copyright 2006-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -29,25 +31,11 @@ SWORD_NAMESPACE_START
/** This Filter shows/hides textual variants
*/
class SWDLLEXPORT OSISVariants : public SWOptionFilter {
- char option;
-
- static const char primary[];
- static const char secondary[];
- static const char all[];
-
- static const char optName[];
- static const char optTip[];
- StringList options;
public:
OSISVariants();
virtual ~OSISVariants();
virtual char processText(SWBuf &text, const SWKey *key = 0, const SWModule *module = 0);
- virtual const char *getOptionName() { return optName; }
- virtual const char *getOptionTip() { return optTip; }
- virtual void setOptionValue(const char *ival);
- virtual const char *getOptionValue();
- virtual StringList getOptionValues() { return options; }
};
SWORD_NAMESPACE_END
diff --git a/include/osiswebif.h b/include/osiswebif.h
index 2de6b89..c58a379 100644
--- a/include/osiswebif.h
+++ b/include/osiswebif.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: osiswebif.h 1946 2006-07-15 20:41:24Z scribe $
+ * osiswebif.h - Implementation of OSISWEBIF
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osiswebif.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -21,20 +23,19 @@
#ifndef OSISWEBIF_H
#define OSISWEBIF_H
-#include <osishtmlhref.h>
+#include <osisxhtml.h>
SWORD_NAMESPACE_START
/** this filter converts OSIS text to HTML text with hrefs
*/
-class SWDLLEXPORT OSISWEBIF : public OSISHTMLHREF {
+class SWDLLEXPORT OSISWEBIF : public OSISXHTML {
const SWBuf baseURL;
const SWBuf passageStudyURL;
bool javascript;
protected:
virtual bool handleToken(SWBuf &buf, const char *token, BasicFilterUserData *userData);
- virtual BasicFilterUserData *createUserData(const SWModule *module, const SWKey *key);
public:
OSISWEBIF();
void setJavascript(bool mode) { javascript = mode; }
diff --git a/include/osiswordjs.h b/include/osiswordjs.h
index d278d11..fe6a316 100644
--- a/include/osiswordjs.h
+++ b/include/osiswordjs.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: osisstrongs.h 1688 2005-01-01 04:42:26Z scribe $
+ * osiswordjs.h - Implementation of OSISWordJS
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osiswordjs.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2005-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/osisxhtml.h b/include/osisxhtml.h
new file mode 100644
index 0000000..4065dcc
--- /dev/null
+++ b/include/osisxhtml.h
@@ -0,0 +1,74 @@
+/******************************************************************************
+ *
+ * osisxhtml.h - Render filter for classed XHTML of an OSIS module
+ *
+ * $Id: osisxhtml.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2011-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
+#ifndef OSISXHTML_H
+#define OSISXHTML_H
+
+#include <swbasicfilter.h>
+
+SWORD_NAMESPACE_START
+
+/** this filter converts OSIS text to classed XHTML
+ */
+class SWDLLEXPORT OSISXHTML : public SWBasicFilter {
+private:
+ bool morphFirst;
+ bool renderNoteNumbers;
+protected:
+
+ class TagStack;
+ // used by derived classes so we have it in the header
+ virtual BasicFilterUserData *createUserData(const SWModule *module, const SWKey *key);
+ virtual bool handleToken(SWBuf &buf, const char *token, BasicFilterUserData *userData);
+
+
+ class MyUserData : public BasicFilterUserData {
+ public:
+ bool osisQToTick;
+ bool inXRefNote;
+ bool BiblicalText;
+ int suspendLevel;
+ SWBuf wordsOfChristStart;
+ SWBuf wordsOfChristEnd;
+ TagStack *quoteStack;
+ TagStack *hiStack;
+ TagStack *titleStack;
+ TagStack *lineStack;
+ int consecutiveNewlines;
+ SWBuf lastTransChange;
+ SWBuf w;
+ SWBuf fn;
+ SWBuf version;
+
+ MyUserData(const SWModule *module, const SWKey *key);
+ ~MyUserData();
+ void outputNewline(SWBuf &buf);
+ };
+public:
+ OSISXHTML();
+ void setMorphFirst(bool val = true) { morphFirst = val; }
+ void setRenderNoteNumbers(bool val = true) { renderNoteNumbers = val; }
+ virtual const char *getHeader() const;
+};
+
+SWORD_NAMESPACE_END
+#endif
diff --git a/include/plainfootnotes.h b/include/osisxlit.h
index 74a8c4a..041981e 100644
--- a/include/plainfootnotes.h
+++ b/include/osisxlit.h
@@ -1,8 +1,10 @@
-/***************************************************************************
+/******************************************************************************
*
- * $Id: plainfootnotes.h 1688 2005-01-01 04:42:26Z scribe $
+ * osisxlit.h - Implementation of OSISXlit
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: osisxlit.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -18,22 +20,19 @@
*
*/
-#ifndef PLAINFOOTNOTES_H
-#define PLAINFOOTNOTES_H
+#ifndef OSISXLIT_H
+#define OSISXLIT_H
#include <swoptfilter.h>
SWORD_NAMESPACE_START
-class SWKey;
-
-/**Shows or hides footnotes in plain text.
- *@author The team of BibleTime
+/** This Filter shows/hides headings in a OSIS text
*/
-class SWDLLEXPORT PLAINFootnotes : public SWOptionFilter {
+class SWDLLEXPORT OSISXlit : public SWOptionFilter {
public:
- PLAINFootnotes();
- virtual ~PLAINFootnotes();
+ OSISXlit();
+ virtual ~OSISXlit();
virtual char processText(SWBuf &text, const SWKey *key = 0, const SWModule *module = 0);
};
diff --git a/include/papyriplain.h b/include/papyriplain.h
index 5498222..602b87d 100644
--- a/include/papyriplain.h
+++ b/include/papyriplain.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: papyriplain.h 1688 2005-01-01 04:42:26Z scribe $
+ * papyriplain.h - Implementation of PapyriPlain
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: papyriplain.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2005-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -18,8 +20,8 @@
*
*/
-#ifndef PapyriPLAIN_H
-#define PapyriPLAIN_H
+#ifndef PAPYRIPLAIN_H
+#define PAPYRIPLAIN_H
#include <swoptfilter.h>
diff --git a/include/rawcom.h b/include/rawcom.h
index 4811b40..26241a1 100644
--- a/include/rawcom.h
+++ b/include/rawcom.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * rawcom.h - code for class 'RawCom'- a module that reads raw commentary
- * files: ot and nt using indexs ??.bks ??.cps ??.vss
*
- * $Id: rawcom.h 2303 2009-04-06 13:38:34Z scribe $
+ * rawcom.h - code for class 'RawCom'- a module that reads raw commentary
+ * files: ot and nt using indexs ??.bks ??.cps ??.vss
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: rawcom.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -41,13 +42,13 @@ public:
const char *ilang = 0, const char *versification = "KJV");
virtual ~RawCom();
- virtual SWBuf &getRawEntryBuf();
+ virtual SWBuf &getRawEntryBuf() const;
virtual void increment(int steps = 1);
virtual void decrement(int steps = 1) { increment(-steps); }
// write interface ----------------------------
- virtual bool isWritable();
+ virtual bool isWritable() const;
static char createModule(const char *path, const char *v11n = "KJV") { return RawVerse::createModule(path, v11n); }
virtual void setEntry(const char *inbuf, long len = -1); // Modify current module entry
virtual void linkEntry(const SWKey *linkKey); // Link current module entry to other module entry
diff --git a/include/rawcom4.h b/include/rawcom4.h
index f489799..e5e39c4 100644
--- a/include/rawcom4.h
+++ b/include/rawcom4.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * rawcom.h - code for class 'RawCom4'- a module that reads raw commentary
- * files: ot and nt using indexs ??.bks ??.cps ??.vss
*
- * $Id: rawcom.h 1864 2005-11-20 06:06:40Z scribe $
+ * rawcom4.h - code for class 'RawCom4'- a module that reads raw commentary
+ * files: ot and nt using indexs ??.bks ??.cps ??.vss
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: rawcom4.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2007-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -41,13 +42,13 @@ public:
const char *ilang = 0, const char *versification = "KJV");
virtual ~RawCom4();
- virtual SWBuf &getRawEntryBuf();
+ virtual SWBuf &getRawEntryBuf() const;
virtual void increment(int steps = 1);
virtual void decrement(int steps = 1) { increment(-steps); }
// write interface ----------------------------
- virtual bool isWritable();
+ virtual bool isWritable() const;
static char createModule(const char *path, const char *v11n = "KJV") { return RawVerse4::createModule(path, v11n); }
virtual void setEntry(const char *inbuf, long len = -1); // Modify current module entry
virtual void linkEntry(const SWKey *linkKey); // Link current module entry to other module entry
diff --git a/include/rawfiles.h b/include/rawfiles.h
index 5cb765b..e7db160 100644
--- a/include/rawfiles.h
+++ b/include/rawfiles.h
@@ -1,11 +1,12 @@
/******************************************************************************
- * rawfiles.h - code for class 'RawFiles'- a module that produces HTML HREFs
- * pointing to actual text desired. Uses standard
+ *
+ * rawfiles.h - code for class 'RawFiles'- a module that produces HTML
+ * HREFs pointing to actual text desired. Uses standard
* files: ot and nt using indexs ??.bks ??.cps ??.vss
*
- * $Id: rawfiles.h 1864 2005-11-20 06:06:40Z scribe $
+ * $Id: rawfiles.h 2833 2013-06-29 06:40:28Z chrislit $
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * Copyright 1998-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -33,7 +34,7 @@ SWORD_NAMESPACE_START
class SWDLLEXPORT RawFiles : public RawVerse, public SWCom {
- char *getNextFilename();
+ const char *getNextFilename();
public:
@@ -43,13 +44,13 @@ public:
SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN,
const char *ilang = 0);
virtual ~RawFiles();
- virtual SWBuf &getRawEntryBuf();
+ virtual SWBuf &getRawEntryBuf() const;
// write interface ----------------------------
/** Is the module writable? :)
* @return yes or no
*/
- virtual bool isWritable();
+ virtual bool isWritable() const;
/** Creates a new module
* @param path The first parameter is path of the new module
diff --git a/include/rawgenbook.h b/include/rawgenbook.h
index ba07478..400f3da 100644
--- a/include/rawgenbook.h
+++ b/include/rawgenbook.h
@@ -1,10 +1,12 @@
/******************************************************************************
- * rawtext.h - code for class 'RawText'- a module that reads raw text files:
- * ot and nt using indexs ??.bks ??.cps ??.vss
*
- * $Id: rawgenbook.h 2303 2009-04-06 13:38:34Z scribe $
+ * rawgenbook.h - code for class 'RawGenBook'- a module that reads raw
+ * text files:
+ * ot and nt using indexs ??.bks ??.cps ??.vss
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: rawgenbook.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2002-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -44,14 +46,14 @@ public:
SWTextDirection dir = DIRECTION_LTR,
SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0, const char *keyType = "TreeKey");
virtual ~RawGenBook();
- virtual SWBuf &getRawEntryBuf();
+ virtual SWBuf &getRawEntryBuf() const;
// write interface ----------------------------
- virtual bool isWritable();
+ virtual bool isWritable() const;
static char createModule(const char *ipath);
virtual void setEntry(const char *inbuf, long len = -1); // Modify current module entry
virtual void linkEntry(const SWKey * linkKey); // Link current module entry to other module entry
virtual void deleteEntry(); // Delete current module entry
- virtual SWKey *CreateKey() const;
+ virtual SWKey *createKey() const;
// end write interface ------------------------
virtual bool hasEntry(const SWKey *k) const;
diff --git a/include/rawld.h b/include/rawld.h
index 782900b..7e0aa25 100644
--- a/include/rawld.h
+++ b/include/rawld.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * rawld.cpp - code for class 'RawLD'- a module that reads raw lexicon and
- * dictionary files: *.dat *.idx
*
- * $Id: rawld.h 2303 2009-04-06 13:38:34Z scribe $
+ * rawld.cpp - code for class 'RawLD'- a module that reads raw lexicon and
+ * dictionary files: *.dat *.idx
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: rawld.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -31,7 +32,7 @@
SWORD_NAMESPACE_START
class SWDLLEXPORT RawLD : public RawStr, public SWLD {
- char getEntry(long away = 0);
+ char getEntry(long away = 0) const;
public:
@@ -39,15 +40,15 @@ public:
RawLD(const char *ipath, const char *iname = 0, const char *idesc = 0,
SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN,
SWTextDirection dir = DIRECTION_LTR,
- SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0);
+ SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0, bool caseSensitive = false, bool strongsPadding = true);
virtual ~RawLD();
- virtual SWBuf &getRawEntryBuf();
+ virtual SWBuf &getRawEntryBuf() const;
virtual void increment(int steps = 1);
virtual void decrement(int steps = 1) { increment(-steps); }
// write interface ----------------------------
- virtual bool isWritable();
+ virtual bool isWritable() const;
static char createModule(const char *path) { return RawStr::createModule (path); }
virtual void setEntry(const char *inbuf, long len = -1); // Modify current module entry
diff --git a/include/rawld4.h b/include/rawld4.h
index d0118df..cc2110b 100644
--- a/include/rawld4.h
+++ b/include/rawld4.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * rawld.cpp - code for class 'RawLD'- a module that reads raw lexicon and
- * dictionary files: *.dat *.idx
*
- * $Id: rawld4.h 2303 2009-04-06 13:38:34Z scribe $
+ * rawld4.cpp - code for class 'RawLD4'- a module that reads raw
+ * lexicon and dictionary files: *.dat *.idx
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: rawld4.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -31,7 +32,7 @@
SWORD_NAMESPACE_START
class SWDLLEXPORT RawLD4 : public RawStr4, public SWLD {
- char getEntry(long away = 0);
+ char getEntry(long away = 0) const;
public:
@@ -39,15 +40,15 @@ public:
RawLD4(const char *ipath, const char *iname = 0, const char *idesc = 0,
SWDisplay *idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN,
SWTextDirection dir = DIRECTION_LTR,
- SWTextMarkup markup = FMT_UNKNOWN, const char *ilang = 0);
+ SWTextMarkup markup = FMT_UNKNOWN, const char *ilang = 0, bool caseSensitive = false, bool strongsPadding = true);
virtual ~RawLD4();
- virtual SWBuf &getRawEntryBuf();
+ virtual SWBuf &getRawEntryBuf() const;
virtual void increment(int steps = 1);
virtual void decrement(int steps = 1) { increment(-steps); }
// write interface ----------------------------
- virtual bool isWritable();
+ virtual bool isWritable() const;
static char createModule(const char *path) { return RawStr4::createModule(path); }
virtual void setEntry(const char *inbuf, long len = -1); // Modify current module entry
diff --git a/include/rawstr.h b/include/rawstr.h
index 41d65d5..58fc141 100644
--- a/include/rawstr.h
+++ b/include/rawstr.h
@@ -1,12 +1,13 @@
/*****************************************************************************
- * rawstr.h - code for class 'RawStr'- a module that reads raw text
- * files: ot and nt using indexs ??.bks ??.cps ??.vss
- * and provides lookup and parsing functions based on
- * class StrKey
*
- * $Id: rawstr.h 2303 2009-04-06 13:38:34Z scribe $
+ * rawstr.h - code for class 'RawStr'- a module that reads raw text
+ * files: ot and nt using indexs ??.bks ??.cps ??.vss
+ * and provides lookup and parsing functions based on
+ * class StrKey
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: rawstr.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -36,6 +37,7 @@ class FileDesc;
class SWDLLEXPORT RawStr {
static int instance; // number of instantiated RawStr objects or derivitives
char *path;
+ bool caseSensitive;
mutable long lastoff; // for caching and optimizing
@@ -48,12 +50,12 @@ protected:
public:
static char nl;
- RawStr(const char *ipath, int fileMode = -1);
+ RawStr(const char *ipath, int fileMode = -1, bool caseSensitive = false);
virtual ~RawStr();
void getIDXBuf(long ioffset, char **buf) const;
void getIDXBufDat(long ioffset, char **buf) const;
signed char findOffset(const char *key, __u32 *start, __u16 *size, long away = 0, __u32 *idxoff = 0) const;
- void readText(__u32 start, __u16 *size, char **idxbuf, SWBuf &buf);
+ void readText(__u32 start, __u16 *size, char **idxbuf, SWBuf &buf) const;
static signed char createModule(const char *path);
};
diff --git a/include/rawstr4.h b/include/rawstr4.h
index 91710bc..7767cb9 100644
--- a/include/rawstr4.h
+++ b/include/rawstr4.h
@@ -1,12 +1,13 @@
/*****************************************************************************
- * rawstr.h - code for class 'RawStr'- a module that reads raw text
- * files: ot and nt using indexs ??.bks ??.cps ??.vss
- * and provides lookup and parsing functions based on
- * class StrKey
*
- * $Id: rawstr4.h 2303 2009-04-06 13:38:34Z scribe $
+ * rawstr4.h - code for class 'RawStr4'- a module that reads raw text
+ * files: ot and nt using indexs ??.bks ??.cps ??.vss
+ * and provides lookup and parsing functions based on
+ * class StrKey
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: rawstr4.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -36,6 +37,7 @@ class SWBuf;
class SWDLLEXPORT RawStr4 {
static int instance; // number of instantiated RawStr4 objects or derivitives
char *path;
+ bool caseSensitive;
mutable long lastoff; // for caching and optimizations
protected:
@@ -47,12 +49,12 @@ protected:
void doLinkEntry(const char *destkey, const char *srckey);
public:
char nl;
- RawStr4(const char *ipath, int fileMode = -1);
+ RawStr4(const char *ipath, int fileMode = -1, bool caseSensitive = false);
virtual ~RawStr4();
void getIDXBuf(long ioffset, char **buf) const;
void getIDXBufDat(long ioffset, char **buf) const;
signed char findOffset(const char *key, __u32 *start, __u32 *size, long away = 0, __u32 *idxoff = 0) const;
- void readText(__u32 start, __u32 *size, char **idxbuf, SWBuf &buf);
+ void readText(__u32 start, __u32 *size, char **idxbuf, SWBuf &buf) const;
static signed char createModule(const char *path);
};
diff --git a/include/rawtext.h b/include/rawtext.h
index cfff611..55dcac1 100644
--- a/include/rawtext.h
+++ b/include/rawtext.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * rawtext.h - code for class 'RawText'- a module that reads raw text files:
- * ot and nt using indexs ??.bks ??.cps ??.vss
*
- * $Id: rawtext.h 2303 2009-04-06 13:38:34Z scribe $
+ * rawtext.h - code for class 'RawText'- a module that reads raw text files:
+ * ot and nt using indexs ??.bks ??.cps ??.vss
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: rawtext.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -38,11 +39,11 @@ public:
RawText(const char *ipath, const char *iname = 0, const char *idesc = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0, const char *versification = "KJV");
virtual ~RawText();
- virtual SWBuf &getRawEntryBuf();
+ virtual SWBuf &getRawEntryBuf() const;
virtual void increment(int steps = 1);
virtual void decrement(int steps = 1) { increment(-steps); }
// write interface ----------------------------
- virtual bool isWritable();
+ virtual bool isWritable() const;
static char createModule(const char *path, const char *v11n = "KJV") { return RawVerse::createModule(path, v11n); }
virtual void setEntry(const char *inbuf, long len = -1); // Modify current module entry
virtual void linkEntry(const SWKey *linkKey); // Link current module entry to other module entry
diff --git a/include/rawtext4.h b/include/rawtext4.h
index a3d0369..6de04b3 100644
--- a/include/rawtext4.h
+++ b/include/rawtext4.h
@@ -1,10 +1,12 @@
/******************************************************************************
- * rawtext.h - code for class 'RawText4'- a module that reads raw text files:
- * ot and nt using indexs ??.bks ??.cps ??.vss
*
- * $Id: rawtext.h 1864 2005-11-20 06:06:40Z scribe $
+ * rawtext4.h - code for class 'RawText4'- a module that reads raw
+ * text files:
+ * ot and nt using indexs ??.bks ??.cps ??.vss
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: rawtext4.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2007-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -39,11 +41,11 @@ public:
RawText4(const char *ipath, const char *iname = 0, const char *idesc = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0, const char *versification = "KJV");
virtual ~RawText4();
- virtual SWBuf &getRawEntryBuf();
+ virtual SWBuf &getRawEntryBuf() const;
virtual void increment(int steps = 1);
virtual void decrement(int steps = 1) { increment(-steps); }
// write interface ----------------------------
- virtual bool isWritable();
+ virtual bool isWritable() const;
static char createModule(const char *path, const char *v11n = "KJV") { return RawVerse4::createModule(path, v11n); }
virtual void setEntry(const char *inbuf, long len = -1); // Modify current module entry
virtual void linkEntry(const SWKey *linkKey); // Link current module entry to other module entry
diff --git a/include/rawverse.h b/include/rawverse.h
index 3ce4794..0b63491 100644
--- a/include/rawverse.h
+++ b/include/rawverse.h
@@ -1,8 +1,26 @@
/******************************************************************************
- * rawverse.h - code for class 'RawVerse'- a module that reads raw text
+ *
+ * rawverse.h - code for class 'RawVerse'- a module that reads raw text
* files: ot and nt using indexs ??.bks ??.cps ??.vss
* and provides lookup and parsing functions based on
* class VerseKey
+ *
+ * $Id: rawverse.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
*/
#ifndef RAWVERSE_H
@@ -33,7 +51,7 @@ public:
RawVerse(const char *ipath, int fileMode = -1);
virtual ~RawVerse();
void findOffset(char testmt, long idxoff, long *start, unsigned short *end) const;
- void readText(char testmt, long start, unsigned short size, SWBuf &buf);
+ void readText(char testmt, long start, unsigned short size, SWBuf &buf) const;
static char createModule(const char *path, const char *v11n = "KJV");
};
diff --git a/include/rawverse4.h b/include/rawverse4.h
index fee51c3..a78ed71 100644
--- a/include/rawverse4.h
+++ b/include/rawverse4.h
@@ -1,10 +1,29 @@
/******************************************************************************
- * rawverse.h - code for class 'RawVerse'- a module that reads raw text
- * files: ot and nt using indexs ??.bks ??.cps ??.vss
- * and provides lookup and parsing functions based on
- * class VerseKey
+ *
+ * rawverse4.h - code for class 'RawVerse4'- a module that reads raw
+ * text files: ot and nt using indexs ??.bks ??.cps
+ * ??.vss and provides lookup and parsing functions based
+ * on class VerseKey
+ *
+ * $Id: rawverse4.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2007-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
*/
+
#ifndef RAWVERSE4_H
#define RAWVERSE4_H
@@ -33,7 +52,7 @@ public:
RawVerse4(const char *ipath, int fileMode = -1);
virtual ~RawVerse4();
void findOffset(char testmt, long idxoff, long *start, unsigned long *end) const;
- void readText(char testmt, long start, unsigned long size, SWBuf &buf);
+ void readText(char testmt, long start, unsigned long size, SWBuf &buf) const;
static char createModule(const char *path, const char *v11n = "KJV");
};
diff --git a/include/ftptrans.h b/include/remotetrans.h
index 87502d2..d20d96b 100644
--- a/include/ftptrans.h
+++ b/include/remotetrans.h
@@ -1,28 +1,27 @@
/******************************************************************************
-* ftptrans.h - code for FTP Transport
-*
-* $Id: swbuf.h 2218 2008-12-23 09:33:38Z scribe $
-*
-* Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
-* CrossWire Bible Society
-* P. O. Box 2528
-* Tempe, AZ 85280-2528
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation version 2.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-*/
-
-// TODO: Rename this to RemoteTransport in 1.7.x
-
-#ifndef FTPTRANS_H
-#define FTPTRANS_H
+ *
+ * remotetrans.h - code for Remote Transport
+ *
+ * $Id: remotetrans.h 2932 2013-07-31 14:07:01Z scribe $
+ *
+ * Copyright 2004-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
+#ifndef REMOTETRANS_H
+#define REMOTETRANS_H
#include <vector>
#include <defs.h>
@@ -40,14 +39,15 @@ public:
virtual void preStatus(long totalBytes, long completedBytes, const char *message);
/** frequently called throughout a download, to report status */
- virtual void statusUpdate(double dtTotal, double dlNow);
+ SWDEPRECATED virtual void statusUpdate(double dtTotal, double dlNow);
+ virtual void update(unsigned long totalBytes, unsigned long completedBytes);
};
-/** TODO: document
+/**
* A base class to be used for reimplementation of network services.
*/
-class SWDLLEXPORT FTPTransport { // TODO: rename to more generic RemoteTransport
+class SWDLLEXPORT RemoteTransport {
protected:
StatusReporter *statusReporter;
@@ -58,8 +58,8 @@ protected:
SWBuf p;
public:
- FTPTransport(const char *host, StatusReporter *statusReporter = 0);
- virtual ~FTPTransport();
+ RemoteTransport(const char *host, StatusReporter *statusReporter = 0);
+ virtual ~RemoteTransport();
/***********
* override this method in your real impl
diff --git a/include/roman.h b/include/roman.h
index 37e4d1d..cdbb362 100644
--- a/include/roman.h
+++ b/include/roman.h
@@ -1,7 +1,10 @@
/******************************************************************************
- * roman.h - roman numeral functions
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * roman.h - roman numeral functions
+ *
+ * $Id: roman.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/rtfhtml.h b/include/rtfhtml.h
index 4fba5ed..e29f7ef 100644
--- a/include/rtfhtml.h
+++ b/include/rtfhtml.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: rtfhtml.h 1688 2005-01-01 04:42:26Z scribe $
+ * rtfhtml.h - Implementation of RTFHTML
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: rtfhtml.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2000-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/sapphire.h b/include/sapphire.h
index a5e21ad..96f3bf5 100644
--- a/include/sapphire.h
+++ b/include/sapphire.h
@@ -1,19 +1,42 @@
-/* sapphire.h -- Interface for the Saphire II stream cipher.
+/******************************************************************************
+ *
+ * sapphire.h - the Saphire II stream cipher class
+ *
+ * $Id: sapphire.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1999-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
- Dedicated to the Public Domain the author and inventor
- (Michael Paul Johnson). This code comes with no warranty.
- Use it at your own risk.
- Ported from the Pascal implementation of the Sapphire Stream
- Cipher 9 December 1994.
- Added hash-specific functions 27 December 1994.
- Made index variable initialization key-dependent,
- made the output function more resistant to cryptanalysis,
- and renamed to Sapphire II Stream Cipher 2 January 1995.
-
- unsigned char is assumed to be 8 bits. If it is not, the
- results of assignments need to be reduced to 8 bits with
- & 0xFF or % 0x100, whichever is faster.
-*/
+/******************************************************************************
+ *
+ * Original license notice & credits:
+ * Dedicated to the Public Domain the author and inventor
+ * (Michael Paul Johnson). This code comes with no warranty.
+ * Use it at your own risk.
+ * Ported from the Pascal implementation of the Sapphire Stream
+ * Cipher 9 December 1994.
+ * Added hash-specific functions 27 December 1994.
+ * Made index variable initialization key-dependent,
+ * made the output function more resistant to cryptanalysis,
+ * and renamed to Sapphire II Stream Cipher 2 January 1995.
+ *
+ * unsigned char is assumed to be 8 bits. If it is not, the
+ * results of assignments need to be reduced to 8 bits with
+ * & 0xFF or % 0x100, whichever is faster.
+ */
#ifndef NULL
#define NULL 0
diff --git a/include/scsuutf8.h b/include/scsuutf8.h
new file mode 100644
index 0000000..7a36733
--- /dev/null
+++ b/include/scsuutf8.h
@@ -0,0 +1,42 @@
+/******************************************************************************
+ *
+ * scsuutf8.h - SWFilter descendant to convert a SCSU character to UTF-8
+ *
+ * $Id: scsuutf8.h 2846 2013-06-29 14:48:47Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
+#ifndef SCSUUTF8_H
+#define SCSUUTF8_H
+
+#include <swfilter.h>
+
+SWORD_NAMESPACE_START
+
+/** This filter converts SCSU compressed (encoded) text to UTF-8
+ */
+class SWDLLEXPORT SCSUUTF8 : public SWFilter {
+ unsigned long c, d;
+ unsigned char* UTF8Output(unsigned long, unsigned char* text);
+
+public:
+ SCSUUTF8();
+ virtual char processText(SWBuf &text, const SWKey *key = 0, const SWModule *module = 0);
+};
+
+SWORD_NAMESPACE_END
+#endif
diff --git a/include/stringmgr.h b/include/stringmgr.h
index fe2eb5e..c7f67f2 100644
--- a/include/stringmgr.h
+++ b/include/stringmgr.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * stringmgr.h - A class which provides string handling functions which can
- * be reimplemented by frontends
*
- * $Id: stringmgr.h 2098 2007-10-07 18:57:07Z scribe $
+ * stringmgr.h - A class which provides string handling functions which
+ * can be reimplemented by frontends
*
- * Copyright 2005 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: stringmgr.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2004-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -108,7 +109,7 @@ inline char *toupperstr_utf8(char *t, unsigned int max = 0) {
inline SWBuf &toupperstr(SWBuf &b) {
char *utf8 = 0;
stdstr(&utf8, b.c_str(), 2);
- toupperstr(utf8, strlen(utf8)*2);
+ toupperstr(utf8, (unsigned int)strlen(utf8)*2);
b = utf8;
delete [] utf8;
return b;
diff --git a/include/strkey.h b/include/strkey.h
index 29cb0a9..8a10340 100644
--- a/include/strkey.h
+++ b/include/strkey.h
@@ -1,9 +1,10 @@
/******************************************************************************
- * strkey.h - code for class 'strkey'- a standard Biblical verse key
*
- * $Id: strkey.h 1864 2005-11-20 06:06:40Z scribe $
+ * strkey.h - code for class 'strkey'- a standard Biblical verse key
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: strkey.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/swbasicfilter.h b/include/swbasicfilter.h
index c3f9aee..29ea8a0 100644
--- a/include/swbasicfilter.h
+++ b/include/swbasicfilter.h
@@ -1,12 +1,13 @@
/******************************************************************************
- * swbasicfilter.h - definition of class SWBasicFilter. An SWFilter
- * impl that provides some basic methods that
- * many filter will need and can use as a starting
- * point.
*
- * $Id: swbasicfilter.h 1984 2006-10-08 05:06:52Z scribe $
+ * swbasicfilter.h - definition of class SWBasicFilter. An SWFilter
+ * impl that provides some basic methods that
+ * many filter will need and can use as a starting
+ * point
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swbasicfilter.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -55,7 +56,7 @@ public:
* <code>*buf</code> address and change <code>*buf</code> to point past
* the last char of the written sequence.
*/
-class SWDLLEXPORT SWBasicFilter : public SWFilter {
+class SWDLLEXPORT SWBasicFilter : public virtual SWFilter {
class Private;
diff --git a/include/swbuf.h b/include/swbuf.h
index eac0e70..0344299 100644
--- a/include/swbuf.h
+++ b/include/swbuf.h
@@ -1,23 +1,24 @@
/******************************************************************************
-* swbuf.h - code for SWBuf used as a transport and utility for data buffers
-*
-* $Id: swbuf.h 2378 2009-05-04 23:18:51Z scribe $
-*
-* Copyright 2003 CrossWire Bible Society (http://www.crosswire.org)
-* CrossWire Bible Society
-* P. O. Box 2528
-* Tempe, AZ 85280-2528
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation version 2.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-*/
+ *
+ * swbuf.h - code for SWBuf used as a transport and utility for data buffers
+ *
+ * $Id: swbuf.h 2980 2013-09-14 21:51:47Z scribe $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
#ifndef SWBUF_H
#define SWBUF_H
@@ -47,8 +48,6 @@ class SWDLLEXPORT SWBuf {
char *endAlloc;
char fillByte;
unsigned long allocSize;
- static char *nullStr;
- static char junkBuf[JUNKBUFSIZE];
inline void assureMore(size_t pastEnd) {
if (size_t(endAlloc-end) < pastEnd) {
@@ -81,6 +80,8 @@ class SWDLLEXPORT SWBuf {
public:
+ static char *nullStr;
+
/******************************************************************************
* SWBuf Constructor - Creates an empty SWBuf object
*
@@ -143,7 +144,7 @@ public:
* @param pos The position of the requested character.
* @return The character at the specified position
*/
- inline char &charAt(unsigned long pos) { return ((pos <= (unsigned long)(end - buf)) ? buf[pos] : ((*junkBuf=0),*junkBuf)); }
+ inline char &charAt(unsigned long pos) { return ((pos <= (unsigned long)(end - buf)) ? buf[pos] : (*nullStr)); }
/**
* @return size() and length() return only the number of characters of the string.
@@ -232,7 +233,7 @@ public:
* @param str Append this.
* @param max Append only max chars.
*/
- void append(const char *str, long max = -1);
+ SWBuf &append(const char *str, long max = -1);
/**
* SWBuf::append - appends a value to the current value of this SWBuf
@@ -240,17 +241,38 @@ public:
* @param str Append this.
* @param max Append only max chars.
*/
- inline void append(const SWBuf &str, long max = -1) { append(str.c_str(), max); }
+ inline SWBuf &append(const SWBuf &str, long max = -1) { return append(str.c_str(), max); }
/**
* SWBuf::append - appends a value to the current value of this SWBuf
* If the allocated memory is not enough, it will be resized accordingly.
* @param ch Append this.
*/
- inline void append(char ch) {
+ inline SWBuf &append(char ch) {
+ assureMore(1);
+ *end++ = ch;
+ *end = 0;
+ return *this;
+ }
+ inline SWBuf &append(const unsigned char ch) {
assureMore(1);
*end++ = ch;
*end = 0;
+ return *this;
+ }
+
+ /**
+ * SWBuf::append - appends a wide charachter value to the current value of this SWBuf
+ * If the allocated memory is not enough, it will be resized accordingly.
+ * NOTE: This is dangerous, as wchar_t is currently different sizes on different
+ * platforms (stupid windoze; stupid c++ spec for not mandating 4byte).
+ * @param ch Append this.
+ */
+ inline SWBuf &append(wchar_t wch) {
+ assureMore(sizeof(wchar_t)*2);
+ for (unsigned int i = 0; i < sizeof(wchar_t); i++) *end++ = ((char *)&wch)[i];
+ for (unsigned int i = 0; i < sizeof(wchar_t); i++) end[i] = 0;
+ return *this;
}
/**
@@ -269,7 +291,7 @@ public:
* @param format The format string. Same syntax as printf, for example.
* @param ... Add all arguments here.
*/
- void appendFormatted(const char *format, ...);
+ SWBuf &appendFormatted(const char *format, ...);
/**
* SWBuf::insert - inserts the given string at position into this string
@@ -402,6 +424,11 @@ public:
*/
inline bool endsWith(const SWBuf &postfix) const { return (size() >= postfix.size())?!strncmp(end-postfix.size(), postfix.c_str(), postfix.size()):false; }
+ /**
+ * @return returns the index of a substring if it is found in this buffer; otherwise, returns < 0
+ */
+ inline long indexOf(const SWBuf &needle) const { const char *ch = strstr(buf, needle.c_str()); return (ch) ? ch - buf : -1; }
+
inline int compare(const SWBuf &other) const { return strcmp(c_str(), other.c_str()); }
inline bool operator ==(const SWBuf &other) const { return compare(other) == 0; }
inline bool operator !=(const SWBuf &other) const { return compare(other) != 0; }
diff --git a/include/swcacher.h b/include/swcacher.h
index a68cb16..55374e8 100644
--- a/include/swcacher.h
+++ b/include/swcacher.h
@@ -1,10 +1,12 @@
/******************************************************************************
- * swcacher.h - definition of class SWCacher used to provide an interface for
- * objects that cache and want a standard interface for cleaning up.
*
- * $Id: swcacher.h 1688 2005-01-01 04:42:26Z scribe $
+ * swcacher.h - definition of class SWCacher used to provide an
+ * interface for objects that cache and want a standard
+ * interface for cleaning up.
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swcacher.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2002-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/swcipher.h b/include/swcipher.h
index d9fad23..46e10b4 100644
--- a/include/swcipher.h
+++ b/include/swcipher.h
@@ -1,9 +1,11 @@
/******************************************************************************
- * swcipher.h - definition of Class SWCipher used for data cipher/decipher
*
- * $Id: swcipher.h 1864 2005-11-20 06:06:40Z scribe $
+ * swcipher.h - definition of Class SWCipher used for data
+ * cipher/decipher
*
- * Copyright 1999 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swcipher.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1999-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/swcom.h b/include/swcom.h
index 3b07ccd..ec2222b 100644
--- a/include/swcom.h
+++ b/include/swcom.h
@@ -1,22 +1,23 @@
/******************************************************************************
- * swcom.h - code for base class 'SWCom'. SWCom is the basis for all
- * types of commentary modules.
- * It is traditionally close to the same as the SWText
- * module type, but has defaults set which more
- * closely represent how a commentary will be used and how
- * the bulk of our commentaries expect to be used. For example,
- * most commentaries consist of entries for a range of text
- * (Matt.1.1-6: "Matthew begins with by telling us..."). This
- * same entry will be returned when any verse between Matt.1.1-6
- * is requested from the engine. This is done with verse linking.
- * Since linking is used heavily in commentaries, the flag
- * skipConsecutiveLinks is defaulted to true so when the
- * commentary is incremented, it will go to the next ENTRY,
- * not the next verse (likely Matt.1.7, from our example above).
*
- * $Id: swcom.h 2362 2009-04-29 07:21:35Z scribe $
+ * swcom.h - code for base class 'SWCom'. SWCom is the basis for all
+ * types of commentary modules.
+ * It is traditionally close to the same as the SWText
+ * module type, but has defaults set which more
+ * closely represent how a commentary will be used and how
+ * the bulk of our commentaries expect to be used. For example,
+ * most commentaries consist of entries for a range of text
+ * (Matt.1.1-6: "Matthew begins with by telling us..."). This
+ * same entry will be returned when any verse between Matt.1.1-6
+ * is requested from the engine. This is done with verse linking.
+ * Since linking is used heavily in commentaries, the flag
+ * skipConsecutiveLinks is defaulted to true so when the
+ * commentary is incremented, it will go to the next ENTRY,
+ * not the next verse (likely Matt.1.7, from our example above).
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swcom.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -68,10 +69,10 @@ public:
const char *versification = "KJV");
virtual ~SWCom();
- virtual SWKey *CreateKey() const;
+ virtual SWKey *createKey() const;
- virtual long Index() const;
- virtual long Index(long iindex);
+ virtual long getIndex() const;
+ virtual void setIndex(long iindex);
diff --git a/include/swcomprs.h b/include/swcomprs.h
index e7a772e..9b06fe1 100644
--- a/include/swcomprs.h
+++ b/include/swcomprs.h
@@ -1,9 +1,11 @@
/******************************************************************************
- * swcomprs.h - definition of Class SWCompress used for data compression
*
- * $Id: swcomprs.h 1688 2005-01-01 04:42:26Z scribe $
+ * swcomprs.h - definition of Class SWCompress used for data
+ * compression
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swcomprs.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1996-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/swconfig.h b/include/swconfig.h
index 2139d3e..71fe735 100644
--- a/include/swconfig.h
+++ b/include/swconfig.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * swconfig.h - definition of Class SWConfig used for saving and retrieval
- * of configuration information
*
- * $Id: swconfig.h 2180 2008-07-13 20:29:25Z scribe $
+ * swconfig.h - definition of Class SWConfig used for saving and
+ * retrieval of configuration information
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swconfig.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/swdisp.h b/include/swdisp.h
index ca56a6e..f18e03d 100644
--- a/include/swdisp.h
+++ b/include/swdisp.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * swdisp.h - code for base class 'swdisp'. swdisp is the basis for all
+ *
+ * swdisp.h - code for base class 'swdisp'. swdisp is the basis for all
* types of displays (e.g. raw textout, curses, xwindow, etc.)
*
- * $Id: swdisp.h 1825 2005-06-10 09:03:37Z jansorg $
+ * $Id: swdisp.h 2833 2013-06-29 06:40:28Z chrislit $
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * Copyright 1996-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -36,7 +37,7 @@ class SWModule;
class SWDLLEXPORT SWDisplay : public SWObject {
static SWClass classdef;
public:
- SWDisplay () { myclass = &classdef; };
+ SWDisplay() { myclass = &classdef; };
virtual ~SWDisplay() {};
/** casts a module to a character pointer and displays it to
@@ -46,7 +47,8 @@ public:
* @param imodule module to display
* @return error status
*/
- virtual char Display (SWModule & imodule);
+ virtual char display(SWModule &imodule) = 0;
+ SWDEPRECATED char Display(SWModule &imodule) { return display(imodule); }
};
SWORD_NAMESPACE_END
diff --git a/include/swfilter.h b/include/swfilter.h
index 8e16e22..4dbba82 100644
--- a/include/swfilter.h
+++ b/include/swfilter.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * swfilter.h - definition of class SWFilter used to filter text between
- * different formats
*
- * $Id: swfilter.h 1864 2005-11-20 06:06:40Z scribe $
+ * swfilter.h - definition of class SWFilter used to filter text between
+ * different formats
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swfilter.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -42,13 +43,20 @@ class SWDLLEXPORT SWFilter {
public:
virtual ~SWFilter() {}
- /** This is the main filter function
+ /** This method processes and appropriately modifies the text given it
+ * for a particular filter task
+ *
* @param text The text to be filtered/converted
* @param key Current key That was used.
* @param module Current module.
* @return 0
*/
virtual char processText(SWBuf &text, const SWKey *key = 0, const SWModule *module = 0) = 0;
+
+ /** This method can supply a header associated with the processing done with this filter.
+ * A typical example is a suggested CSS style block for classed containers.
+ */
+ virtual const char *getHeader() const { return ""; }
};
SWORD_NAMESPACE_END
diff --git a/include/swfiltermgr.h b/include/swfiltermgr.h
index 49923fe..2160d5a 100644
--- a/include/swfiltermgr.h
+++ b/include/swfiltermgr.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * swfiltermgr.h - definition of class SWFilterMgr used as an interface to
- * manage filters on a module
*
- * $Id: swfiltermgr.h 1864 2005-11-20 06:06:40Z scribe $
+ * swfiltermgr.h - definition of class SWFilterMgr used as an interface to
+ * manage filters on a module
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swfiltermgr.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/swgenbook.h b/include/swgenbook.h
index d4f3d8f..b463fff 100644
--- a/include/swgenbook.h
+++ b/include/swgenbook.h
@@ -1,23 +1,24 @@
/******************************************************************************
-* swgenbook.h
-*
-* $Id: swgenbook.h 2303 2009-04-06 13:38:34Z scribe $
-*
-* Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
-* CrossWire Bible Society
-* P. O. Box 2528
-* Tempe, AZ 85280-2528
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation version 2.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-*/
+ *
+ * swgenbook.h - Implementation of SWGenBook
+ *
+ * $Id: swgenbook.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2002-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
#ifndef SWGENBOOK_H
#define SWGENBOOK_H
@@ -35,7 +36,7 @@ SWORD_NAMESPACE_START
class SWDLLEXPORT SWGenBook : public SWModule {
protected:
- char *entkeytxt;
+ mutable char *entkeytxt;
mutable TreeKey *tmpTreeKey;
TreeKey &getTreeKey(const SWKey *k = 0) const;
@@ -48,7 +49,7 @@ public:
SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0);
virtual ~SWGenBook();
- virtual SWKey *CreateKey() const = 0;
+ virtual SWKey *createKey() const = 0;
// OPERATORS -----------------------------------------------------------------
diff --git a/include/swinputmeth.h b/include/swinputmeth.h
index e2d14e2..b1ad274 100644
--- a/include/swinputmeth.h
+++ b/include/swinputmeth.h
@@ -1,10 +1,23 @@
-/**
- * Title:
- * Description:
- * Copyright: Copyright (c) 2001 CrossWire Bible Society under the terms of the GNU GPL
- * Company:
- * @author Troy A. Griffitts
- * @version 1.0
+/******************************************************************************
+ *
+ * swinputmeth.h - Implementation of SWInputMethod
+ *
+ * $Id: swinputmeth.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
*/
#ifndef SWINPUTMETHOD_H
diff --git a/include/swkey.h b/include/swkey.h
index eea2135..89786f0 100644
--- a/include/swkey.h
+++ b/include/swkey.h
@@ -1,11 +1,12 @@
/******************************************************************************
- * swkey.h - code for base class 'swkey'. swkey is the basis for all
- * types of keys for indexing into modules (e.g. verse, word,
- * place, etc.)
*
- * $Id: swkey.h 2324 2009-04-20 18:40:15Z scribe $
+ * swkey.h - code for base class 'swkey'. swkey is the basis for all
+ * types of keys for indexing into modules (e.g. verse, word,
+ * place, etc.)
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swkey.h 2926 2013-07-31 02:06:33Z scribe $
+ *
+ * Copyright 1998-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -27,6 +28,7 @@
#include <swobject.h>
#include <defs.h>
+#include <sysdata.h>
#include <utilstr.h>
SWORD_NAMESPACE_START
@@ -102,8 +104,8 @@ protected:
char *keytext;
mutable char *rangeText;
mutable bool boundSet;
- char persist;
- char error;
+ bool persist;
+ mutable char error;
char *localeName;
SWLocale *getPrivateLocale() const;
@@ -111,8 +113,8 @@ protected:
public:
- // misc pointer for whatever
- void *userData;
+ // misc storage for whatever
+ __u64 userData;
/** initializes instance of SWKey from a string
* All keys can be reduced to a string representation which should be able
@@ -124,7 +126,7 @@ public:
/** Copy Constructor
* @param k The SWKey object to copy.
*/
- SWKey(SWKey const &k);
+ SWKey(const SWKey &k);
/** Destructor, cleans up this instance of SWKey
*/
@@ -136,23 +138,27 @@ public:
*/
virtual SWKey *clone() const;
+
/** Gets whether this key should persist in any module to which it is set
* otherwise just a copy will be used in the module.
* @return 1 - persists in module; 0 - a copy is attempted
*/
- char Persist() const;
+ bool isPersist() const;
+ SWDEPRECATED char Persist() const { return isPersist(); }
/** Sets whether this key should persist in any module to which it is set
* otherwise just a copy will be used in the module.
* @param ipersist value which to set persist;
* @return 1 - persists in module; 0 - a copy is attempted
*/
- char Persist(signed char ipersist);
+ SWDEPRECATED char Persist(signed char ipersist) { setPersist(ipersist!=0); return isPersist(); }
+ void setPersist(bool ipersist);
/** Gets and clears error status
* @return error status
*/
- virtual char Error();
+ SWDEPRECATED char Error() { return popError(); }
+ virtual char popError();
virtual void setError(char err) { error = err; }
/** Sets this SWKey with a character string
@@ -203,10 +209,6 @@ public:
*/
virtual void increment(int steps = 1);
- /** deprecated, use isTraversible
- */
- char Traversable() { return (isTraversable()) ? 1:0; }
-
/** Whether or not this key can be ++ -- incremented
*/
virtual bool isTraversable() const { return false; }
@@ -216,11 +218,11 @@ public:
/** Use this function to get an index position within a module.
*/
- virtual long Index() const { return index; }
+ virtual long getIndex() const { return index; }
/** See documentation for @ref Index()
*/
- virtual long Index(long iindex) { index = iindex; return index; }
+ virtual void setIndex(long iindex) { index = iindex; }
SWKEY_OPERATORS
diff --git a/include/swld.h b/include/swld.h
index bc14ca0..397a0bc 100644
--- a/include/swld.h
+++ b/include/swld.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * swld.h - code for base class 'SWLD'. SWLD is the basis for all
- * types of Lexicon and Dictionary modules (hence the 'LD').
*
- * $Id: swld.h 2303 2009-04-06 13:38:34Z scribe $
+ * swld.h - code for base class 'SWLD'. SWLD is the basis for all
+ * types of Lexicon and Dictionary modules (hence the 'LD').
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swld.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -34,18 +35,19 @@ SWORD_NAMESPACE_START
*/
class SWDLLEXPORT SWLD : public SWModule {
protected:
- char *entkeytxt;
+ mutable char *entkeytxt;
static void strongsPad(char *buf);
+ bool strongsPadding;
public:
/** Initializes data for instance of SWLD
*/
SWLD(const char *imodname = 0, const char *imoddesc = 0,
SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN,
SWTextDirection dir = DIRECTION_LTR,
- SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0);
+ SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0, bool strongsPadding = true);
virtual ~SWLD();
- virtual SWKey *CreateKey() const;
+ virtual SWKey *createKey() const;
/** Sets/gets module KeyText, getting from saved text if key is persistent
*
@@ -53,7 +55,7 @@ public:
* [0] - only get
* @return pointer to keytext
*/
- virtual const char *KeyText(const char *ikeytext = 0);
+ virtual const char *getKeyText() const;
virtual void setPosition(SW_POSITION pos);
diff --git a/include/swlocale.h b/include/swlocale.h
index 1b77a6d..94ee17a 100644
--- a/include/swlocale.h
+++ b/include/swlocale.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * swlocale.h - definition of Class SWLocale used for retrieval
- * of locale lookups
*
- * $Id: swlocale.h 2191 2008-08-16 16:16:03Z scribe $
+ * swlocale.h - definition of Class SWLocale used for retrieval
+ * of locale lookups
*
- * Copyright 2000 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swlocale.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2000-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/swlog.h b/include/swlog.h
index 9aa6109..ab6fc58 100644
--- a/include/swlog.h
+++ b/include/swlog.h
@@ -1,9 +1,10 @@
/******************************************************************************
- * swlog.h - definition of class SWLog used for logging messages
*
- * $Id: swlog.h 2080 2007-09-17 06:21:29Z scribe $
+ * swlog.h - definition of class SWLog used for logging messages
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swlog.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/swmacs.h b/include/swmacs.h
index 4da07b0..8502912 100644
--- a/include/swmacs.h
+++ b/include/swmacs.h
@@ -1,9 +1,10 @@
/******************************************************************************
- * swmacs.h - generic macros
*
- * $Id: swmacs.h 1688 2005-01-01 04:42:26Z scribe $
+ * swmacs.h - generic macros
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swmacs.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1996-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/swmgr.h b/include/swmgr.h
index 6e7236f..5c98d11 100644
--- a/include/swmgr.h
+++ b/include/swmgr.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * swmgr.h - definition of class SWMgr used to interact with an install
- * base of sword modules.
*
- * $Id: swmgr.h 2340 2009-04-26 13:51:42Z scribe $
+ * swmgr.h - definition of class SWMgr used to interact with an install
+ * base of sword modules.
*
- * Copyright 1998-2008 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swmgr.h 2941 2013-08-03 07:08:24Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -42,12 +43,13 @@
* some of the existing ones. They can always use help, and will also prove to be good examples
* if you decide to start a new project.
*
- * Well known frontends are:\n
- * -BibleTime (http://www.bibletime.info)\n
- * -BPBible (http://bpbible.com)\n
- * -MacSword (http://www.macsword.com)\n
- * -Xiphos (http://xiphos.org)\n
- * -SWORD for Windows (http://crosswire.org/sword/software/biblecs/)\n
+ * Well known frontends are:
+ * -BibleTime (http://www.bibletime.info)
+ * -BPBible (http://bpbible.com)
+ * -Eloquent (http://www.macsword.com)
+ * -PocketSword (http://crosswire.org/pocketsword/)
+ * -SWORD for Windows (http://crosswire.org/sword/software/biblecs/)
+ * -Xiphos (http://xiphos.org)
*/
#ifndef SWMGR_H
@@ -84,11 +86,9 @@ class SWOptionFilter;
* SWMgr exposes an installed module set and can be asked to configure the desired
* markup and options which modules will produce.
*
- * @version $Id: swmgr.h 2340 2009-04-26 13:51:42Z scribe $
+ * @version $Id: swmgr.h 2941 2013-08-03 07:08:24Z chrislit $
*/
class SWDLLEXPORT SWMgr {
-
-
private:
bool mgrModeMultiMod;
bool augmentHome;
@@ -100,7 +100,7 @@ protected:
SWConfig *mysysconfig;
SWConfig *homeConfig;
void CreateMods(bool multiMod = false);
- SWModule *CreateMod(const char *name, const char *driver, ConfigEntMap &section);
+ virtual SWModule *createModule(const char *name, const char *driver, ConfigEntMap &section);
void DeleteMods();
char configType; // 0 = file; 1 = directory
OptionFilterMap optionFilters;
@@ -111,6 +111,7 @@ protected:
SWFilter *teiplain;
SWOptionFilter *transliterator;
FilterList cleanupFilters;
+ FilterMap extraFilters;
StringList options;
virtual void init(); // use to initialize before loading modules
virtual char AddModToConfig(FileDesc *conffd, const char *fname);
@@ -157,6 +158,14 @@ protected:
public:
+ // constants which represent module types used in SWModule::getType
+ static const char *MODTYPE_BIBLES;
+ static const char *MODTYPE_COMMENTARIES;
+ static const char *MODTYPE_LEXDICTS;
+ static const char *MODTYPE_GENBOOKS;
+ static const char *MODTYPE_DAILYDEVOS;
+
+
static bool isICU;
static const char *globalConfPath;
static SWBuf getHomeDir();
diff --git a/include/swmodule.h b/include/swmodule.h
index 86ff822..9c733dc 100644
--- a/include/swmodule.h
+++ b/include/swmodule.h
@@ -1,11 +1,12 @@
/******************************************************************************
- * swmodule.h - code for base class 'module'. Module is the basis for all
- * types of modules (e.g. texts, commentaries, maps, lexicons,
- * etc.)
*
- * $Id: swmodule.h 2318 2009-04-10 21:22:16Z scribe $
+ * swmodule.h - code for base class 'module'. Module is the basis for
+ * all types of modules (e.g. texts, commentaries, maps,
+ * lexicons, etc.)
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swmodule.h 2944 2013-08-03 09:43:40Z scribe $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -30,6 +31,9 @@
#include <swcacher.h>
#include <swsearchable.h>
+#ifndef _WIN32_WCE
+#include <iostream>
+#endif
#include <list>
@@ -43,7 +47,8 @@ class SWFilter;
#define SEARCHFLAG_MATCHWHOLEENTRY 4096
#define SWMODULE_OPERATORS \
- operator const char *() { return RenderText(); } \
+ SWDEPRECATED operator const char *() { static SWBuf unsafeTmp = renderText(); return unsafeTmp.c_str(); } \
+ operator SWBuf() { return renderText(); } \
operator SWKey &() { return *getKey(); } \
operator SWKey *() { return getKey(); } \
SWModule &operator <<(const char *inbuf) { setEntry(inbuf); return *this; } \
@@ -84,8 +89,19 @@ typedef std::map < SWBuf, AttributeList, std::less < SWBuf > > AttributeTypeList
// Just leave for now. This lets us always able to call module->flush()
// to manually flush a cache, and doesn't hurt if there is no work done.
+
class SWDLLEXPORT SWModule : public SWCacher, public SWSearchable {
+class StdOutDisplay : public SWDisplay {
+ char display(SWModule &imodule)
+ {
+ #ifndef _WIN32_WCE
+ std::cout << imodule.renderText();
+ #endif
+ return 0;
+ }
+};
+
protected:
ConfigEntMap ownConfig;
@@ -93,7 +109,7 @@ protected:
mutable AttributeTypeList entryAttributes;
mutable bool procEntAttr;
- char error;
+ mutable char error;
bool skipConsecutiveLinks;
/** the current key */
@@ -112,8 +128,8 @@ protected:
/** this module's display object */
SWDisplay *disp;
- static SWDisplay rawdisp;
- SWBuf entryBuf;
+ static StdOutDisplay rawdisp;
+ mutable SWBuf entryBuf;
/** filters to be executed to remove all markup (for searches) */
FilterList *stripFilters;
@@ -130,7 +146,7 @@ protected:
/** filters to be executed to decode text for display */
FilterList *encodingFilters;
- int entrySize;
+ mutable int entrySize;
mutable long entryIndex; // internal common storage for index
static void prepText(SWBuf &buf);
@@ -165,12 +181,13 @@ public:
*
* @return error status
*/
- virtual char Error();
+ virtual char popError();
+ SWDEPRECATED virtual char Error() { return popError(); }
/**
* @return True if this module is encoded in Unicode, otherwise returns false.
*/
- virtual bool isUnicode() const { return (encoding == (char)ENC_UTF8); }
+ virtual bool isUnicode() const { return (encoding == (char)ENC_UTF8 || encoding == (char)ENC_SCSU); }
// These methods are useful for modules that come from a standard SWORD install (most do).
// SWMgr will call setConfig. The user may use getConfig and getConfigEntry (if they
@@ -180,6 +197,14 @@ public:
virtual const char *getConfigEntry(const char *key) const;
/**
+ * Returns bibliographic data for a module in the requested format
+ *
+ * @param bibFormat format of the bibliographic data
+ * @return bibliographic data in the requested format as a string (BibTeX by default)
+ */
+ virtual SWBuf getBibliography(unsigned char bibFormat = BIB_BIBTEX) const;
+
+ /**
* @return The size of the text entry for the module's current key position.
*/
virtual int getEntrySize() const { return entrySize; }
@@ -201,15 +226,15 @@ public:
/**
* @deprecated Use setKey() instead.
*/
- char SetKey(const SWKey *ikey) { return setKey(ikey); }
+ SWDEPRECATED char SetKey(const SWKey *ikey) { return setKey(ikey); }
/**
* @deprecated Use setKey() instead.
*/
- char SetKey(const SWKey &ikey) { return setKey(ikey); }
+ SWDEPRECATED char SetKey(const SWKey &ikey) { return setKey(ikey); }
/**
* @deprecated Use setKey() instead.
*/
- char Key(const SWKey & ikey) { return setKey(ikey); }
+ SWDEPRECATED char Key(const SWKey & ikey) { return setKey(ikey); }
/** Gets the current module key
* @return the current key of this module
@@ -218,7 +243,7 @@ public:
/**
* @deprecated Use getKey() instead.
*/
- SWKey &Key() const { return *getKey(); }
+ SWDEPRECATED SWKey &Key() const { return *getKey(); }
/**
* Sets/gets module KeyText
@@ -226,10 +251,7 @@ public:
* @param ikeytext Value which to set keytext; [0]-only get
* @return pointer to keytext
*/
- virtual const char *KeyText(const char *ikeytext = 0) {
- if (ikeytext) setKey(ikeytext);
- return *getKey();
- }
+ SWDEPRECATED const char *KeyText(const char *ikeytext = 0) { if (ikeytext) setKey(ikeytext); return *getKey(); }
/**
* gets the key text for the module.
@@ -241,14 +263,19 @@ public:
}
- virtual long Index() const { return entryIndex; }
- virtual long Index(long iindex) { entryIndex = iindex; return entryIndex; }
+ virtual long getIndex() const { return entryIndex; }
+ virtual void setIndex(long iindex) { entryIndex = iindex; }
+ // deprecated, use getIndex()
+ SWDEPRECATED long Index() const { return getIndex(); }
+ // deprecated, use setIndex(...)
+ SWDEPRECATED long Index(long iindex) { setIndex(iindex); return getIndex(); }
/** Calls this module's display object and passes itself
*
* @return error status
*/
- virtual char Display();
+ virtual char display();
+ SWDEPRECATED char Display() { return display(); }
/** Gets display driver
*
@@ -265,78 +292,82 @@ public:
/**
* @deprecated Use get/setDisplay() instead.
*/
- SWDisplay *Disp(SWDisplay * idisp = 0) {
- if (idisp)
- setDisplay(idisp);
- return getDisplay();
- }
+ SWDEPRECATED SWDisplay *Disp(SWDisplay * idisp = 0) { if (idisp) setDisplay(idisp); return getDisplay(); }
/** Gets module name
*
* @return pointer to modname
*/
- virtual char *Name() const;
+ const char *getName() const;
+ SWDEPRECATED const char *Name() const { return getName(); }
/** Sets module name
*
* @param imodname Value which to set modname; [0]-only get
* @return pointer to modname
*/
- virtual char *Name(const char *imodname);
+ SWDEPRECATED const char *Name(const char *imodname) { stdstr(&modname, imodname); return getName(); }
/** Gets module description
*
* @return pointer to moddesc
*/
- virtual char *Description() const;
+ const char *getDescription() const;
+ SWDEPRECATED const char *Description() const { return getDescription(); }
/** Sets module description
*
* @param imoddesc Value which to set moddesc; [0]-only get
* @return pointer to moddesc
*/
- virtual char *Description(const char *imoddesc);
+ SWDEPRECATED const char *Description(const char *imoddesc) { stdstr(&moddesc, imoddesc); return getDescription(); }
/** Gets module type
*
* @return pointer to modtype
*/
- virtual char *Type() const;
+ const char *getType() const;
+ SWDEPRECATED const char *Type() const { return getType(); }
/** Sets module type
*
* @param imodtype Value which to set modtype; [0]-only get
* @return pointer to modtype
*/
- virtual char *Type(const char *imodtype);
+ SWDEPRECATED const char *Type(const char *imodtype) { setType(imodtype); return getType(); }
+ void setType(const char *imodtype) { stdstr(&modtype, imodtype); }
/** Sets/gets module direction
*
* @param newdir Value which to set direction; [-1]-only get
* @return new direction
*/
- virtual char Direction(signed char newdir = -1);
+ virtual char getDirection() const;
+ SWDEPRECATED char Direction(signed char newdir = -1) { char retVal = getDirection(); if (newdir != -1) return direction = newdir; return retVal; }
/** Sets/gets module encoding
*
* @param enc Value which to set encoding; [-1]-only get
* @return Encoding
*/
- virtual char Encoding(signed char enc = -1);
+ char getEncoding() const { return encoding; }
+ SWDEPRECATED char Encoding(signed char enc = -1) { char retVal = getEncoding(); if (enc != -1) encoding = enc; return retVal; }
/** Sets/gets module markup
*
- * @param markup Vvalue which to set markup; [-1]-only get
+ * @param markup Value which to set markup; [-1]-only get
* @return Markup
*/
- virtual char Markup(signed char markup = -1);
+ char getMarkup() const { return markup; }
+ SWDEPRECATED char Markup(signed char imarkup = -1) { char retVal = getMarkup(); if (imarkup != -1) markup = imarkup; return retVal; }
/** Sets/gets module language
*
* @param imodlang Value which to set modlang; [0]-only get
* @return pointer to modlang
*/
- virtual char *Lang(const char *imodlang = 0);
+ const char *getLanguage() const { return modlang; }
+ SWDEPRECATED const char *Lang(char *imodlang = 0) { if (imodlang != 0) stdstr(&modlang, imodlang); return getLanguage(); }
// search interface -------------------------------------------------
@@ -366,36 +397,32 @@ public:
void *percentUserData = 0);
// for backward compat-- deprecated
- virtual ListKey &Search(const char *istr, int searchType = 0, int flags = 0,
- SWKey * scope = 0,
- bool * justCheckIfSupported = 0,
- void (*percent) (char, void *) = &nullPercent,
- void *percentUserData = 0) {
- return search(istr, searchType, flags, scope, justCheckIfSupported, percent, percentUserData);
- }
+ SWDEPRECATED ListKey &Search(const char *istr, int searchType = 0, int flags = 0, SWKey * scope = 0, bool * justCheckIfSupported = 0, void (*percent) (char, void *) = &nullPercent, void *percentUserData = 0) { return search(istr, searchType, flags, scope, justCheckIfSupported, percent, percentUserData); }
/** Allocates a key of specific type for module
- * The different reimplementatiosn of SWModule (e.g. SWText) support SWKey implementations, which support special.
- * This functions returns a SWKey object which works with the current implementation of SWModule. For example for the SWText class it returns a VerseKey object.
+ * The different reimplementations of SWModule (e.g. SWText) support SWKey implementations,
+ * which support special. This functions returns a SWKey object which works with the current
+ * implementation of SWModule. For example for the SWText class it returns a VerseKey object.
* @see VerseKey, ListKey, SWText, SWLD, SWCom
- * @return pointer to allocated key
+ * @return pointer to allocated key. Caller is responsible for deleting the object
*/
- virtual SWKey *CreateKey() const;
+ virtual SWKey *createKey() const;
+ SWDEPRECATED SWKey *CreateKey() const { return createKey(); }
/** This function is reimplemented by the different kinds
* of module objects
* @return the raw module text of the current entry
*/
- virtual SWBuf &getRawEntryBuf() = 0;
+ virtual SWBuf &getRawEntryBuf() const = 0;
- virtual const char *getRawEntry() { return getRawEntryBuf().c_str(); }
+ const char *getRawEntry() const { return getRawEntryBuf().c_str(); }
// write interface ----------------------------
/** Is the module writable? :)
* @return yes or no
*/
- virtual bool isWritable() { return false; }
+ virtual bool isWritable() const { return false; }
/** Creates a new, empty module
* @param path path where to create the new module
@@ -438,14 +465,14 @@ public:
* @param buf the buffer to filter
* @param key key location from where this buffer was extracted
*/
- virtual void filterBuffer(OptionFilterList *filters, SWBuf &buf, const SWKey *key);
+ virtual void filterBuffer(OptionFilterList *filters, SWBuf &buf, const SWKey *key) const;
/** FilterBuffer a text buffer
* @param filters the FilterList of filters to iterate
* @param buf the buffer to filter
* @param key key location from where this buffer was extracted
*/
- virtual void filterBuffer(FilterList *filters, SWBuf &buf, const SWKey *key);
+ virtual void filterBuffer(FilterList *filters, SWBuf &buf, const SWKey *key) const;
/** Adds a RenderFilter to this module's renderFilters queue.
* Render Filters are called when the module is asked to produce
@@ -453,10 +480,11 @@ public:
* @param newfilter the filter to add
* @return *this
*/
- virtual SWModule &AddRenderFilter(SWFilter *newfilter) {
- renderFilters->push_back(newfilter);
+ virtual SWModule &addRenderFilter(SWFilter *newFilter) {
+ renderFilters->push_back(newFilter);
return *this;
}
+ SWDEPRECATED SWModule &AddRenderFilter(SWFilter *newFilter) { return addRenderFilter(newFilter); }
/** Retrieves a container of render filters associated with this
* module.
@@ -470,30 +498,32 @@ public:
* @param oldfilter the filter to remove
* @return *this
*/
- virtual SWModule &RemoveRenderFilter(SWFilter *oldfilter) {
- renderFilters->remove(oldfilter);
+ virtual SWModule &removeRenderFilter(SWFilter *oldFilter) {
+ renderFilters->remove(oldFilter);
return *this;
}
+ SWDEPRECATED SWModule &RemoveRenderFilter(SWFilter *oldFilter) { return removeRenderFilter(oldFilter); }
/** Replaces a RenderFilter in this module's renderfilters queue
* @param oldfilter the filter to remove
* @param newfilter the filter to add in its place
* @return *this
*/
- virtual SWModule &ReplaceRenderFilter(SWFilter *oldfilter, SWFilter *newfilter) {
+ virtual SWModule &replaceRenderFilter(SWFilter *oldFilter, SWFilter *newFilter) {
FilterList::iterator iter;
for (iter = renderFilters->begin(); iter != renderFilters->end(); iter++) {
- if (*iter == oldfilter)
- *iter = newfilter;
+ if (*iter == oldFilter)
+ *iter = newFilter;
}
return *this;
}
+ SWDEPRECATED SWModule &ReplaceRenderFilter(SWFilter *oldFilter, SWFilter *newFilter) { return replaceRenderFilter(oldFilter, newFilter); }
/** RenderFilter run a buf through this module's Render Filters
* @param buf the buffer to filter
* @param key key location from where this buffer was extracted
*/
- virtual void renderFilter(SWBuf &buf, const SWKey *key) {
+ virtual void renderFilter(SWBuf &buf, const SWKey *key) const {
filterBuffer(renderFilters, buf, key);
}
@@ -504,39 +534,42 @@ public:
* @param newfilter the filter to add
* @return *this
*/
- virtual SWModule &AddEncodingFilter(SWFilter *newfilter) {
- encodingFilters->push_back(newfilter);
+ virtual SWModule &addEncodingFilter(SWFilter *newFilter) {
+ encodingFilters->push_back(newFilter);
return *this;
}
+ SWDEPRECATED SWModule &AddEncodingFilter(SWFilter *newFilter) { return addEncodingFilter(newFilter); }
/** Removes an EncodingFilter from this module's encodingFilters queue
* @param oldfilter the filter to remove
* @return *this
*/
- virtual SWModule &RemoveEncodingFilter(SWFilter *oldfilter) {
- encodingFilters->remove(oldfilter);
+ virtual SWModule &removeEncodingFilter(SWFilter *oldFilter) {
+ encodingFilters->remove(oldFilter);
return *this;
}
+ SWDEPRECATED SWModule &RemoveEncodingFilter(SWFilter *oldFilter) { return removeEncodingFilter(oldFilter); }
/** Replaces an EncodingFilter in this module's encodingfilters queue
* @param oldfilter the filter to remove
* @param newfilter the filter to add in its place
* @return *this
*/
- virtual SWModule &ReplaceEncodingFilter(SWFilter *oldfilter, SWFilter *newfilter) {
+ virtual SWModule &replaceEncodingFilter(SWFilter *oldFilter, SWFilter *newFilter) {
FilterList::iterator iter;
for (iter = encodingFilters->begin(); iter != encodingFilters->end(); iter++) {
- if (*iter == oldfilter)
- *iter = newfilter;
+ if (*iter == oldFilter)
+ *iter = newFilter;
}
return *this;
}
+ SWDEPRECATED SWModule &ReplaceEncodingFilter(SWFilter *oldFilter, SWFilter *newFilter) { return replaceEncodingFilter(oldFilter, newFilter); }
/** encodingFilter run a buf through this module's Encoding Filters
* @param buf the buffer to filter
* @param key key location from where this buffer was extracted
*/
- virtual void encodingFilter(SWBuf &buf, const SWKey *key) {
+ virtual void encodingFilter(SWBuf &buf, const SWKey *key) const {
filterBuffer(encodingFilters, buf, key);
}
@@ -546,25 +579,27 @@ public:
* @param newfilter the filter to add
* @return *this
*/
- virtual SWModule &AddStripFilter(SWFilter *newfilter) {
- stripFilters->push_back(newfilter);
+ virtual SWModule &addStripFilter(SWFilter *newFilter) {
+ stripFilters->push_back(newFilter);
return *this;
}
+ SWDEPRECATED SWModule &AddStripFilter(SWFilter *newFilter) { return addStripFilter(newFilter); }
/** Adds a RawFilter to this module's rawFilters queue
- * @param newfilter the filter to add
+ * @param newFilter the filter to add
* @return *this
*/
- virtual SWModule &AddRawFilter(SWFilter *newfilter) {
+ virtual SWModule &addRawFilter(SWFilter *newfilter) {
rawFilters->push_back(newfilter);
return *this;
}
+ SWDEPRECATED SWModule &AddRawFilter(SWFilter *newFilter) { return addRawFilter(newFilter); }
/** StripFilter run a buf through this module's Strip Filters
* @param buf the buffer to filter
* @param key key location from where this buffer was extracted
*/
- virtual void stripFilter(SWBuf &buf, const SWKey *key) {
+ virtual void stripFilter(SWBuf &buf, const SWKey *key) const {
filterBuffer(stripFilters, buf, key);
}
@@ -573,7 +608,7 @@ public:
* @param buf the buffer to filter
* @param key key location from where this buffer was extracted
*/
- virtual void rawFilter(SWBuf &buf, const SWKey *key) {
+ virtual void rawFilter(SWBuf &buf, const SWKey *key) const {
filterBuffer(rawFilters, buf, key);
}
@@ -584,16 +619,17 @@ public:
* @param newfilter the filter to add
* @return *this
*/
- virtual SWModule &AddOptionFilter(SWOptionFilter *newfilter) {
- optionFilters->push_back(newfilter);
+ virtual SWModule &addOptionFilter(SWOptionFilter *newFilter) {
+ optionFilters->push_back(newFilter);
return *this;
}
+ SWDEPRECATED SWModule &AddOptionFilter(SWOptionFilter *newFilter) { return addOptionFilter(newFilter); }
/** OptionFilter a text buffer
* @param buf the buffer to filter
* @param key key location from where this buffer was extracted
*/
- virtual void optionFilter(SWBuf &buf, const SWKey *key) {
+ virtual void optionFilter(SWBuf &buf, const SWKey *key) const {
filterBuffer(optionFilters, buf, key);
}
@@ -605,7 +641,8 @@ public:
* @param len max len to process
* @return result buffer
*/
- virtual const char *StripText(const char *buf = 0, int len = -1);
+ virtual const char *stripText(const char *buf = 0, int len = -1);
+ SWDEPRECATED const char *StripText(const char *buf = 0, int len = -1) { return stripText(buf, len); }
/** Produces renderable text of the current module entry or supplied text
*
@@ -615,19 +652,26 @@ public:
* @param render for internal use
* @return result buffer
*/
- virtual const char *RenderText(const char *buf = 0, int len = -1, bool render = true);
+ SWBuf renderText(const char *buf = 0, int len = -1, bool render = true);
+ SWDEPRECATED const char *RenderText(const char *buf = 0, int len = -1, bool render = true) { return renderText(buf, len, render); }
+
+ /** Produces any header data which might be useful which is associated with the
+ * processing done with this filter. A typical example is a suggested
+ * CSS style block for classed containers.
+ */
+ virtual const char *getRenderHeader() const;
/** Produces plain text, without markup, of the module entry at the supplied key
* @param tmpKey desired module entry
* @return result buffer
*/
- virtual const char *StripText(const SWKey *tmpKey);
+ virtual const char *stripText(const SWKey *tmpKey);
/** Produces renderable text of the module entry at the supplied key
* @param tmpKey key to use to grab text
* @return this module's text at specified key location massaged by Render filters
*/
- virtual const char *RenderText(const SWKey *tmpKey);
+ SWBuf renderText(const SWKey *tmpKey);
/** Whether or not to only hit one entry when iterating encounters
* consecutive links when iterating
@@ -638,10 +682,11 @@ public:
/** Whether or not to only hit one entry when iterating encounters
* consecutive links when iterating
*/
- virtual bool getSkipConsecutiveLinks() { return skipConsecutiveLinks; }
+ virtual bool isSkipConsecutiveLinks() { return skipConsecutiveLinks; }
+ SWDEPRECATED bool getSkipConsecutiveLinks() { return isSkipConsecutiveLinks(); }
- virtual bool isLinked(const SWKey *k1, const SWKey *k2) const { return false; }
- virtual bool hasEntry(const SWKey *k) const { return false; }
+ virtual bool isLinked(const SWKey *, const SWKey *) const { return false; }
+ virtual bool hasEntry(const SWKey *) const { return false; }
/** Entry Attributes are special data pertaining to the current entry.
* To see what Entry Attributes exists for a specific entry of a module,
@@ -656,7 +701,8 @@ public:
* engine processing turns them off (like searching) temporarily for
* optimization.
*/
- virtual void processEntryAttributes(bool val) const { procEntAttr = val; }
+ virtual void setProcessEntryAttributes(bool val) const { procEntAttr = val; }
+ SWDEPRECATED void processEntryAttributes(bool val) const { setProcessEntryAttributes(val); }
/** Whether or not we're processing Entry Attributes
*/
diff --git a/include/swobject.h b/include/swobject.h
index 6f60a57..8866c37 100644
--- a/include/swobject.h
+++ b/include/swobject.h
@@ -1,24 +1,25 @@
/******************************************************************************
-* swobject.h - definition for SWObject used as lowest base class for many
-* SWORD objects
-*
-* $Id: swobject.h 1790 2005-05-03 03:49:04Z scribe $
-*
-* Copyright 2005 CrossWire Bible Society (http://www.crosswire.org)
-* CrossWire Bible Society
-* P. O. Box 2528
-* Tempe, AZ 85280-2528
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation version 2.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-*/
+ *
+ * swobject.h - definition for SWObject used as lowest base class for
+ * many SWORD objects
+ *
+ * $Id: swobject.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
#ifndef SWOBJECT_H
#define SWOBJECT_H
@@ -48,7 +49,7 @@ public:
* It is used because dynamic_cast is not available on all plattforms supported
* by Sword. Use SWDYNAMIC_CAST(classname, object) instead of dynamic_cast<classname>(object).
*/
-class SWObject {
+class SWDLLEXPORT SWObject {
protected:
SWClass * myclass;
diff --git a/include/swoptfilter.h b/include/swoptfilter.h
index f1b00a6..0f2aed5 100644
--- a/include/swoptfilter.h
+++ b/include/swoptfilter.h
@@ -1,6 +1,8 @@
/***************************************************************************
*
- * $Id: swoptfilter.h 1864 2005-11-20 06:06:40Z scribe $
+ * swoptfilter.h - Implenetation of SWOptionFilter
+ *
+ * $Id: swoptfilter.h 2980 2013-09-14 21:51:47Z scribe $
*
* Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
@@ -35,13 +37,14 @@ typedef std::list < SWBuf > StringList;
/** Base class for all option filters.
*/
-class SWDLLEXPORT SWOptionFilter : public SWFilter {
+class SWDLLEXPORT SWOptionFilter : public virtual SWFilter {
protected:
SWBuf optionValue;
const char *optName;
const char *optTip;
const StringList *optValues;
bool option;
+ bool isBooleanVal;
public:
SWOptionFilter();
@@ -49,6 +52,12 @@ public:
virtual ~SWOptionFilter();
+ /** many options are simple Off/On boolean type, and frontends may wish to show these
+ * with checkmarks or the like to the end user. This is a convenience method
+ * to allow a frontend to check if this filter has only Off/On values
+ */
+ bool isBoolean() { return isBooleanVal; }
+
/** gets the name of the option of this filter
* @return option name
*/
diff --git a/include/swsearchable.h b/include/swsearchable.h
index 928352e..16102a8 100644
--- a/include/swsearchable.h
+++ b/include/swsearchable.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * swsearchable.h - definition of class SWSearchable used to provide an
- * interface for objects that be searched.
*
- * $Id: swsearchable.h 2054 2007-05-25 17:31:39Z scribe $
+ * swsearchable.h - definition of class SWSearchable used to provide an
+ * interface for objects that be searched.
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swsearchable.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/swtext.h b/include/swtext.h
index 37a2f16..11520a4 100644
--- a/include/swtext.h
+++ b/include/swtext.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * swtext.h - code for base class 'SWText'. SWText is the basis for all
- * types of text modules
*
- * $Id: swtext.h 2324 2009-04-20 18:40:15Z scribe $
+ * swtext.h - code for base class 'SWText'. SWText is the basis for all
+ * types of text modules
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swtext.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -57,10 +58,10 @@ public:
virtual ~SWText();
/** Create the correct key (VerseKey) for use with SWText
*/
- virtual SWKey *CreateKey() const;
+ virtual SWKey *createKey() const;
- virtual long Index() const;
- virtual long Index(long iindex);
+ virtual long getIndex() const;
+ virtual void setIndex(long iindex);
// OPERATORS -----------------------------------------------------------------
diff --git a/include/swunicod.h b/include/swunicod.h
deleted file mode 100644
index 3bf4e95..0000000
--- a/include/swunicod.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- *
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
- * CrossWire Bible Society
- * P. O. Box 2528
- * Tempe, AZ 85280-2528
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the
- * Free Software Foundation version 2.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- */
-
-
-#ifndef SWUNICOD_H
-#define SWUNICOD_H
-
-#include <defs.h>
-SWORD_NAMESPACE_START
-
-/** Converts a 32-bit unsigned integer UTF-32 value into a UTF-8 encoded 1-6 byte array
- * @param utf32 the UTF-32 Unicode code point value
- * @param utf8 pointer to an array of 6 unsigned chars to contain the UTF-8 value
- * @return utf8
- */
-unsigned char* UTF32to8 (unsigned long utf32, unsigned char * utf8);
-
-
-/** Converts a UTF-8 encoded 1-6 byte array into a 32-bit unsigned integer UTF-32 value
- * @param utf8 pointer to an array of 6 unsigned chars containing the UTF-8 value, starting in the utf8[0]
- * @param utf32 the UTF-32 Unicode code point value
- * @return utf32
- */
-unsigned long UTF8to32 (unsigned char * utf8, unsigned long utf32);
-
-SWORD_NAMESPACE_END
-
-#endif
diff --git a/include/swversion.h b/include/swversion.h
index d3c0ab1..2235a66 100644
--- a/include/swversion.h
+++ b/include/swversion.h
@@ -1,9 +1,11 @@
/******************************************************************************
- * swversion.h - definition of class SWVersion used to compare version info
*
- * $Id: swversion.h 1763 2005-04-03 23:57:03Z scribe $
+ * swversion.h - definition of class SWVersion used to compare version
+ * info
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: swversion.h 3007 2014-01-14 04:47:16Z greg.hellings $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -22,6 +24,13 @@
#ifndef SWVERSION_H
#define SWVERSION_H
+#define SWORD_VERSION_NUM 107002000
+#define SWORD_VERSION_STR "1.7.2"
+#define SWORD_VERSION_MAJOR 1
+#define SWORD_VERSION_MINOR 7
+#define SWORD_VERSION_MICRO 2
+#define SWORD_VERSION_NANO 0
+
#include <defs.h>
SWORD_NAMESPACE_START
diff --git a/include/swversion.h.in b/include/swversion.h.in
new file mode 100644
index 0000000..919380f
--- /dev/null
+++ b/include/swversion.h.in
@@ -0,0 +1,74 @@
+/******************************************************************************
+ *
+ * swversion.h - definition of class SWVersion used to compare version
+ * info
+ *
+ * $Id: swversion.h.in 2959 2013-08-13 03:55:38Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
+#ifndef SWVERSION_H
+#define SWVERSION_H
+
+#define SWORD_VERSION_NUM @SWORD_VERSION_NUM@
+#define SWORD_VERSION_STR "@SWORD_VERSION_STR@"
+#define SWORD_VERSION_MAJOR @SWORD_VERSION_MAJOR@
+#define SWORD_VERSION_MINOR @SWORD_VERSION_MINOR@
+#define SWORD_VERSION_MICRO @SWORD_VERSION_MICRO@
+#define SWORD_VERSION_NANO @SWORD_VERSION_NANO@
+
+#include <defs.h>
+SWORD_NAMESPACE_START
+
+/** A basic tool class to handle program version numbers.
+*/
+class SWDLLEXPORT SWVersion {
+ public:
+ /** The different version subnumbers.
+ */
+ int major, minor, minor2, minor3;
+ /**The constructor.
+ * @param version Version string to be parsed.
+ */
+ SWVersion(const char *version = "0.0");
+ /** Compare 2 Versions with each other.
+ * @param vi Version number to compare with.
+ * @return >0:this>vi; 0:this==vi; <0:this<vi
+ */
+ int compare(const SWVersion &vi) const;
+ /** @return The parsed version number text.
+ */
+ const char *getText() const;
+ /** @return The parsed version number text.
+ */
+ operator const char *() const { return getText(); }
+ bool operator>(const SWVersion &vi) const {return (compare(vi) > 0);}
+ bool operator<(const SWVersion &vi) const {return (compare(vi) < 0);}
+ bool operator>=(const SWVersion &vi) const {return (compare(vi) >= 0);}
+ bool operator<=(const SWVersion &vi) const {return (compare(vi) <= 0);}
+ bool operator==(const SWVersion &vi) const {return (compare(vi) == 0);}
+
+ /** Current sword library version.
+ * Use this to check (e.g. at compile time) if the
+ * version of the sword lib is recent enough for your program.
+ */
+ static SWVersion currentVersion;
+};
+
+SWORD_NAMESPACE_END
+#endif
+
diff --git a/include/sysdata.h b/include/sysdata.h
index 0a6b899..b95b836 100644
--- a/include/sysdata.h
+++ b/include/sysdata.h
@@ -1,3 +1,25 @@
+/******************************************************************************
+ *
+ * sysdata.h -
+ *
+ * $Id: sysdata.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
#ifndef SIZEDTYPES_H
#define SIZEDTYPES_H
/*
@@ -18,9 +40,15 @@ typedef unsigned short __u16;
typedef signed int __s32;
typedef unsigned int __u32;
-#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
-//typedef __signed__ long long __s64;
-//typedef unsigned long long __u64;
+#ifdef __GNUC__
+__extension__ typedef __signed__ long long __s64;
+__extension__ typedef unsigned long long __u64;
+#elif defined(__BORLANDC__)
+typedef signed __int64 __s64;
+typedef unsigned __int64 __u64;
+#else
+typedef signed long long __s64;
+typedef unsigned long long __u64;
#endif
#undef __swswap16
diff --git a/include/teihtmlhref.h b/include/teihtmlhref.h
index 302c38e..99b2755 100644
--- a/include/teihtmlhref.h
+++ b/include/teihtmlhref.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id:
+ * teihtmlhref.h - Implementation of TEIHTMLHREF
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: teihtmlhref.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2008-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -29,6 +31,7 @@ SWORD_NAMESPACE_START
*/
class SWDLLEXPORT TEIHTMLHREF : public SWBasicFilter {
private:
+ bool renderNoteNumbers;
protected:
class MyUserData : public BasicFilterUserData {
@@ -45,6 +48,7 @@ protected:
virtual bool handleToken(SWBuf &buf, const char *token, BasicFilterUserData *userData);
public:
TEIHTMLHREF();
+ void setRenderNoteNumbers(bool val = true) { renderNoteNumbers = val; }
};
SWORD_NAMESPACE_END
diff --git a/include/teiplain.h b/include/teiplain.h
index b0fe06d..c6376e5 100644
--- a/include/teiplain.h
+++ b/include/teiplain.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id:
+ * teiplain.h - Implementation of TEIPlain
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: teiplain.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2006-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/teirtf.h b/include/teirtf.h
index d8a7b7f..e9793d3 100644
--- a/include/teirtf.h
+++ b/include/teirtf.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id:
+ * teirtf.h - Implementation of TEIRTF
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: teirtf.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2006-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/teixhtml.h b/include/teixhtml.h
new file mode 100644
index 0000000..c948608
--- /dev/null
+++ b/include/teixhtml.h
@@ -0,0 +1,55 @@
+/******************************************************************************
+ *
+ * teixhtml.h - Implementation of TEIXHTML
+ *
+ * $Id: teixhtml.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2012-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
+#ifndef TEIXHTML_H
+#define TEIXHTML_H
+
+#include <swbasicfilter.h>
+
+SWORD_NAMESPACE_START
+
+/** this filter converts TEI text to XHTML text
+ */
+class SWDLLEXPORT TEIXHTML : public SWBasicFilter {
+private:
+ bool renderNoteNumbers;
+
+protected:
+ class MyUserData : public BasicFilterUserData {
+ public:
+ bool BiblicalText;
+ SWBuf lastHi;
+
+ SWBuf version;
+ MyUserData(const SWModule *module, const SWKey *key);
+ };
+ virtual BasicFilterUserData *createUserData(const SWModule *module, const SWKey *key) {
+ return new MyUserData(module, key);
+ }
+ virtual bool handleToken(SWBuf &buf, const char *token, BasicFilterUserData *userData);
+public:
+ TEIXHTML();
+ void setRenderNoteNumbers(bool val = true) { renderNoteNumbers = val; }
+};
+
+SWORD_NAMESPACE_END
+#endif
diff --git a/include/thmlfootnotes.h b/include/thmlfootnotes.h
index 6106b13..133ff2e 100644
--- a/include/thmlfootnotes.h
+++ b/include/thmlfootnotes.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmlfootnotes.h 1688 2005-01-01 04:42:26Z scribe $
+ * thmlfootnotes.h - Implementation of ThMLFootnotes
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlfootnotes.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/thmlgbf.h b/include/thmlgbf.h
index 0975a24..03cd88d 100644
--- a/include/thmlgbf.h
+++ b/include/thmlgbf.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmlgbf.h 1688 2005-01-01 04:42:26Z scribe $
+ * thmlgbf.h - Implementation of ThMLGBF
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlgbf.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1999-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/thmlheadings.h b/include/thmlheadings.h
index 18aadc5..2cbe4cb 100644
--- a/include/thmlheadings.h
+++ b/include/thmlheadings.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmlheadings.h 1688 2005-01-01 04:42:26Z scribe $
+ * thmlheadings.h - Implementation of ThMLHeadings
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlheadings.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/thmlhtml.h b/include/thmlhtml.h
index 26871a6..2f32cc4 100644
--- a/include/thmlhtml.h
+++ b/include/thmlhtml.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmlhtml.h 1688 2005-01-01 04:42:26Z scribe $
+ * thmlhtml.h - Implementation of ThMLHTML
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlhtml.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1999-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/thmlhtmlhref.h b/include/thmlhtmlhref.h
index 2f91fcd..8ce802e 100644
--- a/include/thmlhtmlhref.h
+++ b/include/thmlhtmlhref.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmlhtmlhref.h 2157 2008-05-13 23:37:56Z scribe $
+ * thmlhtmlhref.h - Implementation of ThMLHTMLHREF
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlhtmlhref.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -30,6 +32,7 @@ SWORD_NAMESPACE_START
*/
class SWDLLEXPORT ThMLHTMLHREF : public SWBasicFilter {
SWBuf imgPrefix;
+ bool renderNoteNumbers;
protected:
class MyUserData : public BasicFilterUserData {
public:
@@ -48,6 +51,7 @@ public:
ThMLHTMLHREF();
virtual const char *getImagePrefix() { return imgPrefix.c_str(); }
virtual void setImagePrefix(const char *newImgPrefix) { imgPrefix = newImgPrefix; }
+ void setRenderNoteNumbers(bool val = true) { renderNoteNumbers = val; }
};
SWORD_NAMESPACE_END
#endif /* _THMLHTMLHREF_H */
diff --git a/include/thmllemma.h b/include/thmllemma.h
index 40a056a..54efbc6 100644
--- a/include/thmllemma.h
+++ b/include/thmllemma.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmllemma.h 1688 2005-01-01 04:42:26Z scribe $
+ * thmllemma.h - Implementation of ThMLLemma
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmllemma.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/thmlmorph.h b/include/thmlmorph.h
index 66e55bd..bdb1f54 100644
--- a/include/thmlmorph.h
+++ b/include/thmlmorph.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmlmorph.h 1688 2005-01-01 04:42:26Z scribe $
+ * thmlmorph.h - Implementation of ThMLMorph
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlmorph.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/thmlosis.h b/include/thmlosis.h
index c3a2a13..23a7386 100644
--- a/include/thmlosis.h
+++ b/include/thmlosis.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmlosis.h 1804 2005-05-07 06:26:10Z scribe $
+ * thmlosis.h - Implementation of ThMLOSIS
*
- * Copyright 2003 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlosis.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2002-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/thmlplain.h b/include/thmlplain.h
index 499dbf6..df0d4bc 100644
--- a/include/thmlplain.h
+++ b/include/thmlplain.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmlplain.h 2068 2007-08-31 06:40:23Z scribe $
+ * thmlplain.h - Implementation of ThMLPlain
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlplain.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1999-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/thmlrtf.h b/include/thmlrtf.h
index dfeecb2..9b7d3f2 100644
--- a/include/thmlrtf.h
+++ b/include/thmlrtf.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmlrtf.h 1688 2005-01-01 04:42:26Z scribe $
+ * thmlrtf.h - Implementation of ThMLRTF
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlrtf.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1999-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/thmlscripref.h b/include/thmlscripref.h
index 58b4820..9c5ecea 100644
--- a/include/thmlscripref.h
+++ b/include/thmlscripref.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmlscripref.h 1688 2005-01-01 04:42:26Z scribe $
+ * thmlscripref.h - Implementation of ThMLScripRef
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlscripref.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/thmlstrongs.h b/include/thmlstrongs.h
index dfb97b3..8ea6963 100644
--- a/include/thmlstrongs.h
+++ b/include/thmlstrongs.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmlstrongs.h 1688 2005-01-01 04:42:26Z scribe $
+ * thmlstrongs.h - Implementation of ThMLStrongs
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlstrongs.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/thmlvariants.h b/include/thmlvariants.h
index 9adda8c..4251c62 100644
--- a/include/thmlvariants.h
+++ b/include/thmlvariants.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmlvariants.h 1864 2005-11-20 06:06:40Z scribe $
+ * thmlvariants.h - Implementation of ThMLVariants
*
- * Copyright 2001 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlvariants.h 2980 2013-09-14 21:51:47Z scribe $
+ *
+ * Copyright 2002-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -28,25 +30,10 @@ SWORD_NAMESPACE_START
/** This Filter shows/hides textual variants
*/
class SWDLLEXPORT ThMLVariants : public SWOptionFilter {
- char option;
-
- static const char primary[];
- static const char secondary[];
- static const char all[];
-
- static const char optName[];
- static const char optTip[];
- StringList options;
-
public:
ThMLVariants();
virtual ~ThMLVariants();
virtual char processText(SWBuf &text, const SWKey *key = 0, const SWModule *module = 0);
- virtual const char *getOptionName() { return optName; }
- virtual const char *getOptionTip() { return optTip; }
- virtual void setOptionValue(const char *ival);
- virtual const char *getOptionValue();
- virtual StringList getOptionValues() { return options; }
};
SWORD_NAMESPACE_END
diff --git a/include/thmlwebif.h b/include/thmlwebif.h
index 25201d7..5efeddd 100644
--- a/include/thmlwebif.h
+++ b/include/thmlwebif.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: thmlwebif.h 1688 2005-01-01 04:42:26Z scribe $
+ * thmlwebif.h - Implementation of ThMLWEBIF
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlwebif.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -21,13 +23,13 @@
#ifndef _ThMLWEBIF_H
#define _ThMLWEBIF_H
-#include <thmlhtmlhref.h>
+#include <thmlxhtml.h>
SWORD_NAMESPACE_START
/** this filter converts ThML text to HTML text with hrefs
*/
-class SWDLLEXPORT ThMLWEBIF : public ThMLHTMLHREF {
+class SWDLLEXPORT ThMLWEBIF : public ThMLXHTML {
const SWBuf baseURL;
const SWBuf passageStudyURL;
@@ -36,5 +38,7 @@ protected:
public:
ThMLWEBIF();
};
+
SWORD_NAMESPACE_END
-#endif /* _ThMLWEBIF_H */
+
+#endif
diff --git a/include/thmlwordjs.h b/include/thmlwordjs.h
index 9d7b83d..ae80292 100644
--- a/include/thmlwordjs.h
+++ b/include/thmlwordjs.h
@@ -1,8 +1,10 @@
/***************************************************************************
*
- * $Id: thmlstrongs.h 1688 2005-01-01 04:42:26Z scribe $
+ * thmlwordjs.h - Implementation of ThMLWordJS
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: thmlwordjs.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2005-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/thmlxhtml.h b/include/thmlxhtml.h
new file mode 100644
index 0000000..b0b5ef3
--- /dev/null
+++ b/include/thmlxhtml.h
@@ -0,0 +1,60 @@
+/******************************************************************************
+ *
+ * thmlxhtml.h - Implementation of ThMLXHTML
+ *
+ * $Id: thmlxhtml.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2011-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
+#ifndef _THMLXHTML_H
+#define _THMLXHTML_H
+
+#include <swbasicfilter.h>
+#include <utilxml.h>
+
+SWORD_NAMESPACE_START
+
+/** this filter converts ThML text to classed XHTML
+ */
+class SWDLLEXPORT ThMLXHTML : public SWBasicFilter {
+ SWBuf imgPrefix;
+ bool renderNoteNumbers;
+protected:
+ class MyUserData : public BasicFilterUserData {
+ public:
+ MyUserData(const SWModule *module, const SWKey *key);//: BasicFilterUserData(module, key) {}
+ bool inscriptRef;
+ bool SecHead;
+ bool BiblicalText;
+ SWBuf version;
+ XMLTag startTag;
+ };
+ virtual BasicFilterUserData *createUserData(const SWModule *module, const SWKey *key) {
+ return new MyUserData(module, key);
+ }
+ virtual bool handleToken(SWBuf &buf, const char *token, BasicFilterUserData *userData);
+public:
+ ThMLXHTML();
+ virtual const char *getImagePrefix() { return imgPrefix.c_str(); }
+ virtual void setImagePrefix(const char *newImgPrefix) { imgPrefix = newImgPrefix; }
+ virtual const char *getHeader() const;
+ void setRenderNoteNumbers(bool val = true) { renderNoteNumbers = val; }
+};
+
+SWORD_NAMESPACE_END
+
+#endif
diff --git a/include/treekey.h b/include/treekey.h
index 749460b..02b944e 100644
--- a/include/treekey.h
+++ b/include/treekey.h
@@ -1,9 +1,10 @@
/******************************************************************************
- * versekey.h - code for class 'versekey'- a standard Biblical verse key
*
- * $Id: treekey.h 2280 2009-03-07 15:34:36Z scribe $
+ * treekey.h - code for class 'TreeKey'
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: treekey.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2002-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -123,8 +124,8 @@ public:
virtual void decrement(int steps = 1) = 0;
virtual void increment(int steps = 1) = 0;
virtual bool isTraversable() const { return true; }
- virtual long Index() const { return getOffset(); }
- virtual long Index(long iindex) { setOffset(iindex); return getOffset(); }
+ virtual long getIndex() const { return getOffset(); }
+ virtual void setIndex(long iindex) { setOffset(iindex); }
/** Set the key to this path. If the path doesn't exist, then
* nodes are created as necessary
diff --git a/include/treekeyidx.h b/include/treekeyidx.h
index e6515e5..e818bfc 100644
--- a/include/treekeyidx.h
+++ b/include/treekeyidx.h
@@ -1,9 +1,10 @@
/******************************************************************************
- * versekey.h - code for class 'versekey'- a standard Biblical verse key
*
- * $Id: treekeyidx.h 2280 2009-03-07 15:34:36Z scribe $
+ * treekeyidx.h - code for class 'TreeKeyIdx'
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: treekeyidx.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2002-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/unicodertf.h b/include/unicodertf.h
index ace8b05..a07757c 100644
--- a/include/unicodertf.h
+++ b/include/unicodertf.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: unicodertf.h 1688 2005-01-01 04:42:26Z scribe $
+ * unicodertf.h - Implementation of UnicodeRTF
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: unicodertf.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/url.h b/include/url.h
index c57ace0..f0850a3 100644
--- a/include/url.h
+++ b/include/url.h
@@ -1,23 +1,24 @@
/******************************************************************************
-* url.h - code for an URL parser utility class
-*
-* $Id: url.h 1763 2005-04-03 23:57:03Z scribe $
-*
-* Copyright 2003 CrossWire Bible Society (http://www.crosswire.org)
-* CrossWire Bible Society
-* P. O. Box 2528
-* Tempe, AZ 85280-2528
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation version 2.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-*/
+ *
+ * url.h - code for an URL parser utility class
+ *
+ * $Id: url.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2004-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
#ifndef URL_H
#define URL_H
diff --git a/include/utf16utf8.h b/include/utf16utf8.h
index ed17116..c22cd40 100644
--- a/include/utf16utf8.h
+++ b/include/utf16utf8.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: utf16utf8.h 1688 2005-01-01 04:42:26Z scribe $
+ * utf16utf8.h - Implementation of UTF16UTF8
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utf16utf8.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/utf8arabicpoints.h b/include/utf8arabicpoints.h
index 34707a5..aca0c6c 100644
--- a/include/utf8arabicpoints.h
+++ b/include/utf8arabicpoints.h
@@ -1,10 +1,11 @@
/******************************************************************************
*
- * UTF8ArabicPoints - SWFilter descendant to remove UTF-8 Arabic vowel points
+ * utf8arabicpoints.h - SWFilter descendant to remove UTF-8 Arabic
+ * vowel points
*
- * $Id: utf8arabicpoints.h 1688 2008-11-30 04:42:26Z refdoc $
+ * $Id: utf8arabicpoints.h 2865 2013-07-08 13:44:37Z scribe $
*
- * Copyright 2009 CrossWire Bible Society (http://www.crosswire.org)
+ * Copyright 2009-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/utf8arshaping.h b/include/utf8arshaping.h
index 047b02f..6534050 100644
--- a/include/utf8arshaping.h
+++ b/include/utf8arshaping.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: utf8arshaping.h 1688 2005-01-01 04:42:26Z scribe $
+ * utf8arshaping.h - Implementation of UTF8arShaping
*
- * Copyright 2001 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utf8arshaping.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/utf8bidireorder.h b/include/utf8bidireorder.h
index a673920..9ca90fd 100644
--- a/include/utf8bidireorder.h
+++ b/include/utf8bidireorder.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: utf8bidireorder.h 1688 2005-01-01 04:42:26Z scribe $
+ * utf8bidireorder.h - Implementation of UTF8BiDiReorder
*
- * Copyright 2001 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utf8bidireorder.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/utf8cantillation.h b/include/utf8cantillation.h
index c268655..9b32489 100644
--- a/include/utf8cantillation.h
+++ b/include/utf8cantillation.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: utf8cantillation.h 1688 2005-01-01 04:42:26Z scribe $
+ * utf8cantillation.h - Implementation of UTF8Cantillation
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utf8cantillation.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/utf8greekaccents.h b/include/utf8greekaccents.h
index 847fd5c..83ec957 100644
--- a/include/utf8greekaccents.h
+++ b/include/utf8greekaccents.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: utf8greekaccents.h 1688 2005-01-01 04:42:26Z scribe $
+ * utf8greekaccents.h - Implementation of UTF8GreekAccents
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utf8greekaccents.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/utf8hebrewpoints.h b/include/utf8hebrewpoints.h
index d3cc70b..4b97ddb 100644
--- a/include/utf8hebrewpoints.h
+++ b/include/utf8hebrewpoints.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: utf8hebrewpoints.h 1688 2005-01-01 04:42:26Z scribe $
+ * utf8hebrewpoints.h - Implementation of UTF8HebrewPoints
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utf8hebrewpoints.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/utf8html.h b/include/utf8html.h
index ee7d07e..83c152a 100644
--- a/include/utf8html.h
+++ b/include/utf8html.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: utf8html.h 1688 2005-01-01 04:42:26Z scribe $
+ * utf8html.h - Implementation of UTF8HTML
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utf8html.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/utf8latin1.h b/include/utf8latin1.h
index 5b3c544..b3d9ac1 100644
--- a/include/utf8latin1.h
+++ b/include/utf8latin1.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: utf8latin1.h 1688 2005-01-01 04:42:26Z scribe $
+ * utf8latin1.h - Implementation of UTF8Latin1
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utf8latin1.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/utf8nfc.h b/include/utf8nfc.h
index b91fe37..c8798cc 100644
--- a/include/utf8nfc.h
+++ b/include/utf8nfc.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: utf8nfc.h 1688 2005-01-01 04:42:26Z scribe $
+ * utf8nfc.h - Implementation of UTF8NFC
*
- * Copyright 2001 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utf8nfc.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/utf8nfkd.h b/include/utf8nfkd.h
index 70a33e5..347225e 100644
--- a/include/utf8nfkd.h
+++ b/include/utf8nfkd.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: utf8nfkd.h 1688 2005-01-01 04:42:26Z scribe $
+ * utf8nfkd.h - Implementation of UTF8NFKD
*
- * Copyright 2001 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utf8nfkd.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/utf8transliterator.h b/include/utf8transliterator.h
index d3b23c7..130a519 100644
--- a/include/utf8transliterator.h
+++ b/include/utf8transliterator.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: utf8transliterator.h 2473 2009-10-26 06:06:09Z chrislit $
+ * utf8transliterator.h - Implementation of UTF8Transliterator
*
- * Copyright 2001 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utf8transliterator.h 2906 2013-07-17 22:34:43Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -54,10 +56,6 @@ struct SWTransData {
typedef std::map<const UnicodeString, SWTransData> SWTransMap;
typedef std::pair<UnicodeString, SWTransData> SWTransPair;
-// Chris, please add more javadoc-style documentation in this header file
-// so that the information will show up in the doxygen-generated
-// api-docs.
-
/** This Filter uses ICU for transliteration
*/
class SWDLLEXPORT UTF8Transliterator : public SWOptionFilter {
@@ -69,17 +67,20 @@ private:
static const char optName[];
static const char optTip[];
+ StringList options;
+
+#ifdef ICU_CUSTOM_RESOURCE_BUILDING
static const char SW_RB_RULE_BASED_IDS[];
static const char SW_RB_RULE[];
static const char SW_RESDATA[];
- StringList options;
static SWTransMap transMap;
UErrorCode utf8status;
void Load(UErrorCode &status);
- void registerTrans(const UnicodeString& ID, const UnicodeString& resource, UTransDirection dir, UErrorCode &status);
- bool addTrans(const char* newTrans, SWBuf* transList);
+ void registerTrans(const UnicodeString& ID, const UnicodeString& resource, UTransDirection dir, UErrorCode &status);
bool checkTrans(const UnicodeString& ID, UErrorCode &status);
+#endif
+ bool addTrans(const char* newTrans, SWBuf* transList);
Transliterator *createTrans(const UnicodeString& ID, UTransDirection dir, UErrorCode &status);
public:
diff --git a/include/utf8utf16.h b/include/utf8utf16.h
index 0c51bea..afa1c26 100644
--- a/include/utf8utf16.h
+++ b/include/utf8utf16.h
@@ -1,8 +1,10 @@
/******************************************************************************
*
- * $Id: utf8utf16.h 1688 2005-01-01 04:42:26Z scribe $
+ * utf8utf16.h - Implementation of UTF8UTF16
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utf8utf16.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/utilstr.h b/include/utilstr.h
index a93299f..573b4a1 100644
--- a/include/utilstr.h
+++ b/include/utilstr.h
@@ -1,9 +1,10 @@
/******************************************************************************
- * utilstr.h - prototypes for string utility functions
*
- * $Id: utilstr.h 2446 2009-08-24 00:43:27Z scribe $
+ * utilstr.h - prototypes for string utility functions
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utilstr.h 2981 2013-09-15 00:05:26Z scribe $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -58,6 +59,19 @@ __u32 getUniCharFromUTF8(const unsigned char **buf);
/******************************************************************************
+ * getUTF8FromUniChar - retrieves us UTF8 string from a
+ * Unicode codepoint
+ *
+ * ENT: uchar - unicode codepoint value
+ *
+ * RET: buf - a UTF8 string which consists of the proper UTF8 sequence of
+ * bytes for the given Unicode codepoint
+ */
+
+SWBuf getUTF8FromUniChar(__u32 uchar);
+
+
+/******************************************************************************
* assureValidUTF8 - iterates the supplied UTF-8 buffer and checks for validity
* replacing invalid bytes if necessary and returning a
* verified UTF8 buffer, leaving the original input
@@ -70,6 +84,21 @@ __u32 getUniCharFromUTF8(const unsigned char **buf);
*/
SWBuf assureValidUTF8(const char *buf);
+/****
+ * This can be called to convert a UTF8 stream to an SWBuf which manages
+ * a wchar_t[]
+ * access buffer with (wchar_t *)SWBuf::getRawData();
+ *
+ */
+SWBuf utf8ToWChar(const char *buf);
+
+/****
+ * This can be called to convert a wchar_t[] to a UTF-8 SWBuf
+ *
+ */
+SWBuf wcharToUTF8(const wchar_t *buf);
+
+
SWORD_NAMESPACE_END
#endif
diff --git a/include/utilxml.h b/include/utilxml.h
index 5a9c994..d385628 100644
--- a/include/utilxml.h
+++ b/include/utilxml.h
@@ -1,9 +1,10 @@
/******************************************************************************
- * utilxml.h - definition of class that deal with xml constructs
*
- * $Id: utilxml.h 2378 2009-05-04 23:18:51Z scribe $
+ * utilxml.h - definition of class that deal with xml constructs
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: utilxml.h 2980 2013-09-14 21:51:47Z scribe $
+ *
+ * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -46,7 +47,6 @@ private:
void parse() const;
const char *getPart(const char *buf, int partNum = 0, char partSplit = '|') const;
- static const char *nullstr;
public:
XMLTag(const char *tagString = 0);
@@ -54,7 +54,7 @@ public:
~XMLTag();
void setText(const char *tagString);
- inline const char *getName() const { return (name)?name:nullstr; }
+ inline const char *getName() const { return (name) ? name : SWBuf::nullStr; }
inline bool isEmpty() const {
if (!parsed)
diff --git a/include/versekey.h b/include/versekey.h
index 6b6ecfe..acddc9d 100644
--- a/include/versekey.h
+++ b/include/versekey.h
@@ -1,9 +1,11 @@
/******************************************************************************
- * versekey.h - code for class 'versekey'- a standard Biblical verse key
*
- * $Id: versekey.h 2508 2010-03-23 09:19:15Z scribe $
+ * versekey.h - code for class 'VerseKey'- a standard Biblical verse
+ * key
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: versekey.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1997-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -26,7 +28,7 @@
#include <swkey.h>
#include <swmacs.h>
#include <listkey.h>
-#include <versemgr.h>
+#include <versificationmgr.h>
#include <defs.h>
@@ -55,19 +57,15 @@ class SWDLLEXPORT VerseKey : public SWKey {
static int instance;
ListKey internalListKey;
- const VerseMgr::System *refSys;
+ const VersificationMgr::System *refSys;
/** flag for auto normalization
*/
char autonorm;
- /** flag for headings on/off
- */
- char headings;
-
- /** initialize and allocate books array
+ /** flag for intros on/off
*/
- void initstatics();
+ char intros;
/** initializes this VerseKey()
*/
@@ -79,15 +77,7 @@ class SWDLLEXPORT VerseKey : public SWKey {
// private with no bounds check
void setFromOther(const VerseKey &vk);
- /** Binary search to find the index closest, but less
- * than the given value.
- *
- * @param array long * to array to search
- * @param size number of elements in the array
- * @param value value to find
- * @return the index into the array that is less than but closest to value
- */
- int findindex(long *array, int size, long value);
+ void checkBounds();
// internal upper/lower bounds optimizations
mutable long lowerBound, upperBound; // if autonorms is on
@@ -108,13 +98,13 @@ protected:
signed char suffix;
/************************************************************************
- * VerseKey::getBookAbbrev - Attempts to find a book no from a name or
+ * VerseKey::getBookFromAbbrev - Attempts to find a book no from a name or
* abbreviation
*
* ENT: @param abbr - key for which to search;
* RET: @return book number or < 0 = not valid
*/
- virtual int getBookAbbrev(const char *abbr) const;
+ virtual int getBookFromAbbrev(const char *abbr) const;
/** Refresh keytext based on testament|book|chapter|verse
* default auto normalization to true
@@ -177,36 +167,38 @@ public:
*/
virtual ~VerseKey();
- /** sets the lower boundary for this VerseKey
- * and returns the new boundary
+ /** sets the lower boundary for this VerseKey
*
- * @param ub the new upper boundary for this VerseKey
- * @return the lower boundary the key was set to
+ * @param lb the new lower boundary for this VerseKey
*/
- VerseKey &LowerBound(const VerseKey &ub);
+ void setLowerBound(const VerseKey &lb);
+ SWDEPRECATED VerseKey &LowerBound(const VerseKey &lb) { setLowerBound(lb); return getLowerBound(); }
- /** sets the upper boundary for this VerseKey
- * and returns the new boundary
- * @param ub the new upper boundary for this VerseKey
+ /** sets the upper boundary for this VerseKey
+ * @param ub the new upper boundary for this VerseKey
* @return the upper boundary the key was set to
*/
- VerseKey &UpperBound(const VerseKey &ub);
+ void setUpperBound(const VerseKey &ub);
+ SWDEPRECATED VerseKey &UpperBound(const VerseKey &ub) { setUpperBound(ub); return getUpperBound(); }
- /** gets the lower boundary of this VerseKey
- * @return the lower boundary of this VerseKey
+ /** gets the lower boundary of this VerseKey
+ * @return the lower boundary of this VerseKey
*/
- VerseKey &LowerBound() const;
+ VerseKey &getLowerBound() const;
+ SWDEPRECATED VerseKey &LowerBound() const { return getLowerBound(); }
- /** gets the upper boundary of this VerseKey
- * @return the upper boundary of this VerseKey
+ /** gets the upper boundary of this VerseKey
+ * @return the upper boundary of this VerseKey
*/
- VerseKey &UpperBound() const;
+ VerseKey &getUpperBound() const;
+ SWDEPRECATED VerseKey &UpperBound() const { return getUpperBound(); }
- /** clears the boundaries of this VerseKey
+ /** clears the boundaries of this VerseKey
*/
- void ClearBounds();
+ void clearBounds();
+ SWDEPRECATED void ClearBounds() { clearBounds(); }
- /** Creates a new SWKey based on the current VerseKey
+ /** Creates a new SWKey based on the current VerseKey
* see also the Copy Constructor
*/
virtual SWKey *clone() const;
@@ -260,30 +252,44 @@ public:
*
* @return value of testament
*/
- virtual char Testament() const { return getTestament(); } // deprecated
virtual char getTestament() const;
+ /**
+ * @deprecated Use getTestament() instead.
+ */
+ SWDEPRECATED char Testament() const { return getTestament(); } // deprecated
+ virtual int getTestamentMax() const { return 2; }
/** Gets book
*
* @return value of book
*/
- virtual char Book() const { return getBook(); } // deprecated
virtual char getBook() const;
+ /**
+ * @deprecated Use getBook() instead.
+ */
+ SWDEPRECATED char Book() const { return getBook(); } // deprecated
+ virtual int getBookMax() const { return BMAX[testament-1]; }
/** Gets chapter
*
* @return value of chapter
*/
- virtual int Chapter() const { return getChapter(); } // deprecated
virtual int getChapter() const;
+ /**
+ * @deprecated Use getChapter() instead.
+ */
+ SWDEPRECATED int Chapter() const { return getChapter(); } // deprecated
virtual int getChapterMax() const;
/** Gets verse
*
* @return value of verse
*/
- virtual int Verse() const { return getVerse(); } // deprecated
virtual int getVerse() const;
+ /**
+ * @deprecated Use getVerse() instead.
+ */
+ SWDEPRECATED int Verse() const { return getVerse(); } // deprecated
virtual int getVerseMax() const;
/** Gets verse suffix
@@ -292,45 +298,45 @@ public:
*/
virtual char getSuffix() const;
- /** Sets/gets testament
+ /** Sets testament
*
* @param itestament value which to set testament
- * [MAXPOS(char)] - only get
- * @return if unchanged -> value of testament,
- * if changed -> previous value of testament
*/
- virtual char Testament(char itestament) { char retVal = getTestament(); setTestament(itestament); return retVal; } // deprecated
virtual void setTestament(char itestament);
+ /**
+ * @deprecated Use setTestament() instead.
+ */
+ SWDEPRECATED char Testament(char itestament) { char retVal = getTestament(); setTestament(itestament); return retVal; } // deprecated
- /** Sets/gets book
+ /** Sets book
*
* @param ibook value which to set book
- * [MAXPOS(char)] - only get
- * @return if unchanged -> value of book,
- * if changed -> previous value of book
*/
- virtual char Book(char ibook) { char retVal = getBook(); setBook(ibook); return retVal; } // deprecated
virtual void setBook(char ibook);
+ /**
+ * @deprecated Use setBook() instead.
+ */
+ SWDEPRECATED char Book(char ibook) { char retVal = getBook(); setBook(ibook); return retVal; } // deprecated
- /** Sets/gets chapter
+ /** Sets chapter
*
* @param ichapter value which to set chapter
- * [MAXPOS(int)] - only get
- * @return if unchanged -> value of chapter,
- * if changed -> previous value of chapter
*/
- virtual int Chapter(int ichapter) { char retVal = getChapter(); setChapter(ichapter); return retVal; } // deprecated
virtual void setChapter(int ichapter);
+ /**
+ * @deprecated Use setChapter() instead.
+ */
+ SWDEPRECATED int Chapter(int ichapter) { char retVal = getChapter(); setChapter(ichapter); return retVal; } // deprecated
- /** Sets/gets verse
+ /** Sets verse
*
* @param iverse value which to set verse
- * [MAXPOS(int)] - only get
- * @return if unchanged -> value of verse,
- * if changed -> previous value of verse
*/
- virtual int Verse(int iverse) { char retVal = getVerse(); setVerse(iverse); return retVal; } // deprecated;
virtual void setVerse(int iverse);
+ /**
+ * @deprecated Use setVerse() instead.
+ */
+ SWDEPRECATED int Verse(int iverse) { char retVal = getVerse(); setVerse(iverse); return retVal; } // deprecated;
/** Sets/gets verse suffix
*
@@ -344,9 +350,10 @@ public:
*
* @return *this
*/
- virtual void Normalize(char autocheck = 0);
+ virtual void normalize(bool autocheck = false);
+ SWDEPRECATED void Normalize(char autocheck = 0) { normalize(autocheck!=0); }
- /** Sets/gets flag that tells VerseKey to
+ /** Sets flag that tells VerseKey to
* automatically normalize itself when modified
*
* @param iautonorm value which to set autonorm
@@ -354,40 +361,62 @@ public:
* @return if unchanged -> value of autonorm,
* if changed -> previous value of autonorm
*/
- virtual char AutoNormalize(char iautonorm) { char retVal = isAutoNormalize()?1:0; setAutoNormalize(iautonorm); return retVal; } // deprecated
- virtual char AutoNormalize() const { return isAutoNormalize()?1:0; } // deprecated
-
- virtual bool isAutoNormalize() const;
virtual void setAutoNormalize(bool iautonorm);
+ virtual bool isAutoNormalize() const;
+
+ /**
+ * @deprecated Use setAutoNormalize() instead.
+ */
+ SWDEPRECATED char AutoNormalize(char iautonorm) { char retVal = isAutoNormalize()?1:0; setAutoNormalize(iautonorm!=0); return retVal; } // deprecated
+ /**
+ * @deprecated Use isAutoNormalize() instead.
+ */
+ SWDEPRECATED char AutoNormalize() const { return isAutoNormalize()?1:0; } // deprecated
+
/** Sets/gets flag that tells VerseKey to include
- * chapter/book/testament/module headings
+ * chapter/book/testament/module intros
*
- * @param iheadings value which to set headings
+ * @deprecated Use setIntros() and isIntros() instead.
+ * @param iheadings value which to set intros
* [MAXPOS(char)] - only get
- * @return if unchanged -> value of headings,
- * if changed -> previous value of headings
+ * @return if unchanged -> value of intros,
+ * if changed -> previous value of intros
+ */
+ SWDEPRECATED char Headings(char iheadings = MAXPOS(char)) { char retVal = isIntros(); if (iheadings != MAXPOS(char)) setIntros(iheadings!=0); return retVal; }
+
+ /** The Intros property determine whether or not to include
+ * chapter/book/testament/module intros
*/
- virtual char Headings(char iheadings = MAXPOS(char));
+ virtual void setIntros(bool val);
+ virtual bool isIntros() const;
+
/** Gets index based upon current verse
*
* @return offset
*/
- virtual long Index() const;
+ virtual long getIndex() const;
+
/** Sets index based upon current verse
*
* @param iindex value to set index to
* @return offset
*/
- virtual long Index(long iindex);
+ virtual void setIndex(long iindex);
+
/** Gets index into current testament based upon current verse
*
* @return offset
*/
- virtual long TestamentIndex() const;
+ virtual long getTestamentIndex() const;
+
+ /**
+ * @deprecated Use getTestamentIndex()
+ */
+ SWDEPRECATED long TestamentIndex() const { return getTestamentIndex(); } // deprecated, use getTestamentIndex()
virtual const char *getOSISRef() const;
virtual const char *getOSISBookName() const;
@@ -398,7 +427,23 @@ public:
*/
static const char *convertToOSIS(const char *inRef, const SWKey *defaultKey);
- virtual ListKey ParseVerseList(const char *buf, const char *defaultKey = 0, bool expandRange = false, bool useChapterAsVerse = false);
+ /******************************************************************************
+ * VerseKey::parseVerseList - Attempts to parse a buffer into separate
+ * verse entries returned in a ListKey
+ *
+ * ENT: buf - buffer to parse;
+ * defaultKey - if verse, chap, book, or testament is left off,
+ * pull info from this key (ie. Gen 2:3; 4:5;
+ * Gen would be used when parsing the 4:5 section)
+ * expandRange - whether or not to expand eg. John 1:10-12 or just
+ * save John 1:10
+ *
+ * RET: ListKey reference filled with verse entries contained in buf
+ *
+ * COMMENT: This code works but wreaks. Rewrite to make more maintainable.
+ */
+ virtual ListKey parseVerseList(const char *buf, const char *defaultKey = 0, bool expandRange = false, bool useChapterAsVerse = false);
+ SWDEPRECATED ListKey ParseVerseList(const char *buf, const char *defaultKey = 0, bool expandRange = false, bool useChapterAsVerse = false) { return parseVerseList(buf, defaultKey, expandRange, useChapterAsVerse); }
virtual const char *getRangeText() const;
virtual const char *getOSISRefRangeText() const;
/** Compares another SWKey object
diff --git a/include/versetreekey.h b/include/versetreekey.h
index ab1d108..60e2d69 100644
--- a/include/versetreekey.h
+++ b/include/versetreekey.h
@@ -1,12 +1,14 @@
/******************************************************************************
- * versekey.h - code for class 'versekey'- a standard Biblical verse key
*
- * $Id: versekey.h 1864 2005-11-20 06:06:40Z scribe $
+ * versetreekey.h - code for class 'VerseTreeKey'- a standard Biblical
+ * verse key
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: versetreekey.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2006-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
- * Tempe, AZ 85280-2528
+ * Tempe, AZ 85280-2528
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
@@ -47,7 +49,7 @@ class SWDLLEXPORT VerseTreeKey : public VerseKey, public TreeKey::PositionChange
long lastGoodOffset;
protected:
- virtual int getBookAbbrev(const char *abbr);
+ virtual int getBookFromAbbrev(const char *abbr) const;
public:
diff --git a/include/versemgr.h b/include/versificationmgr.h
index 6f59d94..4ed8a62 100644
--- a/include/versemgr.h
+++ b/include/versificationmgr.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * versemgr.h - definition of class VerseMgr used for managing
- * versification systems
*
- * $Id: versemgr.cpp 2108 2007-10-13 20:35:02Z scribe $
+ * versification.h - definition of class VersificationMgr used for managing
+ * versification systems
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: versificationmgr.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2008-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -26,8 +27,8 @@
#include <swbuf.h>
-#ifndef VERSEMGR_H
-#define VERSEMGR_H
+#ifndef VERSIFICATIONMGR_H
+#define VERSIFICATIONMGR_H
SWORD_NAMESPACE_START
@@ -66,14 +67,14 @@ struct sbook {
};
-class SWDLLEXPORT VerseMgr : public SWCacher {
+class SWDLLEXPORT VersificationMgr : public SWCacher {
public:
class System;
private:
- friend class __staticsystemVerseMgr;
+ friend class __staticsystemVersificationMgr;
class Private;
Private *p;
@@ -81,7 +82,7 @@ private:
void init();
protected:
- static VerseMgr *systemVerseMgr;
+ static VersificationMgr *systemVersificationMgr;
public:
class SWDLLEXPORT Book {
@@ -147,10 +148,10 @@ public:
const int *getBMAX() const { return BMAX; };
long getNTStartOffset() const { return ntStartOffset; }
};
- VerseMgr() { init(); }
- ~VerseMgr();
- static VerseMgr *getSystemVerseMgr();
- static void setSystemVerseMgr(VerseMgr *newVerseMgr);
+ VersificationMgr() { init(); }
+ ~VersificationMgr();
+ static VersificationMgr *getSystemVersificationMgr();
+ static void setSystemVersificationMgr(VersificationMgr *newVersificationMgr);
const StringList getVersificationSystems() const;
const System *getVersificationSystem(const char *name) const;
void registerVersificationSystem(const char *name, const sbook *ot, const sbook *nt, int *chMax);
diff --git a/include/xzcomprs.h b/include/xzcomprs.h
new file mode 100644
index 0000000..c468288
--- /dev/null
+++ b/include/xzcomprs.h
@@ -0,0 +1,45 @@
+/******************************************************************************
+ *
+ * xzcomprs.h - XzCompress, a driver class that provides xz (LZMA2)
+ * compression
+ *
+ * $Id: xzcomprs.h 2850 2013-07-02 09:57:20Z chrislit $
+ *
+ * Copyright 2000-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ */
+
+#ifndef XZCOMPRS_H
+#define XZCOMPRS_H
+
+#include <swcomprs.h>
+
+#include <defs.h>
+
+SWORD_NAMESPACE_START
+
+class SWDLLEXPORT XzCompress : public SWCompress {
+
+protected:
+public:
+ XzCompress();
+ virtual ~XzCompress();
+
+ virtual void Encode(void);
+ virtual void Decode(void);
+};
+
+SWORD_NAMESPACE_END
+#endif
diff --git a/include/zcom.h b/include/zcom.h
index 90132d5..560b650 100644
--- a/include/zcom.h
+++ b/include/zcom.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * zcom.h - code for class 'zCom'- a module that reads compressed text
- * files: ot and nt using indexs ??.vss
*
- * $Id: zcom.h 2303 2009-04-06 13:38:34Z scribe $
+ * zcom.h - code for class 'zCom'- a module that reads compressed text
+ * files: ot and nt using indexs ??.vss
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: zcom.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1996-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -45,12 +46,12 @@ public:
SWTextMarkup markup = FMT_UNKNOWN, const char *ilang = 0,
const char *versification = "KJV");
virtual ~zCom();
- virtual SWBuf &getRawEntryBuf();
+ virtual SWBuf &getRawEntryBuf() const;
virtual void increment(int steps = 1);
virtual void decrement(int steps = 1) { increment(-steps); }
// write interface ----------------------------
- virtual bool isWritable();
+ virtual bool isWritable() const;
static char createModule(const char *path, int blockBound, const char *v11n = "KJV") {
return zVerse::createModule(path, blockBound, v11n);
}
@@ -59,7 +60,7 @@ public:
virtual void deleteEntry(); // Delete current module entry
// end write interface ------------------------
- virtual void rawZFilter(SWBuf &buf, char direction = 0) { rawFilter(buf, (SWKey *)(long)direction); }// hack, use key as direction for enciphering
+ virtual void rawZFilter(SWBuf &buf, char direction = 0) const { rawFilter(buf, (SWKey *)(long)direction); }// hack, use key as direction for enciphering
// swcacher interface ----------------------
virtual void flush() { flushCache(); }
diff --git a/include/zipcomprs.h b/include/zipcomprs.h
index 63500d4..ce35e80 100644
--- a/include/zipcomprs.h
+++ b/include/zipcomprs.h
@@ -1,9 +1,11 @@
/******************************************************************************
- * swcomprs.h - definition of Class SWCompress used for data compression
*
- * $Id: zipcomprs.h 1864 2005-11-20 06:06:40Z scribe $
+ * zipcomprs.h - definition of Class ZipCompress used for data
+ * compression
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: zipcomprs.h 2850 2013-07-02 09:57:20Z chrislit $
+ *
+ * Copyright 2000-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
diff --git a/include/zld.h b/include/zld.h
index de4788c..5b7891f 100644
--- a/include/zld.h
+++ b/include/zld.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * zld.cpp - code for class 'zLD'- a module that reads compressed lexicon and
- * dictionary files.
*
- * $Id: zld.h 2303 2009-04-06 13:38:34Z scribe $
+ * zld.cpp - code for class 'zLD'- a module that reads compressed lexicon
+ * and dictionary files
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: zld.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -31,21 +32,20 @@
SWORD_NAMESPACE_START
class SWDLLEXPORT zLD : public zStr, public SWLD {
- char getEntry(long away = 0);
+ char getEntry(long away = 0) const;
public:
- zLD(const char *ipath, const char *iname = 0, const char *idesc = 0, long blockCount = 200, SWCompress *icomp = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN,
- const char* ilang = 0);
+ zLD(const char *ipath, const char *iname = 0, const char *idesc = 0, long blockCount = 200, SWCompress *icomp = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0, bool caseSensitive = false, bool strongsPadding = true);
virtual ~zLD();
- virtual SWBuf &getRawEntryBuf();
+ virtual SWBuf &getRawEntryBuf() const;
virtual void increment(int steps = 1);
virtual void decrement(int steps = 1) { increment(-steps); }
// write interface ----------------------------
- virtual bool isWritable();
+ virtual bool isWritable() const;
static char createModule(const char *path) {
return zStr::createModule(path);
}
@@ -55,7 +55,7 @@ public:
virtual void deleteEntry(); // Delete current module entry
// end write interface ------------------------
- virtual void rawZFilter(SWBuf &buf, char direction = 0) { rawFilter(buf, (SWKey *)(long)direction); }// hack, use key as direction for enciphering
+ virtual void rawZFilter(SWBuf &buf, char direction = 0) const { rawFilter(buf, (SWKey *)(long)direction); }// hack, use key as direction for enciphering
// swcacher interface ----------------------
virtual void flush() { flushCache(); }
diff --git a/include/zstr.h b/include/zstr.h
index f9842f4..81ed63d 100644
--- a/include/zstr.h
+++ b/include/zstr.h
@@ -1,12 +1,13 @@
/*****************************************************************************
- * zstr.h - code for class 'zStr'- a module that reads compressed text
- * files.
- * and provides lookup and parsing functions based on
- * class StrKey
*
- * $Id: zstr.h 2303 2009-04-06 13:38:34Z scribe $
+ * zstr.h - code for class 'zStr'- a module that reads compressed text
+ * files.
+ * and provides lookup and parsing functions based on
+ * class StrKey
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: zstr.h 2980 2013-09-14 21:51:47Z scribe $
+ *
+ * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -38,10 +39,11 @@ class SWDLLEXPORT zStr {
private:
static int instance; // number of instantiated zStr objects or derivitives
- EntriesBlock *cacheBlock;
- long cacheBlockIndex;
- bool cacheDirty;
+ mutable EntriesBlock *cacheBlock;
+ mutable long cacheBlockIndex;
+ mutable bool cacheDirty;
char *path;
+ bool caseSensitive;
mutable long lastoff; // for caching and optimization
long blockCount;
SWCompress *compressor;
@@ -54,20 +56,19 @@ protected:
static const int IDXENTRYSIZE;
static const int ZDXENTRYSIZE;
- void getCompressedText(long block, long entry, char **buf);
- void flushCache();
+ void getCompressedText(long block, long entry, char **buf) const;
+ void flushCache() const;
void getKeyFromDatOffset(long ioffset, char **buf) const;
void getKeyFromIdxOffset(long ioffset, char **buf) const;
public:
- char nl;
- zStr(const char *ipath, int fileMode = -1, long blockCount = 100, SWCompress *icomp = 0);
+ zStr(const char *ipath, int fileMode = -1, long blockCount = 100, SWCompress *icomp = 0, bool caseSensitive = false);
virtual ~zStr();
signed char findKeyIndex(const char *ikey, long *idxoff, long away = 0) const;
- void getText(long index, char **idxbuf, char **buf);
+ void getText(long index, char **idxbuf, char **buf) const;
void setText(const char *ikey, const char *buf, long len = -1);
void linkEntry(const char *destkey, const char *srckey);
- virtual void rawZFilter(SWBuf &buf, char direction = 0) {}
+ virtual void rawZFilter(SWBuf &buf, char direction = 0) const { (void) buf; (void) direction; }
static signed char createModule (const char *path);
};
diff --git a/include/ztext.h b/include/ztext.h
index 2f0b111..c8855c9 100644
--- a/include/ztext.h
+++ b/include/ztext.h
@@ -1,10 +1,11 @@
/******************************************************************************
- * ztext.h - code for class 'zText'- a module that reads compressed text
- * files: ot and nt using indexs ??.vss
*
- * $Id: ztext.h 2303 2009-04-06 13:38:34Z scribe $
+ * ztext.h - code for class 'zText'- a module that reads compressed text
+ * files: ot and nt using indexs ??.vss
*
- * Copyright 1998 CrossWire Bible Society (http://www.crosswire.org)
+ * $Id: ztext.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 1996-2013 CrossWire Bible Society (http://www.crosswire.org)
* CrossWire Bible Society
* P. O. Box 2528
* Tempe, AZ 85280-2528
@@ -59,13 +60,13 @@ public:
const char *versification = "KJV");
virtual ~zText();
- virtual SWBuf &getRawEntryBuf();
+ virtual SWBuf &getRawEntryBuf() const;
virtual void increment(int steps = 1);
virtual void decrement(int steps = 1) { increment(-steps); }
// write interface ----------------------------
- virtual bool isWritable();
+ virtual bool isWritable() const;
static char createModule(const char *path, int blockBound, const char *v11n = "KJV") {
return zVerse::createModule(path, blockBound, v11n);
}
@@ -75,7 +76,7 @@ public:
virtual void deleteEntry(); // Delete current module entry
// end write interface ------------------------
- virtual void rawZFilter(SWBuf &buf, char direction = 0) { rawFilter(buf, (SWKey *)(long)direction); }// hack, use key as direction for enciphering
+ virtual void rawZFilter(SWBuf &buf, char direction = 0) const { rawFilter(buf, (SWKey *)(long)direction); }// hack, use key as direction for enciphering
// swcacher interface ----------------------
virtual void flush() { flushCache(); }
diff --git a/include/zverse.h b/include/zverse.h
index 1e5d1f3..c5fe8ee 100644
--- a/include/zverse.h
+++ b/include/zverse.h
@@ -1,10 +1,29 @@
/******************************************************************************
- * rawverse.h - code for class 'zVerse'- a module that reads raw text
+ *
+ * rawverse.h - code for class 'zVerse'- a module that reads raw text
* files: ot and nt using indexs ??.bks ??.cps ??.vss
* and provides lookup and parsing functions based on
* class VerseKey
+ *
+ * $Id: zverse.h 2833 2013-06-29 06:40:28Z chrislit $
+ *
+ * Copyright 2000-2013 CrossWire Bible Society (http://www.crosswire.org)
+ * CrossWire Bible Society
+ * P. O. Box 2528
+ * Tempe, AZ 85280-2528
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation version 2.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
*/
+
#ifndef ZVERSE_H
#define ZVERSE_H
@@ -28,12 +47,12 @@ protected:
char *path;
void doSetText(char testmt, long idxoff, const char *buf, long len = 0);
void doLinkEntry(char testmt, long destidxoff, long srcidxoff);
- void flushCache();
- char *cacheBuf;
- unsigned int cacheBufSize;
- char cacheTestament;
- long cacheBufIdx;
- bool dirtyCache;
+ void flushCache() const;
+ mutable char *cacheBuf;
+ mutable unsigned int cacheBufSize;
+ mutable char cacheTestament;
+ mutable long cacheBufIdx;
+ mutable bool dirtyCache;
public:
@@ -50,8 +69,8 @@ public:
virtual ~zVerse();
void findOffset(char testmt, long idxoff, long *start, unsigned short *size, unsigned long *buffnum) const;
- void zReadText(char testmt, long start, unsigned short size, unsigned long buffnum, SWBuf &buf);
- virtual void rawZFilter(SWBuf &buf, char direction = 0) {}
+ void zReadText(char testmt, long start, unsigned short size, unsigned long buffnum, SWBuf &buf) const;
+ virtual void rawZFilter(SWBuf &buf, char direction = 0) const { (void) buf; (void) direction; }
static char createModule(const char *path, int blockBound, const char *v11n = "KJV");
};