diff options
Diffstat (limited to 'utilities/vs2osisreftxt.cpp')
-rw-r--r-- | utilities/vs2osisreftxt.cpp | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/utilities/vs2osisreftxt.cpp b/utilities/vs2osisreftxt.cpp new file mode 100644 index 0000000..a62daa0 --- /dev/null +++ b/utilities/vs2osisreftxt.cpp @@ -0,0 +1,50 @@ +/* + * 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. + * + */ + +#include <iostream> +#include <stdio.h> + +#include <versekey.h> +#include <localemgr.h> +#ifndef NO_SWORD_NAMESPACE +using namespace sword; +#endif + +int main(int argc, char **argv) { + if ((argc < 2) || (argc > 4)) { + fprintf(stderr, "usage: %s <\"string to parse\"> [locale_name] [test-in-set-verse]\n", *argv); + exit(-1); + } + + if (argc > 2) + LocaleMgr::getSystemLocaleMgr()->setDefaultLocaleName(argv[2]); + + VerseKey DefaultVSKey; + + DefaultVSKey = "jas3:1"; + + ListKey verses = DefaultVSKey.ParseVerseList(argv[1], DefaultVSKey, true); + + std::cout << verses.getOSISRefRangeText() << "\n"; + + if (argc > 3) { + verses.setText(argv[3]); + std::cout << "Verse is" << ((verses.Error()) ? " NOT" : "") << " in set.\n\n"; + } + + return 0; +} |