diff options
author | Roberto C. Sanchez <roberto@connexer.com> | 2014-03-29 10:53:49 -0400 |
---|---|---|
committer | Roberto C. Sanchez <roberto@connexer.com> | 2014-03-29 10:53:49 -0400 |
commit | 8c8aa6b07e595cfac56838b5964ab3e96051f1b2 (patch) | |
tree | da38e2c1979148dbd3b0c7b87f930746f5ba7f44 /utilities/vpl2mod.cpp | |
parent | 8d3fc864d094eeadc721f8e93436b37a5fab173e (diff) |
Imported Upstream version 1.5.7
Diffstat (limited to 'utilities/vpl2mod.cpp')
-rw-r--r-- | utilities/vpl2mod.cpp | 35 |
1 files changed, 24 insertions, 11 deletions
diff --git a/utilities/vpl2mod.cpp b/utilities/vpl2mod.cpp index 305225f..0b65a87 100644 --- a/utilities/vpl2mod.cpp +++ b/utilities/vpl2mod.cpp @@ -12,13 +12,22 @@ #include <swmgr.h> #include <rawtext.h> -#include <iostream.h> +#include <iostream> #include <string> #ifndef O_BINARY #define O_BINARY 0 #endif +#ifndef NO_SWORD_NAMESPACE +using sword::SWMgr; +using sword::RawText; +using sword::VerseKey; +using sword::SW_POSITION; +#endif + +using std::string; + char readline(int fd, char **buf) { char ch; if (*buf) @@ -84,7 +93,7 @@ char *parseVReg(char *buf) { if (isdigit(*buf)) stage++; break; - case 4: + case 4: if (*buf == ' ') { *buf = 0; return ++buf; @@ -93,7 +102,7 @@ char *parseVReg(char *buf) { } buf++; } - return (stage == 4) ? buf : 0; // if we got to stage 4 return empty buf, else return error + return (stage == 4) ? buf : 0; // if we got to stage 4 return after key buf, else return 0; } @@ -107,7 +116,7 @@ bool isKJVRef(const char *buf) { test = buf; if (vk.Testament() && vk.Book() && vk.Chapter() && vk.Verse()) { // if we're not a heading -// cerr << (const char*)vk << " == " << (const char*)test << endl; +// std::cerr << (const char*)vk << " == " << (const char*)test << std::endl; return (vk == test); } else return true; // no check if we're a heading... Probably bad. @@ -122,7 +131,7 @@ void fixText(char *text) { if (!*text) break; if (*text != ' ') - cerr << "problem\n"; + std::cerr << "problem\n"; else text++; } *to = 0; @@ -185,7 +194,7 @@ int main(int argc, char **argv) { vk.Headings(1); // turn on mod/testmnt/book/chap headings vk.Persist(1); - mod.SetKey(vk); + mod.setKey(vk); // Loop through module from TOP to BOTTOM and set next line from // input file as text for this entry in the module @@ -199,11 +208,15 @@ int main(int argc, char **argv) { if (vref) { const char *verseText = parseVReg(buffer); if (!verseText) { // if we didn't find a valid verse ref - cerr << "No valid verse ref found on line: " << buffer << "\n"; + std::cerr << "No valid verse ref found on line: " << buffer << "\n"; exit(-4); } vk = buffer; + if (vk.Error()) { + std::cerr << "Error parsing key: " << buffer << "\n"; + exit(-5); + } string orig = mod.getRawEntry(); if (!isKJVRef(buffer)) { @@ -218,8 +231,8 @@ int main(int argc, char **argv) { vk -= successive; orig = mod.getRawEntry(); - cerr << "Not a valid KJV ref: " << origVK << "\n"; - cerr << "appending to ref: " << vk << "\n"; + std::cerr << "Not a valid KJV ref: " << origVK << "\n"; + std::cerr << "appending to ref: " << vk << "\n"; orig += " [ ("; orig += origVK; orig += ") "; @@ -232,8 +245,8 @@ int main(int argc, char **argv) { } if (orig.length() > 1) - cerr << "Warning, overwriting verse: " << vk << endl; - + std::cerr << "Warning, overwriting verse: " << vk << std::endl; + // ------------- End verse tests ----------------- mod << verseText; // save text to module at current position } |