The official haplous Bible parser
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Josias 5c7e206ec0 Namespace error enums 1 month ago
convert Add complete conversion script 3 months ago
test Add work_cleanup and add whole Bible for testing 2 months ago
.gitignore Add test/nous to .gitignore 3 months ago
COPYING Add license 3 months ago
COPYING.LESSER Add license 3 months ago
Makefile Add installation to Makefile 3 months ago
README.md Allow extracting metadata 3 months ago
get.c Namespace error enums 1 month ago
info.c Fix comment 2 months ago
nous.c Namespace error enums 1 month ago
nous.h Namespace error enums 1 month ago

README.md

nous

The official parser for the haplous Bible format

Provides functions for getting text and other information from a haplous “work” (a Bible, commentary, or other document).

Goals:

  • Simplicity
  • Portability (cross-platform C, portable Makefiles)
  • Flexibility
  • Full haplous spec compliance
  • Pure C99

TODO:

  • Fetching verses from single file
  • Determine a way to deal with multiple verses (newlines, null terminators, array?)
  • Fetching metadata
  • Extra optimizations (?)
  • Reading and parsing from memory instead of file
  • Test as shared and static libraries
  • Organize build system
  • CLI (using fbrp)
  • Complete OSIS to haplous converter

Installation

$ git clone https://code.heb12.com/heb12/nous.git
$ cd nous
$ make

For your own projects, copy lib/nous.h and lib/libnous.a and compile with cc main.c -L. -I. -lnous.

Testing

$ make test # uses the work in web.txt

License

Copyright (C) 2020 Josias Allestad and other Heb12 contributors

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

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.

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see https://www.gnu.org/licenses/.