From scribe at crosswire.org  Mon Mar  3 08:48:49 2025
From: scribe at crosswire.org (scribe at crosswire.org)
Date: Mon,  3 Mar 2025 08:48:49 -0500 (EST)
Subject: [sword-svn] r3897 - trunk/src/keys
Message-ID: <20250303134849.2263611FB91@mail.crosswire.org>

Author: scribe
Date: 2025-03-03 08:48:49 -0500 (Mon, 03 Mar 2025)
New Revision: 3897

Modified:
   trunk/src/keys/versekey.cpp
Log:
remove goto


Modified: trunk/src/keys/versekey.cpp
===================================================================
--- trunk/src/keys/versekey.cpp	2025-02-28 14:30:09 UTC (rev 3896)
+++ trunk/src/keys/versekey.cpp	2025-03-03 13:48:49 UTC (rev 3897)
@@ -582,7 +582,9 @@
 	lastKey->setAutoNormalize(false);
 	if (defaultKey) *lastKey = defaultKey;
 
+
 	while (*buf) {
+		bool gotoTerminateRange = false;
 		switch (*buf) {
 		case ':':
 			if (buf[1] != ' ') {		// for silly "Mat 1:1: this verse...."
@@ -597,9 +599,10 @@
 				comma = 0;
 				break;
 			}
-			goto terminate_range;
-			// otherwise drop down to next case
-		case ' ':
+			// otherwise drop down to terminateRange
+			gotoTerminateRange = true;
+		case ' ': if (!gotoTerminateRange) {
+			
 			inTerm = true;
 			while (true) {
 				if ((!*number) || (chap < 0))
@@ -616,8 +619,9 @@
 				}
 				break;
 			}
+		}
 
-		case '-':
+		case '-': if (!gotoTerminateRange) {
 			if (chap == -1) {
 				book[tobook] = *buf;
 				book[tobook+1] = *(buf+1);
@@ -629,9 +633,10 @@
 					break;
 				}
 			}
+		}
+// terminateRange:
 		case ',': // on number new verse
 		case ';': // on number new chapter
-terminate_range:
 			number[tonumber] = 0;
 			tonumber = 0;
 			if (*number) {


From scribe at crosswire.org  Mon Mar  3 08:49:36 2025
From: scribe at crosswire.org (scribe at crosswire.org)
Date: Mon,  3 Mar 2025 08:49:36 -0500 (EST)
Subject: [sword-svn] r3898 - trunk/src/mgr
Message-ID: <20250303134936.B6E0011FB91@mail.crosswire.org>

Author: scribe
Date: 2025-03-03 08:49:36 -0500 (Mon, 03 Mar 2025)
New Revision: 3898

Modified:
   trunk/src/mgr/stringmgr.cpp
Log:
fix bug in non-icu stringmgr toupper


Modified: trunk/src/mgr/stringmgr.cpp
===================================================================
--- trunk/src/mgr/stringmgr.cpp	2025-03-03 13:48:49 UTC (rev 3897)
+++ trunk/src/mgr/stringmgr.cpp	2025-03-03 13:49:36 UTC (rev 3898)
@@ -238,7 +238,7 @@
 		it = toUpperData.find(ch);
 		getUTF8FromUniChar(it == toUpperData.end() ? ch : it->second, &text);
 	}
-	long len = maxlen ? (text.size() < maxlen ? text.size() : (maxlen - 1)) : 0;
+	long len = maxlen ? (text.size() < maxlen ? text.size() : (maxlen - 1)) : text.size();
 	if (len) memcpy(t, text.c_str(), len);
 	t[len] = 0;
 #endif


From scribe at crosswire.org  Mon Mar  3 08:50:50 2025
From: scribe at crosswire.org (scribe at crosswire.org)
Date: Mon,  3 Mar 2025 08:50:50 -0500 (EST)
Subject: [sword-svn] r3899 - trunk/tests
Message-ID: <20250303135050.BF59A11FB91@mail.crosswire.org>

Author: scribe
Date: 2025-03-03 08:50:50 -0500 (Mon, 03 Mar 2025)
New Revision: 3899

Modified:
   trunk/tests/parsekey.cpp
Log:
add new parsekey test option to_v11n for testing verse translation


Modified: trunk/tests/parsekey.cpp
===================================================================
--- trunk/tests/parsekey.cpp	2025-03-03 13:49:36 UTC (rev 3898)
+++ trunk/tests/parsekey.cpp	2025-03-03 13:50:50 UTC (rev 3899)
@@ -31,8 +31,8 @@
 #endif
 
 int main(int argc, char **argv) {
-	if ((argc < 2) || (argc > 8)) {
-		std::cerr << "usage: " << *argv << " <\"string to parse\"> [locale_name] [v11n] [context] [echo params 1|0] [test-in-set-verse 1|0] [intros 1|0]\n";
+	if ((argc < 2) || (argc > 9)) {
+		std::cerr << "usage: " << *argv << " <\"string to parse\"> [locale_name] [v11n] [context] [echo params 1|0] [test-in-set-verse 1|0] [intros 1|0] [to_v11n]\n";
 		exit(-1);
 	}
 
@@ -49,6 +49,7 @@
 
 	bool echo = (argc > 5) ? !strcmp(argv[5], "1") : false;
 	bool inSetTest = (argc > 6) ? !strcmp(argv[6], "1") : false;
+//	std::cout << "argc: " << argc << "; argv[6]: " << argv[6] << "; inSetTest: " << inSetTest << "\n";
 	bool intros = (argc > 7) ? !strcmp(argv[7], "1") : false;
 
 	DefaultVSKey.setIntros(intros);
@@ -78,6 +79,16 @@
 		verses.setText(context);
 		std::cout << "Verse is" << ((verses.popError()) ? " NOT" : "") << " in set.\n\n";
 	}
+
+	if (argc > 8) {
+		VerseKey toVSKey;
+		toVSKey.copyFrom(DefaultVSKey);
+		toVSKey.setVersificationSystem(argv[8]);
+		DefaultVSKey.setText(argv[1]);
+		toVSKey = DefaultVSKey;
+		std::cout << DefaultVSKey.getVersificationSystem() << ": " << DefaultVSKey.getRangeText() << " => " << toVSKey.getVersificationSystem() << ": " << toVSKey.getRangeText() << "\n";
+		
+	}
 	
 	return 0;
 }


From scribe at crosswire.org  Mon Mar  3 08:55:27 2025
From: scribe at crosswire.org (scribe at crosswire.org)
Date: Mon,  3 Mar 2025 08:55:27 -0500 (EST)
Subject: [sword-svn] r3900 - in trunk/bindings: Android/SWORD
 Android/SWORD/.idea Android/SWORD/gradle/wrapper cordova
 cordova/cordova-plugin-crosswire-sword
Message-ID: <20250303135527.7F28011FB91@mail.crosswire.org>

Author: scribe
Date: 2025-03-03 08:55:27 -0500 (Mon, 03 Mar 2025)
New Revision: 3900

Modified:
   trunk/bindings/Android/SWORD/.idea/gradle.xml
   trunk/bindings/Android/SWORD/.idea/misc.xml
   trunk/bindings/Android/SWORD/.idea/modules.xml
   trunk/bindings/Android/SWORD/build.gradle
   trunk/bindings/Android/SWORD/gradle/wrapper/gradle-wrapper.properties
   trunk/bindings/cordova/README
   trunk/bindings/cordova/cordova-plugin-crosswire-sword/package.json
   trunk/bindings/cordova/cordova-plugin-crosswire-sword/plugin.xml
Log:
updated bindings/Android and cordova for a new build of cordova-plugin-crosswire-sword


Modified: trunk/bindings/Android/SWORD/.idea/gradle.xml
===================================================================
--- trunk/bindings/Android/SWORD/.idea/gradle.xml	2025-03-03 13:50:50 UTC (rev 3899)
+++ trunk/bindings/Android/SWORD/.idea/gradle.xml	2025-03-03 13:55:27 UTC (rev 3900)
@@ -4,11 +4,9 @@
   <component name="GradleSettings">
     <option name="linkedExternalProjectsSettings">
       <GradleProjectSettings>
-        <option name="testRunner" value="GRADLE" />
-        <option name="distributionType" value="DEFAULT_WRAPPED" />
         <option name="externalProjectPath" value="$PROJECT_DIR$" />
         <option name="gradleHome" value="$USER_HOME$/opt/gradle" />
-        <option name="gradleJvm" value="jbr-17" />
+        <option name="gradleJvm" value="#GRADLE_LOCAL_JAVA_HOME" />
         <option name="modules">
           <set>
             <option value="$PROJECT_DIR$" />
@@ -15,6 +13,7 @@
             <option value="$PROJECT_DIR$/app" />
           </set>
         </option>
+        <option name="resolveExternalAnnotations" value="false" />
       </GradleProjectSettings>
     </option>
   </component>

Modified: trunk/bindings/Android/SWORD/.idea/misc.xml
===================================================================
--- trunk/bindings/Android/SWORD/.idea/misc.xml	2025-03-03 13:50:50 UTC (rev 3899)
+++ trunk/bindings/Android/SWORD/.idea/misc.xml	2025-03-03 13:55:27 UTC (rev 3900)
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="jbr-17" project-jdk-type="JavaSDK">
     <output url="file://$PROJECT_DIR$/build/classes" />
@@ -5,6 +6,38 @@
   <component name="ProjectType">
     <option name="id" value="Android" />
   </component>
+  <component name="SvnBranchConfigurationManager">
+    <option name="myConfigurationMap">
+      <map>
+        <entry key="$PROJECT_DIR$">
+          <value>
+            <SvnBranchConfiguration>
+              <option name="branchUrls">
+                <list>
+                  <option value="https://crosswire.org/svn/sword/branches" />
+                  <option value="https://crosswire.org/svn/sword/tags" />
+                </list>
+              </option>
+              <option name="trunkUrl" value="https://crosswire.org/svn/sword/trunk" />
+            </SvnBranchConfiguration>
+          </value>
+        </entry>
+        <entry key="$PROJECT_DIR$/../../../include">
+          <value>
+            <SvnBranchConfiguration>
+              <option name="branchUrls">
+                <list>
+                  <option value="https://crosswire.org/svn/sword/branches" />
+                  <option value="https://crosswire.org/svn/sword/tags" />
+                </list>
+              </option>
+              <option name="trunkUrl" value="https://crosswire.org/svn/sword/trunk" />
+            </SvnBranchConfiguration>
+          </value>
+        </entry>
+      </map>
+    </option>
+  </component>
   <component name="masterDetails">
     <states>
       <state key="ProjectJDKs.UI">

Modified: trunk/bindings/Android/SWORD/.idea/modules.xml
===================================================================
--- trunk/bindings/Android/SWORD/.idea/modules.xml	2025-03-03 13:50:50 UTC (rev 3899)
+++ trunk/bindings/Android/SWORD/.idea/modules.xml	2025-03-03 13:55:27 UTC (rev 3900)
@@ -2,8 +2,11 @@
 <project version="4">
   <component name="ProjectModuleManager">
     <modules>
-      <module fileurl="file://$PROJECT_DIR$/.idea/modules/610104356/SWORD.iml" filepath="$PROJECT_DIR$/.idea/modules/610104356/SWORD.iml" />
-      <module fileurl="file://$PROJECT_DIR$/.idea/modules/311794102/SWORD.app.iml" filepath="$PROJECT_DIR$/.idea/modules/311794102/SWORD.app.iml" />
+      <module fileurl="file://$PROJECT_DIR$/.idea/SWORD.iml" filepath="$PROJECT_DIR$/.idea/SWORD.iml" />
+      <module fileurl="file://$PROJECT_DIR$/.idea/modules/app/SWORD.app.iml" filepath="$PROJECT_DIR$/.idea/modules/app/SWORD.app.iml" />
+      <module fileurl="file://$PROJECT_DIR$/.idea/modules/app/SWORD.app.androidTest.iml" filepath="$PROJECT_DIR$/.idea/modules/app/SWORD.app.androidTest.iml" />
+      <module fileurl="file://$PROJECT_DIR$/.idea/modules/app/SWORD.app.main.iml" filepath="$PROJECT_DIR$/.idea/modules/app/SWORD.app.main.iml" />
+      <module fileurl="file://$PROJECT_DIR$/.idea/modules/app/SWORD.app.unitTest.iml" filepath="$PROJECT_DIR$/.idea/modules/app/SWORD.app.unitTest.iml" />
     </modules>
   </component>
 </project>
\ No newline at end of file

Modified: trunk/bindings/Android/SWORD/build.gradle
===================================================================
--- trunk/bindings/Android/SWORD/build.gradle	2025-03-03 13:50:50 UTC (rev 3899)
+++ trunk/bindings/Android/SWORD/build.gradle	2025-03-03 13:55:27 UTC (rev 3900)
@@ -8,7 +8,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:8.1.2'
+        classpath 'com.android.tools.build:gradle:8.3.0'
         // NOTE: Do not place your application dependencies here; they belong
         // in the individual module build.gradle files
     }

Modified: trunk/bindings/Android/SWORD/gradle/wrapper/gradle-wrapper.properties
===================================================================
--- trunk/bindings/Android/SWORD/gradle/wrapper/gradle-wrapper.properties	2025-03-03 13:50:50 UTC (rev 3899)
+++ trunk/bindings/Android/SWORD/gradle/wrapper/gradle-wrapper.properties	2025-03-03 13:55:27 UTC (rev 3900)
@@ -1,5 +1,5 @@
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists

Modified: trunk/bindings/cordova/README
===================================================================
--- trunk/bindings/cordova/README	2025-03-03 13:50:50 UTC (rev 3899)
+++ trunk/bindings/cordova/README	2025-03-03 13:55:27 UTC (rev 3900)
@@ -5,3 +5,4 @@
 
 Follow the README in the ../java-jni/ bindings folder.
 
+version bump in plugin.xml and package.json

Modified: trunk/bindings/cordova/cordova-plugin-crosswire-sword/package.json
===================================================================
--- trunk/bindings/cordova/cordova-plugin-crosswire-sword/package.json	2025-03-03 13:50:50 UTC (rev 3899)
+++ trunk/bindings/cordova/cordova-plugin-crosswire-sword/package.json	2025-03-03 13:55:27 UTC (rev 3900)
@@ -1,6 +1,6 @@
 {
   "name": "cordova-plugin-crosswire-sword",
-  "version": "0.2.5",
+  "version": "0.2.6",
   "description": "The SWORD Project Plugin",
   "cordova": {
     "id": "cordova-plugin-crosswire-sword",

Modified: trunk/bindings/cordova/cordova-plugin-crosswire-sword/plugin.xml
===================================================================
--- trunk/bindings/cordova/cordova-plugin-crosswire-sword/plugin.xml	2025-03-03 13:50:50 UTC (rev 3899)
+++ trunk/bindings/cordova/cordova-plugin-crosswire-sword/plugin.xml	2025-03-03 13:55:27 UTC (rev 3900)
@@ -4,7 +4,7 @@
     xmlns:rim="http://www.blackberry.com/ns/widgets"
     xmlns:android="http://schemas.android.com/apk/res/android"
     id="cordova-plugin-crosswire-sword"
-    version="0.2.5">
+    version="0.2.6">
     <name>cordova-plugin-crosswire-sword</name>
     <description>The SWORD Project Plugin</description>
     <license>GNU 2.0</license>


From jira at crosswire.org  Sun Mar 30 01:11:00 2025
From: jira at crosswire.org (Michael Paul Johnson (JIRA))
Date: Sun, 30 Mar 2025 01:11:00 -0400 (EDT)
Subject: [sword-svn] [JIRA] (MODTOOLS-108) osis2mod fails badly on some
 Bible translations
In-Reply-To: <JIRA.50950.1743311412000@Atlassian.JIRA>
References: <JIRA.50950.1743311412000@Atlassian.JIRA>
 <JIRA.50950.1743311412302@host.crosswire.org>
Message-ID: <JIRA.50950.1743311412000.1.1743311460661@Atlassian.JIRA>

An HTML attachment was scrubbed...
URL: <http://crosswire.org/pipermail/sword-cvs/attachments/20250330/01157bf5/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 745 bytes
Desc: not available
URL: <http://crosswire.org/pipermail/sword-cvs/attachments/20250330/01157bf5/attachment-0005.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 341 bytes
Desc: not available
URL: <http://crosswire.org/pipermail/sword-cvs/attachments/20250330/01157bf5/attachment-0006.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 1084 bytes
Desc: not available
URL: <http://crosswire.org/pipermail/sword-cvs/attachments/20250330/01157bf5/attachment-0007.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 3485 bytes
Desc: not available
URL: <http://crosswire.org/pipermail/sword-cvs/attachments/20250330/01157bf5/attachment-0008.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 2983 bytes
Desc: not available
URL: <http://crosswire.org/pipermail/sword-cvs/attachments/20250330/01157bf5/attachment-0009.png>

From jira at crosswire.org  Sun Mar 30 09:27:00 2025
From: jira at crosswire.org (DM Smith (JIRA))
Date: Sun, 30 Mar 2025 09:27:00 -0400 (EDT)
Subject: [sword-svn] [JIRA] (MODTOOLS-108) osis2mod fails badly on some
 Bible translations
In-Reply-To: <JIRA.50950.1743311412000@Atlassian.JIRA>
References: <JIRA.50950.1743311412000@Atlassian.JIRA>
 <JIRA.50950.1743311412000@host.crosswire.org>
Message-ID: <JIRA.50950.1743311412000.6.1743341220121@Atlassian.JIRA>

An HTML attachment was scrubbed...
URL: <http://crosswire.org/pipermail/sword-cvs/attachments/20250330/cfadfa16/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 341 bytes
Desc: not available
URL: <http://crosswire.org/pipermail/sword-cvs/attachments/20250330/cfadfa16/attachment.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 1084 bytes
Desc: not available
URL: <http://crosswire.org/pipermail/sword-cvs/attachments/20250330/cfadfa16/attachment-0001.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 746 bytes
Desc: not available
URL: <http://crosswire.org/pipermail/sword-cvs/attachments/20250330/cfadfa16/attachment-0002.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 2983 bytes
Desc: not available
URL: <http://crosswire.org/pipermail/sword-cvs/attachments/20250330/cfadfa16/attachment-0003.png>