cskit-strongs 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1353) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +8 -0
  3. data/History.txt +3 -0
  4. data/LICENSE +177 -0
  5. data/README.md +0 -0
  6. data/Rakefile +129 -0
  7. data/cskit-strongs.gemspec +26 -0
  8. data/lib/cskit/concordances/strongs.rb +15 -0
  9. data/lib/cskit-strongs/annotator.rb +102 -0
  10. data/lib/cskit-strongs/formatters/strongs_html_formatter.rb +20 -0
  11. data/lib/cskit-strongs/formatters/strongs_plain_text_formatter.rb +22 -0
  12. data/lib/cskit-strongs/formatters.rb +10 -0
  13. data/lib/cskit-strongs/lexicon_entry.rb +17 -0
  14. data/lib/cskit-strongs/splitters/concordance_splitter.rb +50 -0
  15. data/lib/cskit-strongs/splitters/greek_lexicon_splitter.rb +86 -0
  16. data/lib/cskit-strongs/splitters/hebrew_lexicon_splitter.rb +86 -0
  17. data/lib/cskit-strongs/splitters/utilities.rb +13 -0
  18. data/lib/cskit-strongs/strongs_number.rb +30 -0
  19. data/lib/cskit-strongs/version.rb +5 -0
  20. data/lib/cskit-strongs.rb +25 -0
  21. data/resources/concordance/acts/1.json +1 -0
  22. data/resources/concordance/acts/10.json +1 -0
  23. data/resources/concordance/acts/11.json +1 -0
  24. data/resources/concordance/acts/12.json +1 -0
  25. data/resources/concordance/acts/13.json +1 -0
  26. data/resources/concordance/acts/14.json +1 -0
  27. data/resources/concordance/acts/15.json +1 -0
  28. data/resources/concordance/acts/16.json +1 -0
  29. data/resources/concordance/acts/17.json +1 -0
  30. data/resources/concordance/acts/18.json +1 -0
  31. data/resources/concordance/acts/19.json +1 -0
  32. data/resources/concordance/acts/2.json +1 -0
  33. data/resources/concordance/acts/20.json +1 -0
  34. data/resources/concordance/acts/21.json +1 -0
  35. data/resources/concordance/acts/22.json +1 -0
  36. data/resources/concordance/acts/23.json +1 -0
  37. data/resources/concordance/acts/24.json +1 -0
  38. data/resources/concordance/acts/25.json +1 -0
  39. data/resources/concordance/acts/26.json +1 -0
  40. data/resources/concordance/acts/27.json +1 -0
  41. data/resources/concordance/acts/28.json +1 -0
  42. data/resources/concordance/acts/3.json +1 -0
  43. data/resources/concordance/acts/4.json +1 -0
  44. data/resources/concordance/acts/5.json +1 -0
  45. data/resources/concordance/acts/6.json +1 -0
  46. data/resources/concordance/acts/7.json +1 -0
  47. data/resources/concordance/acts/8.json +1 -0
  48. data/resources/concordance/acts/9.json +1 -0
  49. data/resources/concordance/amos/1.json +1 -0
  50. data/resources/concordance/amos/2.json +1 -0
  51. data/resources/concordance/amos/3.json +1 -0
  52. data/resources/concordance/amos/4.json +1 -0
  53. data/resources/concordance/amos/5.json +1 -0
  54. data/resources/concordance/amos/6.json +1 -0
  55. data/resources/concordance/amos/7.json +1 -0
  56. data/resources/concordance/amos/8.json +1 -0
  57. data/resources/concordance/amos/9.json +1 -0
  58. data/resources/concordance/colossians/1.json +1 -0
  59. data/resources/concordance/colossians/2.json +1 -0
  60. data/resources/concordance/colossians/3.json +1 -0
  61. data/resources/concordance/colossians/4.json +1 -0
  62. data/resources/concordance/daniel/1.json +1 -0
  63. data/resources/concordance/daniel/10.json +1 -0
  64. data/resources/concordance/daniel/11.json +1 -0
  65. data/resources/concordance/daniel/12.json +1 -0
  66. data/resources/concordance/daniel/2.json +1 -0
  67. data/resources/concordance/daniel/3.json +1 -0
  68. data/resources/concordance/daniel/4.json +1 -0
  69. data/resources/concordance/daniel/5.json +1 -0
  70. data/resources/concordance/daniel/6.json +1 -0
  71. data/resources/concordance/daniel/7.json +1 -0
  72. data/resources/concordance/daniel/8.json +1 -0
  73. data/resources/concordance/daniel/9.json +1 -0
  74. data/resources/concordance/deuteronomy/1.json +1 -0
  75. data/resources/concordance/deuteronomy/10.json +1 -0
  76. data/resources/concordance/deuteronomy/11.json +1 -0
  77. data/resources/concordance/deuteronomy/12.json +1 -0
  78. data/resources/concordance/deuteronomy/13.json +1 -0
  79. data/resources/concordance/deuteronomy/14.json +1 -0
  80. data/resources/concordance/deuteronomy/15.json +1 -0
  81. data/resources/concordance/deuteronomy/16.json +1 -0
  82. data/resources/concordance/deuteronomy/17.json +1 -0
  83. data/resources/concordance/deuteronomy/18.json +1 -0
  84. data/resources/concordance/deuteronomy/19.json +1 -0
  85. data/resources/concordance/deuteronomy/2.json +1 -0
  86. data/resources/concordance/deuteronomy/20.json +1 -0
  87. data/resources/concordance/deuteronomy/21.json +1 -0
  88. data/resources/concordance/deuteronomy/22.json +1 -0
  89. data/resources/concordance/deuteronomy/23.json +1 -0
  90. data/resources/concordance/deuteronomy/24.json +1 -0
  91. data/resources/concordance/deuteronomy/25.json +1 -0
  92. data/resources/concordance/deuteronomy/26.json +1 -0
  93. data/resources/concordance/deuteronomy/27.json +1 -0
  94. data/resources/concordance/deuteronomy/28.json +1 -0
  95. data/resources/concordance/deuteronomy/29.json +1 -0
  96. data/resources/concordance/deuteronomy/3.json +1 -0
  97. data/resources/concordance/deuteronomy/30.json +1 -0
  98. data/resources/concordance/deuteronomy/31.json +1 -0
  99. data/resources/concordance/deuteronomy/32.json +1 -0
  100. data/resources/concordance/deuteronomy/33.json +1 -0
  101. data/resources/concordance/deuteronomy/34.json +1 -0
  102. data/resources/concordance/deuteronomy/4.json +1 -0
  103. data/resources/concordance/deuteronomy/5.json +1 -0
  104. data/resources/concordance/deuteronomy/6.json +1 -0
  105. data/resources/concordance/deuteronomy/7.json +1 -0
  106. data/resources/concordance/deuteronomy/8.json +1 -0
  107. data/resources/concordance/deuteronomy/9.json +1 -0
  108. data/resources/concordance/ecclesiastes/1.json +1 -0
  109. data/resources/concordance/ecclesiastes/10.json +1 -0
  110. data/resources/concordance/ecclesiastes/11.json +1 -0
  111. data/resources/concordance/ecclesiastes/12.json +1 -0
  112. data/resources/concordance/ecclesiastes/2.json +1 -0
  113. data/resources/concordance/ecclesiastes/3.json +1 -0
  114. data/resources/concordance/ecclesiastes/4.json +1 -0
  115. data/resources/concordance/ecclesiastes/5.json +1 -0
  116. data/resources/concordance/ecclesiastes/6.json +1 -0
  117. data/resources/concordance/ecclesiastes/7.json +1 -0
  118. data/resources/concordance/ecclesiastes/8.json +1 -0
  119. data/resources/concordance/ecclesiastes/9.json +1 -0
  120. data/resources/concordance/ephesians/1.json +1 -0
  121. data/resources/concordance/ephesians/2.json +1 -0
  122. data/resources/concordance/ephesians/3.json +1 -0
  123. data/resources/concordance/ephesians/4.json +1 -0
  124. data/resources/concordance/ephesians/5.json +1 -0
  125. data/resources/concordance/ephesians/6.json +1 -0
  126. data/resources/concordance/esther/1.json +1 -0
  127. data/resources/concordance/esther/10.json +1 -0
  128. data/resources/concordance/esther/2.json +1 -0
  129. data/resources/concordance/esther/3.json +1 -0
  130. data/resources/concordance/esther/4.json +1 -0
  131. data/resources/concordance/esther/5.json +1 -0
  132. data/resources/concordance/esther/6.json +1 -0
  133. data/resources/concordance/esther/7.json +1 -0
  134. data/resources/concordance/esther/8.json +1 -0
  135. data/resources/concordance/esther/9.json +1 -0
  136. data/resources/concordance/exodus/1.json +1 -0
  137. data/resources/concordance/exodus/10.json +1 -0
  138. data/resources/concordance/exodus/11.json +1 -0
  139. data/resources/concordance/exodus/12.json +1 -0
  140. data/resources/concordance/exodus/13.json +1 -0
  141. data/resources/concordance/exodus/14.json +1 -0
  142. data/resources/concordance/exodus/15.json +1 -0
  143. data/resources/concordance/exodus/16.json +1 -0
  144. data/resources/concordance/exodus/17.json +1 -0
  145. data/resources/concordance/exodus/18.json +1 -0
  146. data/resources/concordance/exodus/19.json +1 -0
  147. data/resources/concordance/exodus/2.json +1 -0
  148. data/resources/concordance/exodus/20.json +1 -0
  149. data/resources/concordance/exodus/21.json +1 -0
  150. data/resources/concordance/exodus/22.json +1 -0
  151. data/resources/concordance/exodus/23.json +1 -0
  152. data/resources/concordance/exodus/24.json +1 -0
  153. data/resources/concordance/exodus/25.json +1 -0
  154. data/resources/concordance/exodus/26.json +1 -0
  155. data/resources/concordance/exodus/27.json +1 -0
  156. data/resources/concordance/exodus/28.json +1 -0
  157. data/resources/concordance/exodus/29.json +1 -0
  158. data/resources/concordance/exodus/3.json +1 -0
  159. data/resources/concordance/exodus/30.json +1 -0
  160. data/resources/concordance/exodus/31.json +1 -0
  161. data/resources/concordance/exodus/32.json +1 -0
  162. data/resources/concordance/exodus/33.json +1 -0
  163. data/resources/concordance/exodus/34.json +1 -0
  164. data/resources/concordance/exodus/35.json +1 -0
  165. data/resources/concordance/exodus/36.json +1 -0
  166. data/resources/concordance/exodus/37.json +1 -0
  167. data/resources/concordance/exodus/38.json +1 -0
  168. data/resources/concordance/exodus/39.json +1 -0
  169. data/resources/concordance/exodus/4.json +1 -0
  170. data/resources/concordance/exodus/40.json +1 -0
  171. data/resources/concordance/exodus/5.json +1 -0
  172. data/resources/concordance/exodus/6.json +1 -0
  173. data/resources/concordance/exodus/7.json +1 -0
  174. data/resources/concordance/exodus/8.json +1 -0
  175. data/resources/concordance/exodus/9.json +1 -0
  176. data/resources/concordance/ezekiel/1.json +1 -0
  177. data/resources/concordance/ezekiel/10.json +1 -0
  178. data/resources/concordance/ezekiel/11.json +1 -0
  179. data/resources/concordance/ezekiel/12.json +1 -0
  180. data/resources/concordance/ezekiel/13.json +1 -0
  181. data/resources/concordance/ezekiel/14.json +1 -0
  182. data/resources/concordance/ezekiel/15.json +1 -0
  183. data/resources/concordance/ezekiel/16.json +1 -0
  184. data/resources/concordance/ezekiel/17.json +1 -0
  185. data/resources/concordance/ezekiel/18.json +1 -0
  186. data/resources/concordance/ezekiel/19.json +1 -0
  187. data/resources/concordance/ezekiel/2.json +1 -0
  188. data/resources/concordance/ezekiel/20.json +1 -0
  189. data/resources/concordance/ezekiel/21.json +1 -0
  190. data/resources/concordance/ezekiel/22.json +1 -0
  191. data/resources/concordance/ezekiel/23.json +1 -0
  192. data/resources/concordance/ezekiel/24.json +1 -0
  193. data/resources/concordance/ezekiel/25.json +1 -0
  194. data/resources/concordance/ezekiel/26.json +1 -0
  195. data/resources/concordance/ezekiel/27.json +1 -0
  196. data/resources/concordance/ezekiel/28.json +1 -0
  197. data/resources/concordance/ezekiel/29.json +1 -0
  198. data/resources/concordance/ezekiel/3.json +1 -0
  199. data/resources/concordance/ezekiel/30.json +1 -0
  200. data/resources/concordance/ezekiel/31.json +1 -0
  201. data/resources/concordance/ezekiel/32.json +1 -0
  202. data/resources/concordance/ezekiel/33.json +1 -0
  203. data/resources/concordance/ezekiel/34.json +1 -0
  204. data/resources/concordance/ezekiel/35.json +1 -0
  205. data/resources/concordance/ezekiel/36.json +1 -0
  206. data/resources/concordance/ezekiel/37.json +1 -0
  207. data/resources/concordance/ezekiel/38.json +1 -0
  208. data/resources/concordance/ezekiel/39.json +1 -0
  209. data/resources/concordance/ezekiel/4.json +1 -0
  210. data/resources/concordance/ezekiel/40.json +1 -0
  211. data/resources/concordance/ezekiel/41.json +1 -0
  212. data/resources/concordance/ezekiel/42.json +1 -0
  213. data/resources/concordance/ezekiel/43.json +1 -0
  214. data/resources/concordance/ezekiel/44.json +1 -0
  215. data/resources/concordance/ezekiel/45.json +1 -0
  216. data/resources/concordance/ezekiel/46.json +1 -0
  217. data/resources/concordance/ezekiel/47.json +1 -0
  218. data/resources/concordance/ezekiel/48.json +1 -0
  219. data/resources/concordance/ezekiel/5.json +1 -0
  220. data/resources/concordance/ezekiel/6.json +1 -0
  221. data/resources/concordance/ezekiel/7.json +1 -0
  222. data/resources/concordance/ezekiel/8.json +1 -0
  223. data/resources/concordance/ezekiel/9.json +1 -0
  224. data/resources/concordance/ezra/1.json +1 -0
  225. data/resources/concordance/ezra/10.json +1 -0
  226. data/resources/concordance/ezra/2.json +1 -0
  227. data/resources/concordance/ezra/3.json +1 -0
  228. data/resources/concordance/ezra/4.json +1 -0
  229. data/resources/concordance/ezra/5.json +1 -0
  230. data/resources/concordance/ezra/6.json +1 -0
  231. data/resources/concordance/ezra/7.json +1 -0
  232. data/resources/concordance/ezra/8.json +1 -0
  233. data/resources/concordance/ezra/9.json +1 -0
  234. data/resources/concordance/galatians/1.json +1 -0
  235. data/resources/concordance/galatians/2.json +1 -0
  236. data/resources/concordance/galatians/3.json +1 -0
  237. data/resources/concordance/galatians/4.json +1 -0
  238. data/resources/concordance/galatians/5.json +1 -0
  239. data/resources/concordance/galatians/6.json +1 -0
  240. data/resources/concordance/genesis/1.json +1 -0
  241. data/resources/concordance/genesis/10.json +1 -0
  242. data/resources/concordance/genesis/11.json +1 -0
  243. data/resources/concordance/genesis/12.json +1 -0
  244. data/resources/concordance/genesis/13.json +1 -0
  245. data/resources/concordance/genesis/14.json +1 -0
  246. data/resources/concordance/genesis/15.json +1 -0
  247. data/resources/concordance/genesis/16.json +1 -0
  248. data/resources/concordance/genesis/17.json +1 -0
  249. data/resources/concordance/genesis/18.json +1 -0
  250. data/resources/concordance/genesis/19.json +1 -0
  251. data/resources/concordance/genesis/2.json +1 -0
  252. data/resources/concordance/genesis/20.json +1 -0
  253. data/resources/concordance/genesis/21.json +1 -0
  254. data/resources/concordance/genesis/22.json +1 -0
  255. data/resources/concordance/genesis/23.json +1 -0
  256. data/resources/concordance/genesis/24.json +1 -0
  257. data/resources/concordance/genesis/25.json +1 -0
  258. data/resources/concordance/genesis/26.json +1 -0
  259. data/resources/concordance/genesis/27.json +1 -0
  260. data/resources/concordance/genesis/28.json +1 -0
  261. data/resources/concordance/genesis/29.json +1 -0
  262. data/resources/concordance/genesis/3.json +1 -0
  263. data/resources/concordance/genesis/30.json +1 -0
  264. data/resources/concordance/genesis/31.json +1 -0
  265. data/resources/concordance/genesis/32.json +1 -0
  266. data/resources/concordance/genesis/33.json +1 -0
  267. data/resources/concordance/genesis/34.json +1 -0
  268. data/resources/concordance/genesis/35.json +1 -0
  269. data/resources/concordance/genesis/36.json +1 -0
  270. data/resources/concordance/genesis/37.json +1 -0
  271. data/resources/concordance/genesis/38.json +1 -0
  272. data/resources/concordance/genesis/39.json +1 -0
  273. data/resources/concordance/genesis/4.json +1 -0
  274. data/resources/concordance/genesis/40.json +1 -0
  275. data/resources/concordance/genesis/41.json +1 -0
  276. data/resources/concordance/genesis/42.json +1 -0
  277. data/resources/concordance/genesis/43.json +1 -0
  278. data/resources/concordance/genesis/44.json +1 -0
  279. data/resources/concordance/genesis/45.json +1 -0
  280. data/resources/concordance/genesis/46.json +1 -0
  281. data/resources/concordance/genesis/47.json +1 -0
  282. data/resources/concordance/genesis/48.json +1 -0
  283. data/resources/concordance/genesis/49.json +1 -0
  284. data/resources/concordance/genesis/5.json +1 -0
  285. data/resources/concordance/genesis/50.json +1 -0
  286. data/resources/concordance/genesis/6.json +1 -0
  287. data/resources/concordance/genesis/7.json +1 -0
  288. data/resources/concordance/genesis/8.json +1 -0
  289. data/resources/concordance/genesis/9.json +1 -0
  290. data/resources/concordance/habakkuk/1.json +1 -0
  291. data/resources/concordance/habakkuk/2.json +1 -0
  292. data/resources/concordance/habakkuk/3.json +1 -0
  293. data/resources/concordance/haggai/1.json +1 -0
  294. data/resources/concordance/haggai/2.json +1 -0
  295. data/resources/concordance/hebrews/1.json +1 -0
  296. data/resources/concordance/hebrews/10.json +1 -0
  297. data/resources/concordance/hebrews/11.json +1 -0
  298. data/resources/concordance/hebrews/12.json +1 -0
  299. data/resources/concordance/hebrews/13.json +1 -0
  300. data/resources/concordance/hebrews/2.json +1 -0
  301. data/resources/concordance/hebrews/3.json +1 -0
  302. data/resources/concordance/hebrews/4.json +1 -0
  303. data/resources/concordance/hebrews/5.json +1 -0
  304. data/resources/concordance/hebrews/6.json +1 -0
  305. data/resources/concordance/hebrews/7.json +1 -0
  306. data/resources/concordance/hebrews/8.json +1 -0
  307. data/resources/concordance/hebrews/9.json +1 -0
  308. data/resources/concordance/hosea/1.json +1 -0
  309. data/resources/concordance/hosea/10.json +1 -0
  310. data/resources/concordance/hosea/11.json +1 -0
  311. data/resources/concordance/hosea/12.json +1 -0
  312. data/resources/concordance/hosea/13.json +1 -0
  313. data/resources/concordance/hosea/14.json +1 -0
  314. data/resources/concordance/hosea/2.json +1 -0
  315. data/resources/concordance/hosea/3.json +1 -0
  316. data/resources/concordance/hosea/4.json +1 -0
  317. data/resources/concordance/hosea/5.json +1 -0
  318. data/resources/concordance/hosea/6.json +1 -0
  319. data/resources/concordance/hosea/7.json +1 -0
  320. data/resources/concordance/hosea/8.json +1 -0
  321. data/resources/concordance/hosea/9.json +1 -0
  322. data/resources/concordance/i_chronicles/1.json +1 -0
  323. data/resources/concordance/i_chronicles/10.json +1 -0
  324. data/resources/concordance/i_chronicles/11.json +1 -0
  325. data/resources/concordance/i_chronicles/12.json +1 -0
  326. data/resources/concordance/i_chronicles/13.json +1 -0
  327. data/resources/concordance/i_chronicles/14.json +1 -0
  328. data/resources/concordance/i_chronicles/15.json +1 -0
  329. data/resources/concordance/i_chronicles/16.json +1 -0
  330. data/resources/concordance/i_chronicles/17.json +1 -0
  331. data/resources/concordance/i_chronicles/18.json +1 -0
  332. data/resources/concordance/i_chronicles/19.json +1 -0
  333. data/resources/concordance/i_chronicles/2.json +1 -0
  334. data/resources/concordance/i_chronicles/20.json +1 -0
  335. data/resources/concordance/i_chronicles/21.json +1 -0
  336. data/resources/concordance/i_chronicles/22.json +1 -0
  337. data/resources/concordance/i_chronicles/23.json +1 -0
  338. data/resources/concordance/i_chronicles/24.json +1 -0
  339. data/resources/concordance/i_chronicles/25.json +1 -0
  340. data/resources/concordance/i_chronicles/26.json +1 -0
  341. data/resources/concordance/i_chronicles/27.json +1 -0
  342. data/resources/concordance/i_chronicles/28.json +1 -0
  343. data/resources/concordance/i_chronicles/29.json +1 -0
  344. data/resources/concordance/i_chronicles/3.json +1 -0
  345. data/resources/concordance/i_chronicles/4.json +1 -0
  346. data/resources/concordance/i_chronicles/5.json +1 -0
  347. data/resources/concordance/i_chronicles/6.json +1 -0
  348. data/resources/concordance/i_chronicles/7.json +1 -0
  349. data/resources/concordance/i_chronicles/8.json +1 -0
  350. data/resources/concordance/i_chronicles/9.json +1 -0
  351. data/resources/concordance/i_corinthians/1.json +1 -0
  352. data/resources/concordance/i_corinthians/10.json +1 -0
  353. data/resources/concordance/i_corinthians/11.json +1 -0
  354. data/resources/concordance/i_corinthians/12.json +1 -0
  355. data/resources/concordance/i_corinthians/13.json +1 -0
  356. data/resources/concordance/i_corinthians/14.json +1 -0
  357. data/resources/concordance/i_corinthians/15.json +1 -0
  358. data/resources/concordance/i_corinthians/16.json +1 -0
  359. data/resources/concordance/i_corinthians/2.json +1 -0
  360. data/resources/concordance/i_corinthians/3.json +1 -0
  361. data/resources/concordance/i_corinthians/4.json +1 -0
  362. data/resources/concordance/i_corinthians/5.json +1 -0
  363. data/resources/concordance/i_corinthians/6.json +1 -0
  364. data/resources/concordance/i_corinthians/7.json +1 -0
  365. data/resources/concordance/i_corinthians/8.json +1 -0
  366. data/resources/concordance/i_corinthians/9.json +1 -0
  367. data/resources/concordance/i_john/1.json +1 -0
  368. data/resources/concordance/i_john/2.json +1 -0
  369. data/resources/concordance/i_john/3.json +1 -0
  370. data/resources/concordance/i_john/4.json +1 -0
  371. data/resources/concordance/i_john/5.json +1 -0
  372. data/resources/concordance/i_kings/1.json +1 -0
  373. data/resources/concordance/i_kings/10.json +1 -0
  374. data/resources/concordance/i_kings/11.json +1 -0
  375. data/resources/concordance/i_kings/12.json +1 -0
  376. data/resources/concordance/i_kings/13.json +1 -0
  377. data/resources/concordance/i_kings/14.json +1 -0
  378. data/resources/concordance/i_kings/15.json +1 -0
  379. data/resources/concordance/i_kings/16.json +1 -0
  380. data/resources/concordance/i_kings/17.json +1 -0
  381. data/resources/concordance/i_kings/18.json +1 -0
  382. data/resources/concordance/i_kings/19.json +1 -0
  383. data/resources/concordance/i_kings/2.json +1 -0
  384. data/resources/concordance/i_kings/20.json +1 -0
  385. data/resources/concordance/i_kings/21.json +1 -0
  386. data/resources/concordance/i_kings/3.json +1 -0
  387. data/resources/concordance/i_kings/4.json +1 -0
  388. data/resources/concordance/i_kings/5.json +1 -0
  389. data/resources/concordance/i_kings/6.json +1 -0
  390. data/resources/concordance/i_kings/7.json +1 -0
  391. data/resources/concordance/i_kings/8.json +1 -0
  392. data/resources/concordance/i_kings/9.json +1 -0
  393. data/resources/concordance/i_peter/1.json +1 -0
  394. data/resources/concordance/i_peter/2.json +1 -0
  395. data/resources/concordance/i_peter/3.json +1 -0
  396. data/resources/concordance/i_peter/4.json +1 -0
  397. data/resources/concordance/i_peter/5.json +1 -0
  398. data/resources/concordance/i_samuel/1.json +1 -0
  399. data/resources/concordance/i_samuel/10.json +1 -0
  400. data/resources/concordance/i_samuel/11.json +1 -0
  401. data/resources/concordance/i_samuel/12.json +1 -0
  402. data/resources/concordance/i_samuel/13.json +1 -0
  403. data/resources/concordance/i_samuel/14.json +1 -0
  404. data/resources/concordance/i_samuel/15.json +1 -0
  405. data/resources/concordance/i_samuel/16.json +1 -0
  406. data/resources/concordance/i_samuel/17.json +1 -0
  407. data/resources/concordance/i_samuel/18.json +1 -0
  408. data/resources/concordance/i_samuel/19.json +1 -0
  409. data/resources/concordance/i_samuel/2.json +1 -0
  410. data/resources/concordance/i_samuel/20.json +1 -0
  411. data/resources/concordance/i_samuel/21.json +1 -0
  412. data/resources/concordance/i_samuel/22.json +1 -0
  413. data/resources/concordance/i_samuel/23.json +1 -0
  414. data/resources/concordance/i_samuel/24.json +1 -0
  415. data/resources/concordance/i_samuel/25.json +1 -0
  416. data/resources/concordance/i_samuel/26.json +1 -0
  417. data/resources/concordance/i_samuel/27.json +1 -0
  418. data/resources/concordance/i_samuel/28.json +1 -0
  419. data/resources/concordance/i_samuel/29.json +1 -0
  420. data/resources/concordance/i_samuel/3.json +1 -0
  421. data/resources/concordance/i_samuel/30.json +1 -0
  422. data/resources/concordance/i_samuel/31.json +1 -0
  423. data/resources/concordance/i_samuel/4.json +1 -0
  424. data/resources/concordance/i_samuel/5.json +1 -0
  425. data/resources/concordance/i_samuel/6.json +1 -0
  426. data/resources/concordance/i_samuel/7.json +1 -0
  427. data/resources/concordance/i_samuel/8.json +1 -0
  428. data/resources/concordance/i_samuel/9.json +1 -0
  429. data/resources/concordance/i_thessalonians/1.json +1 -0
  430. data/resources/concordance/i_thessalonians/2.json +1 -0
  431. data/resources/concordance/i_thessalonians/3.json +1 -0
  432. data/resources/concordance/i_thessalonians/4.json +1 -0
  433. data/resources/concordance/i_thessalonians/5.json +1 -0
  434. data/resources/concordance/i_timothy/1.json +1 -0
  435. data/resources/concordance/i_timothy/2.json +1 -0
  436. data/resources/concordance/i_timothy/3.json +1 -0
  437. data/resources/concordance/i_timothy/4.json +1 -0
  438. data/resources/concordance/i_timothy/5.json +1 -0
  439. data/resources/concordance/i_timothy/6.json +1 -0
  440. data/resources/concordance/ii_chronicles/1.json +1 -0
  441. data/resources/concordance/ii_chronicles/10.json +1 -0
  442. data/resources/concordance/ii_chronicles/11.json +1 -0
  443. data/resources/concordance/ii_chronicles/12.json +1 -0
  444. data/resources/concordance/ii_chronicles/13.json +1 -0
  445. data/resources/concordance/ii_chronicles/14.json +1 -0
  446. data/resources/concordance/ii_chronicles/15.json +1 -0
  447. data/resources/concordance/ii_chronicles/16.json +1 -0
  448. data/resources/concordance/ii_chronicles/17.json +1 -0
  449. data/resources/concordance/ii_chronicles/18.json +1 -0
  450. data/resources/concordance/ii_chronicles/19.json +1 -0
  451. data/resources/concordance/ii_chronicles/2.json +1 -0
  452. data/resources/concordance/ii_chronicles/20.json +1 -0
  453. data/resources/concordance/ii_chronicles/21.json +1 -0
  454. data/resources/concordance/ii_chronicles/22.json +1 -0
  455. data/resources/concordance/ii_chronicles/23.json +1 -0
  456. data/resources/concordance/ii_chronicles/24.json +1 -0
  457. data/resources/concordance/ii_chronicles/25.json +1 -0
  458. data/resources/concordance/ii_chronicles/26.json +1 -0
  459. data/resources/concordance/ii_chronicles/27.json +1 -0
  460. data/resources/concordance/ii_chronicles/28.json +1 -0
  461. data/resources/concordance/ii_chronicles/29.json +1 -0
  462. data/resources/concordance/ii_chronicles/3.json +1 -0
  463. data/resources/concordance/ii_chronicles/30.json +1 -0
  464. data/resources/concordance/ii_chronicles/31.json +1 -0
  465. data/resources/concordance/ii_chronicles/32.json +1 -0
  466. data/resources/concordance/ii_chronicles/33.json +1 -0
  467. data/resources/concordance/ii_chronicles/34.json +1 -0
  468. data/resources/concordance/ii_chronicles/35.json +1 -0
  469. data/resources/concordance/ii_chronicles/36.json +1 -0
  470. data/resources/concordance/ii_chronicles/4.json +1 -0
  471. data/resources/concordance/ii_chronicles/5.json +1 -0
  472. data/resources/concordance/ii_chronicles/6.json +1 -0
  473. data/resources/concordance/ii_chronicles/7.json +1 -0
  474. data/resources/concordance/ii_chronicles/8.json +1 -0
  475. data/resources/concordance/ii_chronicles/9.json +1 -0
  476. data/resources/concordance/ii_corinthians/1.json +1 -0
  477. data/resources/concordance/ii_corinthians/10.json +1 -0
  478. data/resources/concordance/ii_corinthians/11.json +1 -0
  479. data/resources/concordance/ii_corinthians/12.json +1 -0
  480. data/resources/concordance/ii_corinthians/13.json +1 -0
  481. data/resources/concordance/ii_corinthians/2.json +1 -0
  482. data/resources/concordance/ii_corinthians/3.json +1 -0
  483. data/resources/concordance/ii_corinthians/4.json +1 -0
  484. data/resources/concordance/ii_corinthians/5.json +1 -0
  485. data/resources/concordance/ii_corinthians/6.json +1 -0
  486. data/resources/concordance/ii_corinthians/7.json +1 -0
  487. data/resources/concordance/ii_corinthians/8.json +1 -0
  488. data/resources/concordance/ii_corinthians/9.json +1 -0
  489. data/resources/concordance/ii_john/1.json +1 -0
  490. data/resources/concordance/ii_kings/1.json +1 -0
  491. data/resources/concordance/ii_kings/10.json +1 -0
  492. data/resources/concordance/ii_kings/11.json +1 -0
  493. data/resources/concordance/ii_kings/12.json +1 -0
  494. data/resources/concordance/ii_kings/13.json +1 -0
  495. data/resources/concordance/ii_kings/14.json +1 -0
  496. data/resources/concordance/ii_kings/15.json +1 -0
  497. data/resources/concordance/ii_kings/16.json +1 -0
  498. data/resources/concordance/ii_kings/17.json +1 -0
  499. data/resources/concordance/ii_kings/18.json +1 -0
  500. data/resources/concordance/ii_kings/19.json +1 -0
  501. data/resources/concordance/ii_kings/2.json +1 -0
  502. data/resources/concordance/ii_kings/20.json +1 -0
  503. data/resources/concordance/ii_kings/21.json +1 -0
  504. data/resources/concordance/ii_kings/22.json +1 -0
  505. data/resources/concordance/ii_kings/23.json +1 -0
  506. data/resources/concordance/ii_kings/24.json +1 -0
  507. data/resources/concordance/ii_kings/25.json +1 -0
  508. data/resources/concordance/ii_kings/3.json +1 -0
  509. data/resources/concordance/ii_kings/4.json +1 -0
  510. data/resources/concordance/ii_kings/5.json +1 -0
  511. data/resources/concordance/ii_kings/6.json +1 -0
  512. data/resources/concordance/ii_kings/7.json +1 -0
  513. data/resources/concordance/ii_kings/8.json +1 -0
  514. data/resources/concordance/ii_kings/9.json +1 -0
  515. data/resources/concordance/ii_peter/1.json +1 -0
  516. data/resources/concordance/ii_peter/2.json +1 -0
  517. data/resources/concordance/ii_peter/3.json +1 -0
  518. data/resources/concordance/ii_samuel/1.json +1 -0
  519. data/resources/concordance/ii_samuel/10.json +1 -0
  520. data/resources/concordance/ii_samuel/11.json +1 -0
  521. data/resources/concordance/ii_samuel/12.json +1 -0
  522. data/resources/concordance/ii_samuel/13.json +1 -0
  523. data/resources/concordance/ii_samuel/14.json +1 -0
  524. data/resources/concordance/ii_samuel/15.json +1 -0
  525. data/resources/concordance/ii_samuel/16.json +1 -0
  526. data/resources/concordance/ii_samuel/17.json +1 -0
  527. data/resources/concordance/ii_samuel/18.json +1 -0
  528. data/resources/concordance/ii_samuel/19.json +1 -0
  529. data/resources/concordance/ii_samuel/2.json +1 -0
  530. data/resources/concordance/ii_samuel/20.json +1 -0
  531. data/resources/concordance/ii_samuel/21.json +1 -0
  532. data/resources/concordance/ii_samuel/22.json +1 -0
  533. data/resources/concordance/ii_samuel/23.json +1 -0
  534. data/resources/concordance/ii_samuel/24.json +1 -0
  535. data/resources/concordance/ii_samuel/3.json +1 -0
  536. data/resources/concordance/ii_samuel/4.json +1 -0
  537. data/resources/concordance/ii_samuel/5.json +1 -0
  538. data/resources/concordance/ii_samuel/6.json +1 -0
  539. data/resources/concordance/ii_samuel/7.json +1 -0
  540. data/resources/concordance/ii_samuel/8.json +1 -0
  541. data/resources/concordance/ii_samuel/9.json +1 -0
  542. data/resources/concordance/ii_thessalonians/1.json +1 -0
  543. data/resources/concordance/ii_thessalonians/2.json +1 -0
  544. data/resources/concordance/ii_thessalonians/3.json +1 -0
  545. data/resources/concordance/ii_timothy/1.json +1 -0
  546. data/resources/concordance/ii_timothy/2.json +1 -0
  547. data/resources/concordance/ii_timothy/3.json +1 -0
  548. data/resources/concordance/ii_timothy/4.json +1 -0
  549. data/resources/concordance/iii_john/1.json +1 -0
  550. data/resources/concordance/isaiah/1.json +1 -0
  551. data/resources/concordance/isaiah/10.json +1 -0
  552. data/resources/concordance/isaiah/11.json +1 -0
  553. data/resources/concordance/isaiah/12.json +1 -0
  554. data/resources/concordance/isaiah/13.json +1 -0
  555. data/resources/concordance/isaiah/14.json +1 -0
  556. data/resources/concordance/isaiah/15.json +1 -0
  557. data/resources/concordance/isaiah/16.json +1 -0
  558. data/resources/concordance/isaiah/17.json +1 -0
  559. data/resources/concordance/isaiah/18.json +1 -0
  560. data/resources/concordance/isaiah/19.json +1 -0
  561. data/resources/concordance/isaiah/2.json +1 -0
  562. data/resources/concordance/isaiah/20.json +1 -0
  563. data/resources/concordance/isaiah/21.json +1 -0
  564. data/resources/concordance/isaiah/22.json +1 -0
  565. data/resources/concordance/isaiah/23.json +1 -0
  566. data/resources/concordance/isaiah/24.json +1 -0
  567. data/resources/concordance/isaiah/25.json +1 -0
  568. data/resources/concordance/isaiah/26.json +1 -0
  569. data/resources/concordance/isaiah/27.json +1 -0
  570. data/resources/concordance/isaiah/28.json +1 -0
  571. data/resources/concordance/isaiah/29.json +1 -0
  572. data/resources/concordance/isaiah/3.json +1 -0
  573. data/resources/concordance/isaiah/30.json +1 -0
  574. data/resources/concordance/isaiah/31.json +1 -0
  575. data/resources/concordance/isaiah/32.json +1 -0
  576. data/resources/concordance/isaiah/33.json +1 -0
  577. data/resources/concordance/isaiah/34.json +1 -0
  578. data/resources/concordance/isaiah/35.json +1 -0
  579. data/resources/concordance/isaiah/36.json +1 -0
  580. data/resources/concordance/isaiah/37.json +1 -0
  581. data/resources/concordance/isaiah/38.json +1 -0
  582. data/resources/concordance/isaiah/39.json +1 -0
  583. data/resources/concordance/isaiah/4.json +1 -0
  584. data/resources/concordance/isaiah/40.json +1 -0
  585. data/resources/concordance/isaiah/41.json +1 -0
  586. data/resources/concordance/isaiah/42.json +1 -0
  587. data/resources/concordance/isaiah/43.json +1 -0
  588. data/resources/concordance/isaiah/44.json +1 -0
  589. data/resources/concordance/isaiah/45.json +1 -0
  590. data/resources/concordance/isaiah/46.json +1 -0
  591. data/resources/concordance/isaiah/47.json +1 -0
  592. data/resources/concordance/isaiah/48.json +1 -0
  593. data/resources/concordance/isaiah/49.json +1 -0
  594. data/resources/concordance/isaiah/5.json +1 -0
  595. data/resources/concordance/isaiah/50.json +1 -0
  596. data/resources/concordance/isaiah/51.json +1 -0
  597. data/resources/concordance/isaiah/52.json +1 -0
  598. data/resources/concordance/isaiah/53.json +1 -0
  599. data/resources/concordance/isaiah/54.json +1 -0
  600. data/resources/concordance/isaiah/55.json +1 -0
  601. data/resources/concordance/isaiah/56.json +1 -0
  602. data/resources/concordance/isaiah/57.json +1 -0
  603. data/resources/concordance/isaiah/58.json +1 -0
  604. data/resources/concordance/isaiah/59.json +1 -0
  605. data/resources/concordance/isaiah/6.json +1 -0
  606. data/resources/concordance/isaiah/60.json +1 -0
  607. data/resources/concordance/isaiah/61.json +1 -0
  608. data/resources/concordance/isaiah/62.json +1 -0
  609. data/resources/concordance/isaiah/63.json +1 -0
  610. data/resources/concordance/isaiah/64.json +1 -0
  611. data/resources/concordance/isaiah/65.json +1 -0
  612. data/resources/concordance/isaiah/66.json +1 -0
  613. data/resources/concordance/isaiah/7.json +1 -0
  614. data/resources/concordance/isaiah/8.json +1 -0
  615. data/resources/concordance/isaiah/9.json +1 -0
  616. data/resources/concordance/james/1.json +1 -0
  617. data/resources/concordance/james/2.json +1 -0
  618. data/resources/concordance/james/3.json +1 -0
  619. data/resources/concordance/james/4.json +1 -0
  620. data/resources/concordance/james/5.json +1 -0
  621. data/resources/concordance/jeremiah/1.json +1 -0
  622. data/resources/concordance/jeremiah/10.json +1 -0
  623. data/resources/concordance/jeremiah/11.json +1 -0
  624. data/resources/concordance/jeremiah/12.json +1 -0
  625. data/resources/concordance/jeremiah/13.json +1 -0
  626. data/resources/concordance/jeremiah/14.json +1 -0
  627. data/resources/concordance/jeremiah/15.json +1 -0
  628. data/resources/concordance/jeremiah/16.json +1 -0
  629. data/resources/concordance/jeremiah/17.json +1 -0
  630. data/resources/concordance/jeremiah/18.json +1 -0
  631. data/resources/concordance/jeremiah/19.json +1 -0
  632. data/resources/concordance/jeremiah/2.json +1 -0
  633. data/resources/concordance/jeremiah/20.json +1 -0
  634. data/resources/concordance/jeremiah/21.json +1 -0
  635. data/resources/concordance/jeremiah/22.json +1 -0
  636. data/resources/concordance/jeremiah/23.json +1 -0
  637. data/resources/concordance/jeremiah/24.json +1 -0
  638. data/resources/concordance/jeremiah/25.json +1 -0
  639. data/resources/concordance/jeremiah/26.json +1 -0
  640. data/resources/concordance/jeremiah/27.json +1 -0
  641. data/resources/concordance/jeremiah/28.json +1 -0
  642. data/resources/concordance/jeremiah/29.json +1 -0
  643. data/resources/concordance/jeremiah/3.json +1 -0
  644. data/resources/concordance/jeremiah/30.json +1 -0
  645. data/resources/concordance/jeremiah/31.json +1 -0
  646. data/resources/concordance/jeremiah/32.json +1 -0
  647. data/resources/concordance/jeremiah/33.json +1 -0
  648. data/resources/concordance/jeremiah/34.json +1 -0
  649. data/resources/concordance/jeremiah/35.json +1 -0
  650. data/resources/concordance/jeremiah/36.json +1 -0
  651. data/resources/concordance/jeremiah/37.json +1 -0
  652. data/resources/concordance/jeremiah/38.json +1 -0
  653. data/resources/concordance/jeremiah/39.json +1 -0
  654. data/resources/concordance/jeremiah/4.json +1 -0
  655. data/resources/concordance/jeremiah/40.json +1 -0
  656. data/resources/concordance/jeremiah/41.json +1 -0
  657. data/resources/concordance/jeremiah/42.json +1 -0
  658. data/resources/concordance/jeremiah/43.json +1 -0
  659. data/resources/concordance/jeremiah/44.json +1 -0
  660. data/resources/concordance/jeremiah/45.json +1 -0
  661. data/resources/concordance/jeremiah/46.json +1 -0
  662. data/resources/concordance/jeremiah/47.json +1 -0
  663. data/resources/concordance/jeremiah/48.json +1 -0
  664. data/resources/concordance/jeremiah/49.json +1 -0
  665. data/resources/concordance/jeremiah/5.json +1 -0
  666. data/resources/concordance/jeremiah/50.json +1 -0
  667. data/resources/concordance/jeremiah/51.json +1 -0
  668. data/resources/concordance/jeremiah/52.json +1 -0
  669. data/resources/concordance/jeremiah/6.json +1 -0
  670. data/resources/concordance/jeremiah/7.json +1 -0
  671. data/resources/concordance/jeremiah/8.json +1 -0
  672. data/resources/concordance/jeremiah/9.json +1 -0
  673. data/resources/concordance/job/1.json +1 -0
  674. data/resources/concordance/job/10.json +1 -0
  675. data/resources/concordance/job/11.json +1 -0
  676. data/resources/concordance/job/12.json +1 -0
  677. data/resources/concordance/job/13.json +1 -0
  678. data/resources/concordance/job/14.json +1 -0
  679. data/resources/concordance/job/15.json +1 -0
  680. data/resources/concordance/job/16.json +1 -0
  681. data/resources/concordance/job/17.json +1 -0
  682. data/resources/concordance/job/18.json +1 -0
  683. data/resources/concordance/job/19.json +1 -0
  684. data/resources/concordance/job/2.json +1 -0
  685. data/resources/concordance/job/20.json +1 -0
  686. data/resources/concordance/job/21.json +1 -0
  687. data/resources/concordance/job/22.json +1 -0
  688. data/resources/concordance/job/23.json +1 -0
  689. data/resources/concordance/job/24.json +1 -0
  690. data/resources/concordance/job/25.json +1 -0
  691. data/resources/concordance/job/26.json +1 -0
  692. data/resources/concordance/job/27.json +1 -0
  693. data/resources/concordance/job/28.json +1 -0
  694. data/resources/concordance/job/29.json +1 -0
  695. data/resources/concordance/job/3.json +1 -0
  696. data/resources/concordance/job/30.json +1 -0
  697. data/resources/concordance/job/31.json +1 -0
  698. data/resources/concordance/job/32.json +1 -0
  699. data/resources/concordance/job/33.json +1 -0
  700. data/resources/concordance/job/34.json +1 -0
  701. data/resources/concordance/job/35.json +1 -0
  702. data/resources/concordance/job/36.json +1 -0
  703. data/resources/concordance/job/37.json +1 -0
  704. data/resources/concordance/job/38.json +1 -0
  705. data/resources/concordance/job/39.json +1 -0
  706. data/resources/concordance/job/4.json +1 -0
  707. data/resources/concordance/job/40.json +1 -0
  708. data/resources/concordance/job/41.json +1 -0
  709. data/resources/concordance/job/42.json +1 -0
  710. data/resources/concordance/job/5.json +1 -0
  711. data/resources/concordance/job/6.json +1 -0
  712. data/resources/concordance/job/7.json +1 -0
  713. data/resources/concordance/job/8.json +1 -0
  714. data/resources/concordance/job/9.json +1 -0
  715. data/resources/concordance/joel/1.json +1 -0
  716. data/resources/concordance/joel/2.json +1 -0
  717. data/resources/concordance/joel/3.json +1 -0
  718. data/resources/concordance/john/1.json +1 -0
  719. data/resources/concordance/john/10.json +1 -0
  720. data/resources/concordance/john/11.json +1 -0
  721. data/resources/concordance/john/12.json +1 -0
  722. data/resources/concordance/john/13.json +1 -0
  723. data/resources/concordance/john/14.json +1 -0
  724. data/resources/concordance/john/15.json +1 -0
  725. data/resources/concordance/john/16.json +1 -0
  726. data/resources/concordance/john/17.json +1 -0
  727. data/resources/concordance/john/18.json +1 -0
  728. data/resources/concordance/john/19.json +1 -0
  729. data/resources/concordance/john/2.json +1 -0
  730. data/resources/concordance/john/20.json +1 -0
  731. data/resources/concordance/john/21.json +1 -0
  732. data/resources/concordance/john/3.json +1 -0
  733. data/resources/concordance/john/4.json +1 -0
  734. data/resources/concordance/john/5.json +1 -0
  735. data/resources/concordance/john/6.json +1 -0
  736. data/resources/concordance/john/7.json +1 -0
  737. data/resources/concordance/john/8.json +1 -0
  738. data/resources/concordance/john/9.json +1 -0
  739. data/resources/concordance/jonah/1.json +1 -0
  740. data/resources/concordance/jonah/2.json +1 -0
  741. data/resources/concordance/jonah/3.json +1 -0
  742. data/resources/concordance/jonah/4.json +1 -0
  743. data/resources/concordance/joshua/1.json +1 -0
  744. data/resources/concordance/joshua/10.json +1 -0
  745. data/resources/concordance/joshua/11.json +1 -0
  746. data/resources/concordance/joshua/12.json +1 -0
  747. data/resources/concordance/joshua/13.json +1 -0
  748. data/resources/concordance/joshua/14.json +1 -0
  749. data/resources/concordance/joshua/15.json +1 -0
  750. data/resources/concordance/joshua/16.json +1 -0
  751. data/resources/concordance/joshua/17.json +1 -0
  752. data/resources/concordance/joshua/18.json +1 -0
  753. data/resources/concordance/joshua/19.json +1 -0
  754. data/resources/concordance/joshua/2.json +1 -0
  755. data/resources/concordance/joshua/20.json +1 -0
  756. data/resources/concordance/joshua/21.json +1 -0
  757. data/resources/concordance/joshua/22.json +1 -0
  758. data/resources/concordance/joshua/23.json +1 -0
  759. data/resources/concordance/joshua/24.json +1 -0
  760. data/resources/concordance/joshua/3.json +1 -0
  761. data/resources/concordance/joshua/4.json +1 -0
  762. data/resources/concordance/joshua/5.json +1 -0
  763. data/resources/concordance/joshua/6.json +1 -0
  764. data/resources/concordance/joshua/7.json +1 -0
  765. data/resources/concordance/joshua/8.json +1 -0
  766. data/resources/concordance/joshua/9.json +1 -0
  767. data/resources/concordance/judee/1.json +1 -0
  768. data/resources/concordance/judges/1.json +1 -0
  769. data/resources/concordance/judges/10.json +1 -0
  770. data/resources/concordance/judges/11.json +1 -0
  771. data/resources/concordance/judges/12.json +1 -0
  772. data/resources/concordance/judges/13.json +1 -0
  773. data/resources/concordance/judges/14.json +1 -0
  774. data/resources/concordance/judges/15.json +1 -0
  775. data/resources/concordance/judges/16.json +1 -0
  776. data/resources/concordance/judges/17.json +1 -0
  777. data/resources/concordance/judges/18.json +1 -0
  778. data/resources/concordance/judges/19.json +1 -0
  779. data/resources/concordance/judges/2.json +1 -0
  780. data/resources/concordance/judges/20.json +1 -0
  781. data/resources/concordance/judges/21.json +1 -0
  782. data/resources/concordance/judges/3.json +1 -0
  783. data/resources/concordance/judges/4.json +1 -0
  784. data/resources/concordance/judges/5.json +1 -0
  785. data/resources/concordance/judges/6.json +1 -0
  786. data/resources/concordance/judges/7.json +1 -0
  787. data/resources/concordance/judges/8.json +1 -0
  788. data/resources/concordance/judges/9.json +1 -0
  789. data/resources/concordance/lamentations/1.json +1 -0
  790. data/resources/concordance/lamentations/2.json +1 -0
  791. data/resources/concordance/lamentations/3.json +1 -0
  792. data/resources/concordance/lamentations/4.json +1 -0
  793. data/resources/concordance/lamentations/5.json +1 -0
  794. data/resources/concordance/leviticus/1.json +1 -0
  795. data/resources/concordance/leviticus/10.json +1 -0
  796. data/resources/concordance/leviticus/11.json +1 -0
  797. data/resources/concordance/leviticus/12.json +1 -0
  798. data/resources/concordance/leviticus/13.json +1 -0
  799. data/resources/concordance/leviticus/14.json +1 -0
  800. data/resources/concordance/leviticus/15.json +1 -0
  801. data/resources/concordance/leviticus/16.json +1 -0
  802. data/resources/concordance/leviticus/17.json +1 -0
  803. data/resources/concordance/leviticus/18.json +1 -0
  804. data/resources/concordance/leviticus/19.json +1 -0
  805. data/resources/concordance/leviticus/2.json +1 -0
  806. data/resources/concordance/leviticus/20.json +1 -0
  807. data/resources/concordance/leviticus/21.json +1 -0
  808. data/resources/concordance/leviticus/22.json +1 -0
  809. data/resources/concordance/leviticus/23.json +1 -0
  810. data/resources/concordance/leviticus/24.json +1 -0
  811. data/resources/concordance/leviticus/25.json +1 -0
  812. data/resources/concordance/leviticus/26.json +1 -0
  813. data/resources/concordance/leviticus/27.json +1 -0
  814. data/resources/concordance/leviticus/3.json +1 -0
  815. data/resources/concordance/leviticus/4.json +1 -0
  816. data/resources/concordance/leviticus/5.json +1 -0
  817. data/resources/concordance/leviticus/6.json +1 -0
  818. data/resources/concordance/leviticus/7.json +1 -0
  819. data/resources/concordance/leviticus/8.json +1 -0
  820. data/resources/concordance/leviticus/9.json +1 -0
  821. data/resources/concordance/luke/1.json +1 -0
  822. data/resources/concordance/luke/10.json +1 -0
  823. data/resources/concordance/luke/11.json +1 -0
  824. data/resources/concordance/luke/12.json +1 -0
  825. data/resources/concordance/luke/13.json +1 -0
  826. data/resources/concordance/luke/14.json +1 -0
  827. data/resources/concordance/luke/15.json +1 -0
  828. data/resources/concordance/luke/16.json +1 -0
  829. data/resources/concordance/luke/17.json +1 -0
  830. data/resources/concordance/luke/18.json +1 -0
  831. data/resources/concordance/luke/19.json +1 -0
  832. data/resources/concordance/luke/2.json +1 -0
  833. data/resources/concordance/luke/20.json +1 -0
  834. data/resources/concordance/luke/21.json +1 -0
  835. data/resources/concordance/luke/22.json +1 -0
  836. data/resources/concordance/luke/23.json +1 -0
  837. data/resources/concordance/luke/24.json +1 -0
  838. data/resources/concordance/luke/3.json +1 -0
  839. data/resources/concordance/luke/4.json +1 -0
  840. data/resources/concordance/luke/5.json +1 -0
  841. data/resources/concordance/luke/6.json +1 -0
  842. data/resources/concordance/luke/7.json +1 -0
  843. data/resources/concordance/luke/8.json +1 -0
  844. data/resources/concordance/luke/9.json +1 -0
  845. data/resources/concordance/malachi/1.json +1 -0
  846. data/resources/concordance/malachi/2.json +1 -0
  847. data/resources/concordance/malachi/3.json +1 -0
  848. data/resources/concordance/malachi/4.json +1 -0
  849. data/resources/concordance/mark/1.json +1 -0
  850. data/resources/concordance/mark/10.json +1 -0
  851. data/resources/concordance/mark/11.json +1 -0
  852. data/resources/concordance/mark/12.json +1 -0
  853. data/resources/concordance/mark/13.json +1 -0
  854. data/resources/concordance/mark/14.json +1 -0
  855. data/resources/concordance/mark/15.json +1 -0
  856. data/resources/concordance/mark/16.json +1 -0
  857. data/resources/concordance/mark/2.json +1 -0
  858. data/resources/concordance/mark/3.json +1 -0
  859. data/resources/concordance/mark/4.json +1 -0
  860. data/resources/concordance/mark/5.json +1 -0
  861. data/resources/concordance/mark/6.json +1 -0
  862. data/resources/concordance/mark/7.json +1 -0
  863. data/resources/concordance/mark/8.json +1 -0
  864. data/resources/concordance/mark/9.json +1 -0
  865. data/resources/concordance/matthew/1.json +1 -0
  866. data/resources/concordance/matthew/10.json +1 -0
  867. data/resources/concordance/matthew/11.json +1 -0
  868. data/resources/concordance/matthew/12.json +1 -0
  869. data/resources/concordance/matthew/13.json +1 -0
  870. data/resources/concordance/matthew/14.json +1 -0
  871. data/resources/concordance/matthew/15.json +1 -0
  872. data/resources/concordance/matthew/16.json +1 -0
  873. data/resources/concordance/matthew/17.json +1 -0
  874. data/resources/concordance/matthew/18.json +1 -0
  875. data/resources/concordance/matthew/19.json +1 -0
  876. data/resources/concordance/matthew/2.json +1 -0
  877. data/resources/concordance/matthew/20.json +1 -0
  878. data/resources/concordance/matthew/21.json +1 -0
  879. data/resources/concordance/matthew/22.json +1 -0
  880. data/resources/concordance/matthew/23.json +1 -0
  881. data/resources/concordance/matthew/24.json +1 -0
  882. data/resources/concordance/matthew/25.json +1 -0
  883. data/resources/concordance/matthew/26.json +1 -0
  884. data/resources/concordance/matthew/27.json +1 -0
  885. data/resources/concordance/matthew/28.json +1 -0
  886. data/resources/concordance/matthew/3.json +1 -0
  887. data/resources/concordance/matthew/4.json +1 -0
  888. data/resources/concordance/matthew/5.json +1 -0
  889. data/resources/concordance/matthew/6.json +1 -0
  890. data/resources/concordance/matthew/7.json +1 -0
  891. data/resources/concordance/matthew/8.json +1 -0
  892. data/resources/concordance/matthew/9.json +1 -0
  893. data/resources/concordance/micah/1.json +1 -0
  894. data/resources/concordance/micah/2.json +1 -0
  895. data/resources/concordance/micah/3.json +1 -0
  896. data/resources/concordance/micah/4.json +1 -0
  897. data/resources/concordance/micah/5.json +1 -0
  898. data/resources/concordance/micah/6.json +1 -0
  899. data/resources/concordance/micah/7.json +1 -0
  900. data/resources/concordance/nahum/1.json +1 -0
  901. data/resources/concordance/nahum/2.json +1 -0
  902. data/resources/concordance/nahum/3.json +1 -0
  903. data/resources/concordance/nehemiah/1.json +1 -0
  904. data/resources/concordance/nehemiah/10.json +1 -0
  905. data/resources/concordance/nehemiah/11.json +1 -0
  906. data/resources/concordance/nehemiah/12.json +1 -0
  907. data/resources/concordance/nehemiah/13.json +1 -0
  908. data/resources/concordance/nehemiah/2.json +1 -0
  909. data/resources/concordance/nehemiah/3.json +1 -0
  910. data/resources/concordance/nehemiah/4.json +1 -0
  911. data/resources/concordance/nehemiah/5.json +1 -0
  912. data/resources/concordance/nehemiah/6.json +1 -0
  913. data/resources/concordance/nehemiah/7.json +1 -0
  914. data/resources/concordance/nehemiah/8.json +1 -0
  915. data/resources/concordance/nehemiah/9.json +1 -0
  916. data/resources/concordance/numbers/1.json +1 -0
  917. data/resources/concordance/numbers/10.json +1 -0
  918. data/resources/concordance/numbers/11.json +1 -0
  919. data/resources/concordance/numbers/12.json +1 -0
  920. data/resources/concordance/numbers/13.json +1 -0
  921. data/resources/concordance/numbers/14.json +1 -0
  922. data/resources/concordance/numbers/15.json +1 -0
  923. data/resources/concordance/numbers/16.json +1 -0
  924. data/resources/concordance/numbers/17.json +1 -0
  925. data/resources/concordance/numbers/18.json +1 -0
  926. data/resources/concordance/numbers/19.json +1 -0
  927. data/resources/concordance/numbers/2.json +1 -0
  928. data/resources/concordance/numbers/20.json +1 -0
  929. data/resources/concordance/numbers/21.json +1 -0
  930. data/resources/concordance/numbers/22.json +1 -0
  931. data/resources/concordance/numbers/23.json +1 -0
  932. data/resources/concordance/numbers/24.json +1 -0
  933. data/resources/concordance/numbers/25.json +1 -0
  934. data/resources/concordance/numbers/26.json +1 -0
  935. data/resources/concordance/numbers/27.json +1 -0
  936. data/resources/concordance/numbers/28.json +1 -0
  937. data/resources/concordance/numbers/29.json +1 -0
  938. data/resources/concordance/numbers/3.json +1 -0
  939. data/resources/concordance/numbers/30.json +1 -0
  940. data/resources/concordance/numbers/31.json +1 -0
  941. data/resources/concordance/numbers/32.json +1 -0
  942. data/resources/concordance/numbers/33.json +1 -0
  943. data/resources/concordance/numbers/34.json +1 -0
  944. data/resources/concordance/numbers/35.json +1 -0
  945. data/resources/concordance/numbers/36.json +1 -0
  946. data/resources/concordance/numbers/4.json +1 -0
  947. data/resources/concordance/numbers/5.json +1 -0
  948. data/resources/concordance/numbers/6.json +1 -0
  949. data/resources/concordance/numbers/7.json +1 -0
  950. data/resources/concordance/numbers/8.json +1 -0
  951. data/resources/concordance/numbers/9.json +1 -0
  952. data/resources/concordance/obadiah/1.json +1 -0
  953. data/resources/concordance/philemon/1.json +1 -0
  954. data/resources/concordance/philippians/1.json +1 -0
  955. data/resources/concordance/philippians/2.json +1 -0
  956. data/resources/concordance/philippians/3.json +1 -0
  957. data/resources/concordance/philippians/4.json +1 -0
  958. data/resources/concordance/proverbs/1.json +1 -0
  959. data/resources/concordance/proverbs/10.json +1 -0
  960. data/resources/concordance/proverbs/11.json +1 -0
  961. data/resources/concordance/proverbs/12.json +1 -0
  962. data/resources/concordance/proverbs/13.json +1 -0
  963. data/resources/concordance/proverbs/14.json +1 -0
  964. data/resources/concordance/proverbs/15.json +1 -0
  965. data/resources/concordance/proverbs/16.json +1 -0
  966. data/resources/concordance/proverbs/17.json +1 -0
  967. data/resources/concordance/proverbs/18.json +1 -0
  968. data/resources/concordance/proverbs/19.json +1 -0
  969. data/resources/concordance/proverbs/2.json +1 -0
  970. data/resources/concordance/proverbs/20.json +1 -0
  971. data/resources/concordance/proverbs/21.json +1 -0
  972. data/resources/concordance/proverbs/22.json +1 -0
  973. data/resources/concordance/proverbs/23.json +1 -0
  974. data/resources/concordance/proverbs/24.json +1 -0
  975. data/resources/concordance/proverbs/25.json +1 -0
  976. data/resources/concordance/proverbs/26.json +1 -0
  977. data/resources/concordance/proverbs/27.json +1 -0
  978. data/resources/concordance/proverbs/28.json +1 -0
  979. data/resources/concordance/proverbs/29.json +1 -0
  980. data/resources/concordance/proverbs/3.json +1 -0
  981. data/resources/concordance/proverbs/30.json +1 -0
  982. data/resources/concordance/proverbs/31.json +1 -0
  983. data/resources/concordance/proverbs/4.json +1 -0
  984. data/resources/concordance/proverbs/5.json +1 -0
  985. data/resources/concordance/proverbs/6.json +1 -0
  986. data/resources/concordance/proverbs/7.json +1 -0
  987. data/resources/concordance/proverbs/8.json +1 -0
  988. data/resources/concordance/proverbs/9.json +1 -0
  989. data/resources/concordance/psalms/1.json +1 -0
  990. data/resources/concordance/psalms/10.json +1 -0
  991. data/resources/concordance/psalms/100.json +1 -0
  992. data/resources/concordance/psalms/101.json +1 -0
  993. data/resources/concordance/psalms/102.json +1 -0
  994. data/resources/concordance/psalms/103.json +1 -0
  995. data/resources/concordance/psalms/104.json +1 -0
  996. data/resources/concordance/psalms/105.json +1 -0
  997. data/resources/concordance/psalms/106.json +1 -0
  998. data/resources/concordance/psalms/107.json +1 -0
  999. data/resources/concordance/psalms/108.json +1 -0
  1000. data/resources/concordance/psalms/109.json +1 -0
  1001. data/resources/concordance/psalms/11.json +1 -0
  1002. data/resources/concordance/psalms/110.json +1 -0
  1003. data/resources/concordance/psalms/111.json +1 -0
  1004. data/resources/concordance/psalms/112.json +1 -0
  1005. data/resources/concordance/psalms/113.json +1 -0
  1006. data/resources/concordance/psalms/114.json +1 -0
  1007. data/resources/concordance/psalms/115.json +1 -0
  1008. data/resources/concordance/psalms/116.json +1 -0
  1009. data/resources/concordance/psalms/117.json +1 -0
  1010. data/resources/concordance/psalms/118.json +1 -0
  1011. data/resources/concordance/psalms/119.json +1 -0
  1012. data/resources/concordance/psalms/12.json +1 -0
  1013. data/resources/concordance/psalms/120.json +1 -0
  1014. data/resources/concordance/psalms/121.json +1 -0
  1015. data/resources/concordance/psalms/122.json +1 -0
  1016. data/resources/concordance/psalms/123.json +1 -0
  1017. data/resources/concordance/psalms/124.json +1 -0
  1018. data/resources/concordance/psalms/125.json +1 -0
  1019. data/resources/concordance/psalms/126.json +1 -0
  1020. data/resources/concordance/psalms/127.json +1 -0
  1021. data/resources/concordance/psalms/128.json +1 -0
  1022. data/resources/concordance/psalms/129.json +1 -0
  1023. data/resources/concordance/psalms/13.json +1 -0
  1024. data/resources/concordance/psalms/130.json +1 -0
  1025. data/resources/concordance/psalms/131.json +1 -0
  1026. data/resources/concordance/psalms/132.json +1 -0
  1027. data/resources/concordance/psalms/133.json +1 -0
  1028. data/resources/concordance/psalms/134.json +1 -0
  1029. data/resources/concordance/psalms/135.json +1 -0
  1030. data/resources/concordance/psalms/136.json +1 -0
  1031. data/resources/concordance/psalms/137.json +1 -0
  1032. data/resources/concordance/psalms/138.json +1 -0
  1033. data/resources/concordance/psalms/139.json +1 -0
  1034. data/resources/concordance/psalms/14.json +1 -0
  1035. data/resources/concordance/psalms/140.json +1 -0
  1036. data/resources/concordance/psalms/141.json +1 -0
  1037. data/resources/concordance/psalms/142.json +1 -0
  1038. data/resources/concordance/psalms/143.json +1 -0
  1039. data/resources/concordance/psalms/144.json +1 -0
  1040. data/resources/concordance/psalms/145.json +1 -0
  1041. data/resources/concordance/psalms/146.json +1 -0
  1042. data/resources/concordance/psalms/147.json +1 -0
  1043. data/resources/concordance/psalms/148.json +1 -0
  1044. data/resources/concordance/psalms/149.json +1 -0
  1045. data/resources/concordance/psalms/15.json +1 -0
  1046. data/resources/concordance/psalms/150.json +1 -0
  1047. data/resources/concordance/psalms/16.json +1 -0
  1048. data/resources/concordance/psalms/17.json +1 -0
  1049. data/resources/concordance/psalms/18.json +1 -0
  1050. data/resources/concordance/psalms/19.json +1 -0
  1051. data/resources/concordance/psalms/2.json +1 -0
  1052. data/resources/concordance/psalms/20.json +1 -0
  1053. data/resources/concordance/psalms/21.json +1 -0
  1054. data/resources/concordance/psalms/22.json +1 -0
  1055. data/resources/concordance/psalms/23.json +1 -0
  1056. data/resources/concordance/psalms/24.json +1 -0
  1057. data/resources/concordance/psalms/25.json +1 -0
  1058. data/resources/concordance/psalms/26.json +1 -0
  1059. data/resources/concordance/psalms/27.json +1 -0
  1060. data/resources/concordance/psalms/28.json +1 -0
  1061. data/resources/concordance/psalms/29.json +1 -0
  1062. data/resources/concordance/psalms/3.json +1 -0
  1063. data/resources/concordance/psalms/30.json +1 -0
  1064. data/resources/concordance/psalms/31.json +1 -0
  1065. data/resources/concordance/psalms/32.json +1 -0
  1066. data/resources/concordance/psalms/33.json +1 -0
  1067. data/resources/concordance/psalms/34.json +1 -0
  1068. data/resources/concordance/psalms/35.json +1 -0
  1069. data/resources/concordance/psalms/36.json +1 -0
  1070. data/resources/concordance/psalms/37.json +1 -0
  1071. data/resources/concordance/psalms/38.json +1 -0
  1072. data/resources/concordance/psalms/39.json +1 -0
  1073. data/resources/concordance/psalms/4.json +1 -0
  1074. data/resources/concordance/psalms/40.json +1 -0
  1075. data/resources/concordance/psalms/41.json +1 -0
  1076. data/resources/concordance/psalms/42.json +1 -0
  1077. data/resources/concordance/psalms/43.json +1 -0
  1078. data/resources/concordance/psalms/44.json +1 -0
  1079. data/resources/concordance/psalms/45.json +1 -0
  1080. data/resources/concordance/psalms/46.json +1 -0
  1081. data/resources/concordance/psalms/47.json +1 -0
  1082. data/resources/concordance/psalms/48.json +1 -0
  1083. data/resources/concordance/psalms/49.json +1 -0
  1084. data/resources/concordance/psalms/5.json +1 -0
  1085. data/resources/concordance/psalms/50.json +1 -0
  1086. data/resources/concordance/psalms/51.json +1 -0
  1087. data/resources/concordance/psalms/52.json +1 -0
  1088. data/resources/concordance/psalms/53.json +1 -0
  1089. data/resources/concordance/psalms/54.json +1 -0
  1090. data/resources/concordance/psalms/55.json +1 -0
  1091. data/resources/concordance/psalms/56.json +1 -0
  1092. data/resources/concordance/psalms/57.json +1 -0
  1093. data/resources/concordance/psalms/58.json +1 -0
  1094. data/resources/concordance/psalms/59.json +1 -0
  1095. data/resources/concordance/psalms/6.json +1 -0
  1096. data/resources/concordance/psalms/60.json +1 -0
  1097. data/resources/concordance/psalms/61.json +1 -0
  1098. data/resources/concordance/psalms/62.json +1 -0
  1099. data/resources/concordance/psalms/63.json +1 -0
  1100. data/resources/concordance/psalms/64.json +1 -0
  1101. data/resources/concordance/psalms/65.json +1 -0
  1102. data/resources/concordance/psalms/66.json +1 -0
  1103. data/resources/concordance/psalms/67.json +1 -0
  1104. data/resources/concordance/psalms/68.json +1 -0
  1105. data/resources/concordance/psalms/69.json +1 -0
  1106. data/resources/concordance/psalms/7.json +1 -0
  1107. data/resources/concordance/psalms/70.json +1 -0
  1108. data/resources/concordance/psalms/71.json +1 -0
  1109. data/resources/concordance/psalms/72.json +1 -0
  1110. data/resources/concordance/psalms/73.json +1 -0
  1111. data/resources/concordance/psalms/74.json +1 -0
  1112. data/resources/concordance/psalms/75.json +1 -0
  1113. data/resources/concordance/psalms/76.json +1 -0
  1114. data/resources/concordance/psalms/77.json +1 -0
  1115. data/resources/concordance/psalms/78.json +1 -0
  1116. data/resources/concordance/psalms/79.json +1 -0
  1117. data/resources/concordance/psalms/8.json +1 -0
  1118. data/resources/concordance/psalms/80.json +1 -0
  1119. data/resources/concordance/psalms/81.json +1 -0
  1120. data/resources/concordance/psalms/82.json +1 -0
  1121. data/resources/concordance/psalms/83.json +1 -0
  1122. data/resources/concordance/psalms/84.json +1 -0
  1123. data/resources/concordance/psalms/85.json +1 -0
  1124. data/resources/concordance/psalms/86.json +1 -0
  1125. data/resources/concordance/psalms/87.json +1 -0
  1126. data/resources/concordance/psalms/88.json +1 -0
  1127. data/resources/concordance/psalms/89.json +1 -0
  1128. data/resources/concordance/psalms/9.json +1 -0
  1129. data/resources/concordance/psalms/90.json +1 -0
  1130. data/resources/concordance/psalms/91.json +1 -0
  1131. data/resources/concordance/psalms/92.json +1 -0
  1132. data/resources/concordance/psalms/93.json +1 -0
  1133. data/resources/concordance/psalms/94.json +1 -0
  1134. data/resources/concordance/psalms/95.json +1 -0
  1135. data/resources/concordance/psalms/96.json +1 -0
  1136. data/resources/concordance/psalms/97.json +1 -0
  1137. data/resources/concordance/psalms/98.json +1 -0
  1138. data/resources/concordance/psalms/99.json +1 -0
  1139. data/resources/concordance/revelation/1.json +1 -0
  1140. data/resources/concordance/revelation/10.json +1 -0
  1141. data/resources/concordance/revelation/11.json +1 -0
  1142. data/resources/concordance/revelation/12.json +1 -0
  1143. data/resources/concordance/revelation/13.json +1 -0
  1144. data/resources/concordance/revelation/14.json +1 -0
  1145. data/resources/concordance/revelation/15.json +1 -0
  1146. data/resources/concordance/revelation/16.json +1 -0
  1147. data/resources/concordance/revelation/17.json +1 -0
  1148. data/resources/concordance/revelation/18.json +1 -0
  1149. data/resources/concordance/revelation/19.json +1 -0
  1150. data/resources/concordance/revelation/2.json +1 -0
  1151. data/resources/concordance/revelation/20.json +1 -0
  1152. data/resources/concordance/revelation/21.json +1 -0
  1153. data/resources/concordance/revelation/22.json +1 -0
  1154. data/resources/concordance/revelation/3.json +1 -0
  1155. data/resources/concordance/revelation/4.json +1 -0
  1156. data/resources/concordance/revelation/5.json +1 -0
  1157. data/resources/concordance/revelation/6.json +1 -0
  1158. data/resources/concordance/revelation/7.json +1 -0
  1159. data/resources/concordance/revelation/8.json +1 -0
  1160. data/resources/concordance/revelation/9.json +1 -0
  1161. data/resources/concordance/romans/1.json +1 -0
  1162. data/resources/concordance/romans/10.json +1 -0
  1163. data/resources/concordance/romans/11.json +1 -0
  1164. data/resources/concordance/romans/12.json +1 -0
  1165. data/resources/concordance/romans/13.json +1 -0
  1166. data/resources/concordance/romans/14.json +1 -0
  1167. data/resources/concordance/romans/15.json +1 -0
  1168. data/resources/concordance/romans/16.json +1 -0
  1169. data/resources/concordance/romans/2.json +1 -0
  1170. data/resources/concordance/romans/3.json +1 -0
  1171. data/resources/concordance/romans/4.json +1 -0
  1172. data/resources/concordance/romans/5.json +1 -0
  1173. data/resources/concordance/romans/6.json +1 -0
  1174. data/resources/concordance/romans/7.json +1 -0
  1175. data/resources/concordance/romans/8.json +1 -0
  1176. data/resources/concordance/romans/9.json +1 -0
  1177. data/resources/concordance/ruth/1.json +1 -0
  1178. data/resources/concordance/ruth/2.json +1 -0
  1179. data/resources/concordance/ruth/3.json +1 -0
  1180. data/resources/concordance/ruth/4.json +1 -0
  1181. data/resources/concordance/song_of_solomon/1.json +1 -0
  1182. data/resources/concordance/song_of_solomon/2.json +1 -0
  1183. data/resources/concordance/song_of_solomon/3.json +1 -0
  1184. data/resources/concordance/song_of_solomon/4.json +1 -0
  1185. data/resources/concordance/song_of_solomon/5.json +1 -0
  1186. data/resources/concordance/song_of_solomon/6.json +1 -0
  1187. data/resources/concordance/song_of_solomon/7.json +1 -0
  1188. data/resources/concordance/song_of_solomon/8.json +1 -0
  1189. data/resources/concordance/titus/1.json +1 -0
  1190. data/resources/concordance/titus/2.json +1 -0
  1191. data/resources/concordance/titus/3.json +1 -0
  1192. data/resources/concordance/zechariah/1.json +1 -0
  1193. data/resources/concordance/zechariah/10.json +1 -0
  1194. data/resources/concordance/zechariah/11.json +1 -0
  1195. data/resources/concordance/zechariah/12.json +1 -0
  1196. data/resources/concordance/zechariah/13.json +1 -0
  1197. data/resources/concordance/zechariah/14.json +1 -0
  1198. data/resources/concordance/zechariah/2.json +1 -0
  1199. data/resources/concordance/zechariah/3.json +1 -0
  1200. data/resources/concordance/zechariah/4.json +1 -0
  1201. data/resources/concordance/zechariah/5.json +1 -0
  1202. data/resources/concordance/zechariah/6.json +1 -0
  1203. data/resources/concordance/zechariah/7.json +1 -0
  1204. data/resources/concordance/zechariah/8.json +1 -0
  1205. data/resources/concordance/zechariah/9.json +1 -0
  1206. data/resources/concordance/zephaniah/1.json +1 -0
  1207. data/resources/concordance/zephaniah/2.json +1 -0
  1208. data/resources/concordance/zephaniah/3.json +1 -0
  1209. data/resources/lexicon/greek/0.json +1 -0
  1210. data/resources/lexicon/greek/1.json +1 -0
  1211. data/resources/lexicon/greek/10.json +1 -0
  1212. data/resources/lexicon/greek/11.json +1 -0
  1213. data/resources/lexicon/greek/12.json +1 -0
  1214. data/resources/lexicon/greek/13.json +1 -0
  1215. data/resources/lexicon/greek/14.json +1 -0
  1216. data/resources/lexicon/greek/15.json +1 -0
  1217. data/resources/lexicon/greek/16.json +1 -0
  1218. data/resources/lexicon/greek/17.json +1 -0
  1219. data/resources/lexicon/greek/18.json +1 -0
  1220. data/resources/lexicon/greek/19.json +1 -0
  1221. data/resources/lexicon/greek/2.json +1 -0
  1222. data/resources/lexicon/greek/20.json +1 -0
  1223. data/resources/lexicon/greek/21.json +1 -0
  1224. data/resources/lexicon/greek/22.json +1 -0
  1225. data/resources/lexicon/greek/23.json +1 -0
  1226. data/resources/lexicon/greek/24.json +1 -0
  1227. data/resources/lexicon/greek/25.json +1 -0
  1228. data/resources/lexicon/greek/26.json +1 -0
  1229. data/resources/lexicon/greek/27.json +1 -0
  1230. data/resources/lexicon/greek/28.json +1 -0
  1231. data/resources/lexicon/greek/29.json +1 -0
  1232. data/resources/lexicon/greek/3.json +1 -0
  1233. data/resources/lexicon/greek/30.json +1 -0
  1234. data/resources/lexicon/greek/31.json +1 -0
  1235. data/resources/lexicon/greek/32.json +1 -0
  1236. data/resources/lexicon/greek/33.json +1 -0
  1237. data/resources/lexicon/greek/34.json +1 -0
  1238. data/resources/lexicon/greek/35.json +1 -0
  1239. data/resources/lexicon/greek/36.json +1 -0
  1240. data/resources/lexicon/greek/37.json +1 -0
  1241. data/resources/lexicon/greek/38.json +1 -0
  1242. data/resources/lexicon/greek/39.json +1 -0
  1243. data/resources/lexicon/greek/4.json +1 -0
  1244. data/resources/lexicon/greek/40.json +1 -0
  1245. data/resources/lexicon/greek/41.json +1 -0
  1246. data/resources/lexicon/greek/42.json +1 -0
  1247. data/resources/lexicon/greek/43.json +1 -0
  1248. data/resources/lexicon/greek/44.json +1 -0
  1249. data/resources/lexicon/greek/45.json +1 -0
  1250. data/resources/lexicon/greek/46.json +1 -0
  1251. data/resources/lexicon/greek/47.json +1 -0
  1252. data/resources/lexicon/greek/48.json +1 -0
  1253. data/resources/lexicon/greek/49.json +1 -0
  1254. data/resources/lexicon/greek/5.json +1 -0
  1255. data/resources/lexicon/greek/50.json +1 -0
  1256. data/resources/lexicon/greek/51.json +1 -0
  1257. data/resources/lexicon/greek/52.json +1 -0
  1258. data/resources/lexicon/greek/53.json +1 -0
  1259. data/resources/lexicon/greek/54.json +1 -0
  1260. data/resources/lexicon/greek/55.json +1 -0
  1261. data/resources/lexicon/greek/56.json +1 -0
  1262. data/resources/lexicon/greek/6.json +1 -0
  1263. data/resources/lexicon/greek/7.json +1 -0
  1264. data/resources/lexicon/greek/8.json +1 -0
  1265. data/resources/lexicon/greek/9.json +1 -0
  1266. data/resources/lexicon/hebrew/0.json +1 -0
  1267. data/resources/lexicon/hebrew/1.json +1 -0
  1268. data/resources/lexicon/hebrew/10.json +1 -0
  1269. data/resources/lexicon/hebrew/11.json +1 -0
  1270. data/resources/lexicon/hebrew/12.json +1 -0
  1271. data/resources/lexicon/hebrew/13.json +1 -0
  1272. data/resources/lexicon/hebrew/14.json +1 -0
  1273. data/resources/lexicon/hebrew/15.json +1 -0
  1274. data/resources/lexicon/hebrew/16.json +1 -0
  1275. data/resources/lexicon/hebrew/17.json +1 -0
  1276. data/resources/lexicon/hebrew/18.json +1 -0
  1277. data/resources/lexicon/hebrew/19.json +1 -0
  1278. data/resources/lexicon/hebrew/2.json +1 -0
  1279. data/resources/lexicon/hebrew/20.json +1 -0
  1280. data/resources/lexicon/hebrew/21.json +1 -0
  1281. data/resources/lexicon/hebrew/22.json +1 -0
  1282. data/resources/lexicon/hebrew/23.json +1 -0
  1283. data/resources/lexicon/hebrew/24.json +1 -0
  1284. data/resources/lexicon/hebrew/25.json +1 -0
  1285. data/resources/lexicon/hebrew/26.json +1 -0
  1286. data/resources/lexicon/hebrew/27.json +1 -0
  1287. data/resources/lexicon/hebrew/28.json +1 -0
  1288. data/resources/lexicon/hebrew/29.json +1 -0
  1289. data/resources/lexicon/hebrew/3.json +1 -0
  1290. data/resources/lexicon/hebrew/30.json +1 -0
  1291. data/resources/lexicon/hebrew/31.json +1 -0
  1292. data/resources/lexicon/hebrew/32.json +1 -0
  1293. data/resources/lexicon/hebrew/33.json +1 -0
  1294. data/resources/lexicon/hebrew/34.json +1 -0
  1295. data/resources/lexicon/hebrew/35.json +1 -0
  1296. data/resources/lexicon/hebrew/36.json +1 -0
  1297. data/resources/lexicon/hebrew/37.json +1 -0
  1298. data/resources/lexicon/hebrew/38.json +1 -0
  1299. data/resources/lexicon/hebrew/39.json +1 -0
  1300. data/resources/lexicon/hebrew/4.json +1 -0
  1301. data/resources/lexicon/hebrew/40.json +1 -0
  1302. data/resources/lexicon/hebrew/41.json +1 -0
  1303. data/resources/lexicon/hebrew/42.json +1 -0
  1304. data/resources/lexicon/hebrew/43.json +1 -0
  1305. data/resources/lexicon/hebrew/44.json +1 -0
  1306. data/resources/lexicon/hebrew/45.json +1 -0
  1307. data/resources/lexicon/hebrew/46.json +1 -0
  1308. data/resources/lexicon/hebrew/47.json +1 -0
  1309. data/resources/lexicon/hebrew/48.json +1 -0
  1310. data/resources/lexicon/hebrew/49.json +1 -0
  1311. data/resources/lexicon/hebrew/5.json +1 -0
  1312. data/resources/lexicon/hebrew/50.json +1 -0
  1313. data/resources/lexicon/hebrew/51.json +1 -0
  1314. data/resources/lexicon/hebrew/52.json +1 -0
  1315. data/resources/lexicon/hebrew/53.json +1 -0
  1316. data/resources/lexicon/hebrew/54.json +1 -0
  1317. data/resources/lexicon/hebrew/55.json +1 -0
  1318. data/resources/lexicon/hebrew/56.json +1 -0
  1319. data/resources/lexicon/hebrew/57.json +1 -0
  1320. data/resources/lexicon/hebrew/58.json +1 -0
  1321. data/resources/lexicon/hebrew/59.json +1 -0
  1322. data/resources/lexicon/hebrew/6.json +1 -0
  1323. data/resources/lexicon/hebrew/60.json +1 -0
  1324. data/resources/lexicon/hebrew/61.json +1 -0
  1325. data/resources/lexicon/hebrew/62.json +1 -0
  1326. data/resources/lexicon/hebrew/63.json +1 -0
  1327. data/resources/lexicon/hebrew/64.json +1 -0
  1328. data/resources/lexicon/hebrew/65.json +1 -0
  1329. data/resources/lexicon/hebrew/66.json +1 -0
  1330. data/resources/lexicon/hebrew/67.json +1 -0
  1331. data/resources/lexicon/hebrew/68.json +1 -0
  1332. data/resources/lexicon/hebrew/69.json +1 -0
  1333. data/resources/lexicon/hebrew/7.json +1 -0
  1334. data/resources/lexicon/hebrew/70.json +1 -0
  1335. data/resources/lexicon/hebrew/71.json +1 -0
  1336. data/resources/lexicon/hebrew/72.json +1 -0
  1337. data/resources/lexicon/hebrew/73.json +1 -0
  1338. data/resources/lexicon/hebrew/74.json +1 -0
  1339. data/resources/lexicon/hebrew/75.json +1 -0
  1340. data/resources/lexicon/hebrew/76.json +1 -0
  1341. data/resources/lexicon/hebrew/77.json +1 -0
  1342. data/resources/lexicon/hebrew/78.json +1 -0
  1343. data/resources/lexicon/hebrew/79.json +1 -0
  1344. data/resources/lexicon/hebrew/8.json +1 -0
  1345. data/resources/lexicon/hebrew/80.json +1 -0
  1346. data/resources/lexicon/hebrew/81.json +1 -0
  1347. data/resources/lexicon/hebrew/82.json +1 -0
  1348. data/resources/lexicon/hebrew/83.json +1 -0
  1349. data/resources/lexicon/hebrew/84.json +1 -0
  1350. data/resources/lexicon/hebrew/85.json +1 -0
  1351. data/resources/lexicon/hebrew/86.json +1 -0
  1352. data/resources/lexicon/hebrew/9.json +1 -0
  1353. metadata +1450 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: d7941f8a82f4f5a278f04de2bc5d6d3f0ca20648
4
+ data.tar.gz: f390d7dd72906a498697e2c95a4cf10e0e5066e2
5
+ SHA512:
6
+ metadata.gz: c8776a05144695defad440b71f64d82dbddbb9a3a03a5e298a7b227a6df318691a10479a8a322f2ecefe5999ac4636f2cee01283ba5e50e5dade7136e233b768
7
+ data.tar.gz: 698f74412e0083b4324aa20f61fb7696086b0fb4879c4b46b7aa46b40d8abd0e0cdb62cc93ac94bcedc5d72a6761983593793020eea7a8c6a2dd2c8b34273d72
data/Gemfile ADDED
@@ -0,0 +1,8 @@
1
+ source "http://rubygems.org"
2
+
3
+ gemspec
4
+
5
+ group :development do
6
+ gem "pry"
7
+ gem "pry-nav"
8
+ end
data/History.txt ADDED
@@ -0,0 +1,3 @@
1
+ == 1.0.0
2
+
3
+ * Birthday!
data/LICENSE ADDED
@@ -0,0 +1,177 @@
1
+
2
+ Apache License
3
+ Version 2.0, January 2004
4
+ http://www.apache.org/licenses/
5
+
6
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
7
+
8
+ 1. Definitions.
9
+
10
+ "License" shall mean the terms and conditions for use, reproduction,
11
+ and distribution as defined by Sections 1 through 9 of this document.
12
+
13
+ "Licensor" shall mean the copyright owner or entity authorized by
14
+ the copyright owner that is granting the License.
15
+
16
+ "Legal Entity" shall mean the union of the acting entity and all
17
+ other entities that control, are controlled by, or are under common
18
+ control with that entity. For the purposes of this definition,
19
+ "control" means (i) the power, direct or indirect, to cause the
20
+ direction or management of such entity, whether by contract or
21
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
22
+ outstanding shares, or (iii) beneficial ownership of such entity.
23
+
24
+ "You" (or "Your") shall mean an individual or Legal Entity
25
+ exercising permissions granted by this License.
26
+
27
+ "Source" form shall mean the preferred form for making modifications,
28
+ including but not limited to software source code, documentation
29
+ source, and configuration files.
30
+
31
+ "Object" form shall mean any form resulting from mechanical
32
+ transformation or translation of a Source form, including but
33
+ not limited to compiled object code, generated documentation,
34
+ and conversions to other media types.
35
+
36
+ "Work" shall mean the work of authorship, whether in Source or
37
+ Object form, made available under the License, as indicated by a
38
+ copyright notice that is included in or attached to the work
39
+ (an example is provided in the Appendix below).
40
+
41
+ "Derivative Works" shall mean any work, whether in Source or Object
42
+ form, that is based on (or derived from) the Work and for which the
43
+ editorial revisions, annotations, elaborations, or other modifications
44
+ represent, as a whole, an original work of authorship. For the purposes
45
+ of this License, Derivative Works shall not include works that remain
46
+ separable from, or merely link (or bind by name) to the interfaces of,
47
+ the Work and Derivative Works thereof.
48
+
49
+ "Contribution" shall mean any work of authorship, including
50
+ the original version of the Work and any modifications or additions
51
+ to that Work or Derivative Works thereof, that is intentionally
52
+ submitted to Licensor for inclusion in the Work by the copyright owner
53
+ or by an individual or Legal Entity authorized to submit on behalf of
54
+ the copyright owner. For the purposes of this definition, "submitted"
55
+ means any form of electronic, verbal, or written communication sent
56
+ to the Licensor or its representatives, including but not limited to
57
+ communication on electronic mailing lists, source code control systems,
58
+ and issue tracking systems that are managed by, or on behalf of, the
59
+ Licensor for the purpose of discussing and improving the Work, but
60
+ excluding communication that is conspicuously marked or otherwise
61
+ designated in writing by the copyright owner as "Not a Contribution."
62
+
63
+ "Contributor" shall mean Licensor and any individual or Legal Entity
64
+ on behalf of whom a Contribution has been received by Licensor and
65
+ subsequently incorporated within the Work.
66
+
67
+ 2. Grant of Copyright License. Subject to the terms and conditions of
68
+ this License, each Contributor hereby grants to You a perpetual,
69
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70
+ copyright license to reproduce, prepare Derivative Works of,
71
+ publicly display, publicly perform, sublicense, and distribute the
72
+ Work and such Derivative Works in Source or Object form.
73
+
74
+ 3. Grant of Patent License. Subject to the terms and conditions of
75
+ this License, each Contributor hereby grants to You a perpetual,
76
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
77
+ (except as stated in this section) patent license to make, have made,
78
+ use, offer to sell, sell, import, and otherwise transfer the Work,
79
+ where such license applies only to those patent claims licensable
80
+ by such Contributor that are necessarily infringed by their
81
+ Contribution(s) alone or by combination of their Contribution(s)
82
+ with the Work to which such Contribution(s) was submitted. If You
83
+ institute patent litigation against any entity (including a
84
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
85
+ or a Contribution incorporated within the Work constitutes direct
86
+ or contributory patent infringement, then any patent licenses
87
+ granted to You under this License for that Work shall terminate
88
+ as of the date such litigation is filed.
89
+
90
+ 4. Redistribution. You may reproduce and distribute copies of the
91
+ Work or Derivative Works thereof in any medium, with or without
92
+ modifications, and in Source or Object form, provided that You
93
+ meet the following conditions:
94
+
95
+ (a) You must give any other recipients of the Work or
96
+ Derivative Works a copy of this License; and
97
+
98
+ (b) You must cause any modified files to carry prominent notices
99
+ stating that You changed the files; and
100
+
101
+ (c) You must retain, in the Source form of any Derivative Works
102
+ that You distribute, all copyright, patent, trademark, and
103
+ attribution notices from the Source form of the Work,
104
+ excluding those notices that do not pertain to any part of
105
+ the Derivative Works; and
106
+
107
+ (d) If the Work includes a "NOTICE" text file as part of its
108
+ distribution, then any Derivative Works that You distribute must
109
+ include a readable copy of the attribution notices contained
110
+ within such NOTICE file, excluding those notices that do not
111
+ pertain to any part of the Derivative Works, in at least one
112
+ of the following places: within a NOTICE text file distributed
113
+ as part of the Derivative Works; within the Source form or
114
+ documentation, if provided along with the Derivative Works; or,
115
+ within a display generated by the Derivative Works, if and
116
+ wherever such third-party notices normally appear. The contents
117
+ of the NOTICE file are for informational purposes only and
118
+ do not modify the License. You may add Your own attribution
119
+ notices within Derivative Works that You distribute, alongside
120
+ or as an addendum to the NOTICE text from the Work, provided
121
+ that such additional attribution notices cannot be construed
122
+ as modifying the License.
123
+
124
+ You may add Your own copyright statement to Your modifications and
125
+ may provide additional or different license terms and conditions
126
+ for use, reproduction, or distribution of Your modifications, or
127
+ for any such Derivative Works as a whole, provided Your use,
128
+ reproduction, and distribution of the Work otherwise complies with
129
+ the conditions stated in this License.
130
+
131
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
132
+ any Contribution intentionally submitted for inclusion in the Work
133
+ by You to the Licensor shall be under the terms and conditions of
134
+ this License, without any additional terms or conditions.
135
+ Notwithstanding the above, nothing herein shall supersede or modify
136
+ the terms of any separate license agreement you may have executed
137
+ with Licensor regarding such Contributions.
138
+
139
+ 6. Trademarks. This License does not grant permission to use the trade
140
+ names, trademarks, service marks, or product names of the Licensor,
141
+ except as required for reasonable and customary use in describing the
142
+ origin of the Work and reproducing the content of the NOTICE file.
143
+
144
+ 7. Disclaimer of Warranty. Unless required by applicable law or
145
+ agreed to in writing, Licensor provides the Work (and each
146
+ Contributor provides its Contributions) on an "AS IS" BASIS,
147
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
148
+ implied, including, without limitation, any warranties or conditions
149
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
150
+ PARTICULAR PURPOSE. You are solely responsible for determining the
151
+ appropriateness of using or redistributing the Work and assume any
152
+ risks associated with Your exercise of permissions under this License.
153
+
154
+ 8. Limitation of Liability. In no event and under no legal theory,
155
+ whether in tort (including negligence), contract, or otherwise,
156
+ unless required by applicable law (such as deliberate and grossly
157
+ negligent acts) or agreed to in writing, shall any Contributor be
158
+ liable to You for damages, including any direct, indirect, special,
159
+ incidental, or consequential damages of any character arising as a
160
+ result of this License or out of the use or inability to use the
161
+ Work (including but not limited to damages for loss of goodwill,
162
+ work stoppage, computer failure or malfunction, or any and all
163
+ other commercial damages or losses), even if such Contributor
164
+ has been advised of the possibility of such damages.
165
+
166
+ 9. Accepting Warranty or Additional Liability. While redistributing
167
+ the Work or Derivative Works thereof, You may choose to offer,
168
+ and charge a fee for, acceptance of support, warranty, indemnity,
169
+ or other liability obligations and/or rights consistent with this
170
+ License. However, in accepting such obligations, You may act only
171
+ on Your own behalf and on Your sole responsibility, not on behalf
172
+ of any other Contributor, and only if You agree to indemnify,
173
+ defend, and hold each Contributor harmless for any liability
174
+ incurred by, or claims asserted against, such Contributor by reason
175
+ of your accepting any such warranty or additional liability.
176
+
177
+ END OF TERMS AND CONDITIONS
data/README.md ADDED
File without changes
data/Rakefile ADDED
@@ -0,0 +1,129 @@
1
+ # encoding: UTF-8
2
+
3
+ # Copyright 2012 Twitter, Inc
4
+ # http://www.apache.org/licenses/LICENSE-2.0
5
+
6
+ require 'rubygems' unless ENV['NO_RUBYGEMS']
7
+
8
+ require 'bundler'
9
+ require 'digest'
10
+ require 'fileutils'
11
+
12
+ require 'rubygems/package_task'
13
+
14
+ require './lib/cskit-strongs'
15
+ require 'cskit'
16
+
17
+ Bundler::GemHelper.install_tasks
18
+
19
+ class LexiconUpdater
20
+ BLOCK_SIZE = 100
21
+
22
+ attr_reader :lexicon_lang, :splitter_class
23
+
24
+ def initialize(lexicon_lang, splitter_class)
25
+ @lexicon_lang = lexicon_lang
26
+ @splitter_class = splitter_class
27
+ end
28
+
29
+ def update
30
+ splitter = splitter_class.new(input_file)
31
+ FileUtils.mkdir_p(output_dir)
32
+
33
+ puts "Processing #{lexicon_lang} lexicon..."
34
+
35
+ splitter.each_slice(BLOCK_SIZE).with_index do |entries, index|
36
+ File.open(File.join(output_dir, "#{index}.json"), "w+") do |f|
37
+ f.write(
38
+ entries.inject({}) do |ret, entry|
39
+ ret[entry.first] = entry.last
40
+ ret
41
+ end.to_json
42
+ )
43
+ end
44
+ end
45
+
46
+ puts "Done."
47
+ end
48
+
49
+ private
50
+
51
+ def input_file
52
+ @input_file ||= File.join(CSKitStrongs.vendor_dir, "#{lexicon_lang}_lexicon.xml")
53
+ end
54
+
55
+ def output_dir
56
+ @output_dir ||= File.join(CSKitStrongs.resource_dir, "lexicon/#{lexicon_lang}")
57
+ end
58
+ end
59
+
60
+ class ConcordanceUpdater
61
+ def update
62
+ puts "Processing concordance..."
63
+ file_contents = split
64
+
65
+ puts "\nWriting to disk..."
66
+ write_to_disk(file_contents)
67
+
68
+ puts "Done."
69
+ end
70
+
71
+ private
72
+
73
+ def write_to_disk(file_contents)
74
+ file_contents.each do |path, contents|
75
+ FileUtils.mkdir_p(File.dirname(path))
76
+ File.open(path, "w+") { |f| f.write(contents.to_json) }
77
+ end
78
+ end
79
+
80
+ def split
81
+ total_lines = `wc -l #{input_file}`.strip.to_i
82
+ splitter = CSKitStrongs::Splitters::ConcordanceSplitter.new(input_file)
83
+ file_contents = {}
84
+
85
+ splitter.each_with_index do |(language, number, text, citation), index|
86
+ book = citation.book.strip.downcase.gsub(" ", "_")
87
+ chapter = citation.chapter_list.first.chapter_number
88
+ verse = citation.chapter_list.first.verse_list.first.start.to_i
89
+ path = File.join(output_dir, book, "#{chapter}.json")
90
+
91
+ ((file_contents[path] ||= {})[verse] ||= []) << {
92
+ :text => text,
93
+ :number => number
94
+ }
95
+
96
+ if index % 1000 == 0
97
+ $stdout.write("\rProcessing #{index} of #{total_lines} (#{((index.to_f / total_lines.to_f) * 100).round(2)})")
98
+ end
99
+ end
100
+
101
+ file_contents
102
+ end
103
+
104
+ def input_file
105
+ @input_file ||= File.join(CSKitStrongs.vendor_dir, "concordance.txt")
106
+ end
107
+
108
+ def output_dir
109
+ @output_dir ||= File.join(CSKitStrongs.resource_dir, "concordance")
110
+ end
111
+ end
112
+
113
+ namespace :update do
114
+ task :default => [:concordance, :lexicon]
115
+
116
+ task :concordance do
117
+ ConcordanceUpdater.new.update
118
+ end
119
+
120
+ task :greek_lexicon do
121
+ splitter_class = CSKitStrongs::Splitters::GreekLexiconSplitter
122
+ LexiconUpdater.new("greek", splitter_class).update
123
+ end
124
+
125
+ task :hebrew_lexicon do
126
+ splitter_class = CSKitStrongs::Splitters::HebrewLexiconSplitter
127
+ LexiconUpdater.new("hebrew", splitter_class).update
128
+ end
129
+ end
@@ -0,0 +1,26 @@
1
+ # encoding: UTF-8
2
+
3
+ $:.unshift File.join(File.dirname(__FILE__), 'lib')
4
+ require 'cskit-strongs/version'
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "cskit-strongs"
8
+ s.version = ::CSKitStrongs::VERSION
9
+ s.authors = ["Cameron Dutro"]
10
+ s.email = ["camertron@gmail.com"]
11
+ s.homepage = "http://github.com/camertron"
12
+
13
+ s.description = s.summary = "Strong's Concordance resources for CSKit."
14
+
15
+ s.platform = Gem::Platform::RUBY
16
+ s.has_rdoc = true
17
+
18
+ s.add_dependency 'json'
19
+ s.add_dependency 'cskit', '~> 1.0.0'
20
+
21
+ s.add_development_dependency 'rake'
22
+ s.add_development_dependency 'nokogiri'
23
+
24
+ s.require_path = 'lib'
25
+ s.files = Dir["{lib,spec,resources}/**/*", "Gemfile", "History.txt", "LICENSE", "README.md", "Rakefile", "cskit-strongs.gemspec"]
26
+ end
@@ -0,0 +1,15 @@
1
+ # encoding: UTF-8
2
+
3
+ require 'cskit'
4
+ require 'cskit/bible/kjv'
5
+ require 'cskit-strongs'
6
+
7
+ CSKit.register_annotator({
8
+ :type => :concordance,
9
+ :id => :strongs,
10
+ :name => "Strong's Exhaustive Concordance of the Bible",
11
+ :author => "James Strong",
12
+ :language => "English",
13
+ :volumes => [CSKitBibleKJV::Volume],
14
+ :annotator => CSKitStrongs::Annotator
15
+ })
@@ -0,0 +1,102 @@
1
+ # encoding: UTF-8
2
+
3
+ require 'json'
4
+
5
+ module CSKitStrongs
6
+ class Annotator < CSKit::Annotator
7
+
8
+ def annotate(reading, volume)
9
+ annotated_reading = reading.to_annotated_reading
10
+ resource = concordance_resource_for(reading, volume)
11
+
12
+ reading.texts.each_with_index do |text, index|
13
+ verse_num = reading.verse.start + index
14
+ corresponding_verse_texts = resource[verse_num.to_s]
15
+
16
+ each_annotation_for(text, corresponding_verse_texts) do |annotation|
17
+ annotated_reading.add_annotation(index, annotation)
18
+ end
19
+ end
20
+
21
+ annotated_reading
22
+ end
23
+
24
+ private
25
+
26
+ BATCH_SIZE = 100
27
+
28
+ def each_annotation_for(text, corresponding_verse_texts, &block)
29
+ enum = Enumerator.new do |yielder|
30
+ corresponding_verse_texts.each do |verse_text|
31
+ parts = split_on_last_word(verse_text["text"])
32
+ regex = /#{Regexp.escape(parts.first)}(#{Regexp.escape(parts.last)})/
33
+
34
+ if matches = text.match(regex)
35
+ start, finish = matches.offset(1)
36
+ strongs_number = StrongsNumber.from_string(verse_text["number"])
37
+ lexicon_entry = lexicon_entry_for(strongs_number)
38
+
39
+ if lexicon_entry
40
+ yielder.yield(CSKit::Annotation.new(start, finish - 1, lexicon_entry))
41
+ end
42
+ end
43
+ end
44
+ end
45
+
46
+ block_given? ? enum.each(&block) : enum
47
+ end
48
+
49
+ def lexicon_entry_for(strongs_number)
50
+ batch_number = batch_number_for(strongs_number)
51
+ path = lexicon_path_for(batch_number, strongs_number.language)
52
+ lexicon = (lexicon_cache[batch_number] ||= JSON.parse(File.read(path)))
53
+ LexiconEntry.from_hash(lexicon[strongs_number.to_s])
54
+ rescue Errno::ENOENT # couldn't load file
55
+ nil
56
+ end
57
+
58
+ def split_on_last_word(text)
59
+ if idx = text.rindex(" ")
60
+ [text[0..idx], text[(idx + 1)..-1]]
61
+ else
62
+ ["", text]
63
+ end
64
+ end
65
+
66
+ def concordance_resource_for(reading, volume)
67
+ path = concordance_path_for(reading, volume)
68
+ concordance_cache[path] ||= JSON.parse(File.read(path))
69
+ end
70
+
71
+ def concordance_path_for(reading, volume)
72
+ book = volume.unabbreviate_book_name(reading.citation.book)
73
+ chapter = reading.chapter.chapter_number
74
+ File.join(concordance_base_path, book, "#{chapter}.json")
75
+ end
76
+
77
+ def lexicon_path_for(batch_number, language)
78
+ File.join(lexicon_base_path, language, "#{batch_number}.json")
79
+ end
80
+
81
+ def batch_number_for(strongs_number)
82
+ (strongs_number.number - 1) / BATCH_SIZE
83
+ end
84
+
85
+ def concordance_base_path
86
+ @concordance_base_path ||= File.join(CSKitStrongs.resource_dir, "concordance")
87
+ end
88
+
89
+ def lexicon_base_path
90
+ @lexicon_base_path ||= File.join(CSKitStrongs.resource_dir, "lexicon")
91
+ end
92
+
93
+ def concordance_cache
94
+ @concordance_cache ||= {}
95
+ end
96
+
97
+ def lexicon_cache
98
+ @lexicon_cache ||= {}
99
+ end
100
+
101
+ end
102
+ end
@@ -0,0 +1,20 @@
1
+ # encoding: UTF-8
2
+
3
+ module CSKitStrongs
4
+ module Formatters
5
+ class StrongsHtmlFormatter < StrongsPlainTextFormatter
6
+
7
+ def format_annotation(annotation, text)
8
+ "<span class='cskit-strongs-word' %{data_attrs} data-definition='%{definition}'>%{text}</span>" % {
9
+ :text => text,
10
+ :definition => "[#{annotation.data.unicode}] #{annotation.data.definition}",
11
+ :data_attrs => [:pronunciation, :translit, :unicode].map do |data_attr|
12
+ value = annotation.data.send(data_attr)
13
+ "data-#{data_attr}='#{value.gsub("'", "&#39;")}'"
14
+ end.join(" ")
15
+ }
16
+ end
17
+
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,22 @@
1
+ # encoding: UTF-8
2
+
3
+ module CSKitStrongs
4
+ module Formatters
5
+ class StrongsPlainTextFormatter < CSKit::Formatters::Formatter
6
+
7
+ RLE = "\u202b" # right-to-left embedding
8
+ PDF = "\u202c" # pop directional formatting
9
+
10
+ def format_annotation(annotation, text)
11
+ unicode = if StrongsNumber.from_string(annotation.data.strongs_number).hebrew?
12
+ "#{RLE}#{annotation.data.unicode}#{PDF}"
13
+ else
14
+ annotation.data.unicode
15
+ end
16
+
17
+ "#{text} [#{unicode}]"
18
+ end
19
+
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,10 @@
1
+ # encoding: UTF-8
2
+
3
+ module CSKitStrongs
4
+ module Formatters
5
+
6
+ autoload :StrongsHtmlFormatter, "cskit-strongs/formatters/strongs_html_formatter"
7
+ autoload :StrongsPlainTextFormatter, "cskit-strongs/formatters/strongs_plain_text_formatter"
8
+
9
+ end
10
+ end
@@ -0,0 +1,17 @@
1
+ # encoding: UTF-8
2
+
3
+ module CSKitStrongs
4
+
5
+ LEXICON_ATTRS = [:pronunciation, :unicode, :translit, :definition, :strongs_number]
6
+
7
+ LexiconEntry = Struct.new(*LEXICON_ATTRS) do
8
+ def self.from_hash(hash = {})
9
+ new(
10
+ *(LEXICON_ATTRS.map do |attr|
11
+ hash[attr.to_sym] || hash[attr.to_s]
12
+ end)
13
+ )
14
+ end
15
+ end
16
+
17
+ end
@@ -0,0 +1,50 @@
1
+ # encoding: UTF-8
2
+
3
+ require 'json'
4
+
5
+ module CSKitStrongs
6
+ module Splitters
7
+ class ConcordanceSplitter
8
+
9
+ include Enumerable
10
+ include CSKitStrongs::Splitters::Utilities
11
+ attr_reader :input_file
12
+
13
+ PARSER_CONST = CSKit::Parsers::BibleParser
14
+
15
+ def initialize(input_file)
16
+ @input_file = input_file
17
+ end
18
+
19
+ def each
20
+ File.open(input_file) do |f|
21
+ until f.eof?
22
+ # split strongs line into [number, text, citation], split citation into [book, "chapter:verse"]
23
+ parts = f.readline.match(/([hg]\d{4})(.*)(\-[\w\d]{2,3}.*)/).captures.map(&:strip)
24
+ citation_parts = parts.last.match(/\-([\w\d]{2,3})(.*)/).captures
25
+
26
+ # replace strong's book name with something we understand
27
+ citation_text = "#{book_map[citation_parts.first]}#{citation_parts.last}"
28
+
29
+ number = strip_zeroes(parts[0])
30
+ text = parts[1]
31
+ citation = parser.parse(citation_text).to_object
32
+
33
+ yield language, number, text, citation
34
+ end
35
+ end
36
+ end
37
+
38
+ private
39
+
40
+ def book_map
41
+ @book_map = JSON.parse(File.read(File.join(CSKitStrongs.vendor_dir, "book_map.json")))
42
+ end
43
+
44
+ def parser
45
+ @parser ||= PARSER_CONST.new
46
+ end
47
+
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,86 @@
1
+ # encoding: UTF-8
2
+
3
+ require 'nokogiri'
4
+
5
+ module CSKitStrongs
6
+ module Splitters
7
+ class GreekLexiconSplitter
8
+
9
+ LANG = :greek
10
+
11
+ include Enumerable
12
+ include CSKitStrongs::Splitters::Utilities
13
+ attr_reader :input_file
14
+
15
+ def initialize(input_file)
16
+ @input_file = input_file
17
+ end
18
+
19
+ def each
20
+ doc = parse_file(input_file)
21
+
22
+ results = (doc / :entry).each do |entry|
23
+ attrs = pronunciation_for(entry).
24
+ merge(lang_attrs_for(entry, LANG)).
25
+ merge(definition_for(entry))
26
+
27
+ number = "g#{strip_zeroes(entry.attributes["strongs"].value)}"
28
+ attrs.merge!(:strongs_number => number)
29
+
30
+ yield number, attrs
31
+ end
32
+ end
33
+
34
+ private
35
+
36
+ def parse_file(file)
37
+ Nokogiri::XML(File.read(file))
38
+ end
39
+
40
+ def pronunciation_for(entry)
41
+ attrs = (entry / :pronunciation).first
42
+ { :pronunciation => attrs ? attrs.attributes["strongs"].value : nil }
43
+ end
44
+
45
+ def lang_attrs_for(entry, lang)
46
+ attrs = (entry / lang).first
47
+ {
48
+ :unicode => attrs ? attrs.attributes["unicode"].value : nil,
49
+ :translit => attrs ? attrs.attributes["translit"].value : nil
50
+ }
51
+ end
52
+
53
+ def definition_for(entry)
54
+ parts = definition_parts_for(entry)
55
+
56
+ definition = parts[1..-1].map do |part|
57
+ part.gsub("\n", "")
58
+ end.join
59
+
60
+ { :definition => "[#{parts.first}] #{definition}" }
61
+ end
62
+
63
+ def definition_parts_for(node)
64
+ node.children.flat_map do |child|
65
+ case child.name
66
+ when "strongs_derivation", "strongs_def"
67
+ definition_parts_for(child)
68
+ when "greek"
69
+ [child.attributes["unicode"].value.strip]
70
+ when "strongsref"
71
+ lang = child.attributes["language"].value.chars.first.downcase
72
+ number = strip_zeroes(child.attributes["strongs"].value.to_s)
73
+ "{{#{lang}#{number}}}"
74
+ when "text"
75
+ if child.text.strip.empty?
76
+ nil
77
+ else
78
+ child.text
79
+ end
80
+ end
81
+ end.compact
82
+ end
83
+
84
+ end
85
+ end
86
+ end