bible_ref 1.6.0 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ab0bb0edca332ec87f43dd6ce4db0aab05e1bde7fe7a56c4a8d90be9a77717f3
4
- data.tar.gz: 4464a27ea0b9595a8590f82ef6aa4d603d50dfef18340f6678e9b7aa20a19f8b
3
+ metadata.gz: 2eea226f102d44c7b14f79bc667d0618da40de07c71c110ae0c41d8677e9683d
4
+ data.tar.gz: 6116fe530e9a2f38ff4dc5441fca6ca7d2b0c3968e2c7bc5dc2d333845b5b6a8
5
5
  SHA512:
6
- metadata.gz: c0d9db5be84e5ec8a6d0be7d342d8ba9a70833a0363f6cd229ebde28d5b9e0aa87d1c8c986921a0c8e8e5e7bc23f6c0e98f3a48a88389e75f0a1297a0856a352
7
- data.tar.gz: 0bac20acb345b2de1d5d13a81061ad13318fb04231643b7cac6bf248081ef9e9bd317de0ecc7fcbb1371ecca23038ba18c2f33d7baf7845c25ed08dc32ffeffa
6
+ metadata.gz: f2f5194a238d50834122de3360613dc76488f6fe5ac5b347e50ca8c3377f44024642c1b9d4359347cdb03aa98418441797e7399571a16349e74e47b5047df3f8
7
+ data.tar.gz: 456a718b4f62ea241b4ac1cd1bf4f4f335260eee91c30fb41c30cdd583396a5eb66ee92afce6ac27288926080bc1fcfb25a9eefbcd97dbadfbb065902b130c33
@@ -0,0 +1,106 @@
1
+ # -*- coding: utf-8 -*-
2
+ require_relative 'base'
3
+
4
+ module BibleRef
5
+ module Languages
6
+ class Russian < Base
7
+ # Is it a single chapter book?
8
+ def has_single_chapter?(reference)
9
+ matches = [/^авд(и[йя])?/, /^иуды?/, /^2 ?и(оа)?нн?а?/, /^3 ?и(оа)?нн?а?/, /^ф(лм|ил(имон)?у?)/]
10
+ return Regexp.union(matches).match?(reference.downcase)
11
+ end
12
+
13
+ def books
14
+ {
15
+ 'GEN' => { match: /^быт(и[её])?/, name: 'Бытие' }, # Быт, Бытие
16
+ 'EXO' => { match: /^исх(од)?/, name: 'Исход' }, # Исх, Исход
17
+ 'LEV' => { match: /^лев(ит)?/, name: 'Левит' }, # Лев, Левит
18
+ 'NUM' => { match: /^чис(е?ла?)?/, name: 'Числа' }, # Чис, Числа
19
+ 'DEU' => { match: /^втор(озаконие)?/, name: 'Второзаконие' }, # Втор, Второзаконие
20
+ 'JOS' => { match: /^(иисус )?нав(ин)?/, name: 'Иисус Навин' }, # Нав, Иисус Навин
21
+ 'JDG' => { match: /^суд(ей|ьи)/, name: 'Судьи' }, # Суд, Судьи, Судей
22
+ 'RUT' => { match: /^руф[ьи]?/, name: 'Руфь' }, # Руф, Руфь, Руфи
23
+ '1SA' => { match: /^1 ?(цар(ств)?|сам(уила?)?)/, name: '1 Царств' }, # 1 Цар, 1 Царств, 1 Сам, 1 Самуила
24
+ '2SA' => { match: /^2 ?(цар(ств)?|сам(уила?)?)/, name: '2 Царств' }, # 2 Цар, 2 Царств, 2 Сам, 2 Самуила
25
+ '1KI' => { match: /^3 ?цар(ств)?/, name: '3 Царств' }, # 3 Цар, 3 Царств
26
+ '2KI' => { match: /^4 ?цар(ств)?/, name: '4 Царств' }, # 4 Цар, 4 Царств
27
+ '1CH' => { match: /^2 ?пар(алипоменон)/, name: '1 Паралипоменон' }, # 1 Пар, 1 Паралипоменон
28
+ '2CH' => { match: /^2 ?пар(алипоменон)/, name: '2 Паралипоменон' }, # 2 Пар, 2 Паралипоменон
29
+ 'EZR' => { match: /^езд(р[аы])?/, name: 'Ездра' }, # Ездр, Ездра, Ездры
30
+ 'NEH' => { match: /^неем(и[яи])?/, name: 'Неемия' }, # Неем, Неемия, Неемии
31
+ 'EST' => { match: /^[еэ]сф(ир[ьи])?/, name: 'Есфирь' }, # Есф, Есфирь, Есфири
32
+ 'JOB' => { match: /^иова?/, name: 'Иов' }, # Иов, Иова
33
+ 'PSA' => { match: /^пс(ал(т[ыи]рь|мы))?/, name: 'Псалтирь' }, # Пс, Псалтирь, Псалмы
34
+ 'PRO' => { match: /^пр(итч(и|ей))?/, name: 'Притчи' }, # Притч, Притчи, Притчей
35
+ 'ECC' => { match: /^[еэ]ккл(езиаста?)?/, name: 'Екклезиаст' }, # Еккл, Екклезиаст, Екклезиаста
36
+ 'SNG' => { match: /^пес(н[ья])?/, name: 'Песнь песней' }, # Пес, Песнь Песней, Песня Песен
37
+ 'ISA' => { match: /^ис(а[ий][яи])?/, name: 'Исаия' }, # Ис, Исаия, Исайя, Исаии, Исайи
38
+ 'JER' => { match: /^иер(еми[яи])?/, name: 'Иеремия' }, # Иер, Иеремия, Иеремии
39
+ 'LAM' => { match: /^пл(ач)?( ?иер(емии)?)?/, name: 'Плач Иеремии' }, # Плач, Плач Иеремии
40
+ 'EZK' => { match: /^иез(екииль)?/, name: 'Иезекииль' }, # Иез, Иезекииль
41
+ 'DAN' => { match: /^дан(иила?)?/, name: 'Даниил' }, # Дан, Даниил, Даниила
42
+ 'HOS' => { match: /^ос(и[яи])?/, name: 'Осия' }, # Ос, Осия, Осии
43
+ 'JOL' => { match: /^иоил([ья])?/, name: 'Иоиль' }, # Иоил, Иоиль, Иоиля
44
+ 'AMO' => { match: /^ам(оса?)?/, name: 'Амос' }, # Ам, Амос, Амоса
45
+ 'OBA' => { match: /^авд(и[йя])?/, name: 'Авдий' }, # Авд, Авдий, Авдия
46
+ 'JON' => { match: /^ион[аы]?/, name: 'Иона' }, # Ион, Иона, Ионы
47
+ 'MIC' => { match: /^мих(е[йя])?/, name: 'Михей' }, # Мих, Михей, Михея
48
+ 'NAM' => { match: /^наума?/, name: 'Наум' }, # Наум, Наума
49
+ 'HAB' => { match: /^авв(акума?)?/, name: 'Аввакум' }, # Авв, Аввакум, Аввакума
50
+ 'ZEP' => { match: /^соф(они[яи])?/, name: 'Софония' }, # Соф, Софония, Софонии
51
+ 'HAG' => { match: /^агг(е[йя])?/, name: 'Аггей' }, # Агг, Аггей, Аггея
52
+ 'ZEC' => { match: /^зах(ари[яи]?)/, name: 'Захария' }, # Зах, Захария, Захарии
53
+ 'MAL' => { match: /^мал(ахи[яи]?)/, name: 'Малахия' }, # Мал, Малахия, Малахии
54
+
55
+ 'TOB' => { match: /^тов(ита?)?/, name: 'Товит' }, # Тов, Товит, Товита
56
+ 'JDT' => { match: /^иудиф[ьи]?/, name: 'Иудифь' }, # Иуд, Иудифь
57
+ 'ESG' => { match: /^[еэ]сф(ирь)? ?\(гр(еч(еская)?)?\)/, name: 'Есфирь (Греческая)' }, # Есф (греч), Есфирь (Греческая)
58
+ 'WIS' => { match: /^прем(удрост[ьи])?( ?сол(омона)?)?/, name: 'Премудрость Соломона' }, # Прем, Премудрость Соломона
59
+ 'SIR' => { match: /^сир(аха?)?/, name: 'Сирах' }, # Сир, Сирах, Сираха
60
+ 'BAR' => { match: /^вар(уха?)?/, name: 'Варух' }, # Вар, Варух, Варуха
61
+ 'LJE' => { match: /^посл(ание)?( ?иер(емии)?)?/, name: 'Послание Иеремии' }, # Посл, Послание Иеремии
62
+ 'S3Y' => { match: /^пес(н[ья]?)?( ?тр[её]х|3-?х?)( ?(свят(ых)?)?( ?отр(оков)?)?)?/, name: 'Песнь Трех Отроков' }, # Песн Трех Св.
63
+
64
+ 'SUS' => { match: /^сус(анн[аы])?/, name: 'Сусанна' }, # Сус, Сусанна
65
+ 'BEL' => { match: /^бел( ?и дракон)?/, name: 'Бел и дракон' }, # Бел, Бел и Дракон
66
+ '1MA' => { match: /^1 ?мак(кавейская)?/, name: '1 Маккавейская' }, # 1 Мак, 1 Маккавейская
67
+ '2MA' => { match: /^2 ?мак(кавейская)?/, name: '2 Маккавейская' }, # 2 Мак, 2 Маккавейская
68
+ '1ES' => { match: /^1 ?ездр(ы)?/, name: '1 Ездры' }, # 1 Ездр, 1 Ездры
69
+ 'MAN' => { match: /^мол(итва)?( ?манассии)?/, name: 'Молитва Манассии' }, # Мол, Молитва Манассии
70
+ 'PS2' => { match: /^пс(алом)? ?\(?151\)?/, name: 'Псалом 151' }, # Пс 151, Псалом 151
71
+ '3MA' => { match: /^3 ?мак(кавейская)?/, name: '3 Маккавейская' }, # 3 Мак, 3 Маккавейская
72
+ '2ES' => { match: /^2 ?езд(ры?)?/, name: '2 Ездры' }, # 2 Ездр, 2 Ездры
73
+ '4MA' => { match: /^4 ?мак(кавейская)?/, name: '4 Маккавейская' }, # 4 Мак, 4 Маккавейская
74
+
75
+ 'MAT' => { match: /^мат(ф(е[йя])?)?|мф/, name: 'Матфея' }, # Мф, Мат, Матфея
76
+ 'MRK' => { match: /^мар(ка?)?|мк/, name: 'Марка' }, # Мк, Марк, Марка
77
+ 'LUK' => { match: /^лук(и)?/, name: 'Луки' }, # Лк, Лук, Луки
78
+ 'JHN' => { match: /^и(оа)?нн?а?/, name: 'Иоанна' }, # Ин, Инн, Иоанн, Иоанна
79
+ 'ACT' => { match: /^деян(и[яй])?/, name: 'Деяния' }, # Деян, Деяния
80
+ 'ROM' => { match: /^рим(лянам)?/, name: 'Римлянам' }, # Рим, Римлянам
81
+ '1CO' => { match: /^1 ?кор(инфянам)?/, name: '1 Коринфянам' }, # 1 Кор, 1 Коринфянам
82
+ '2CO' => { match: /^2 ?кор(инфянам)?/, name: '2 Коринфянам' }, # 2 Кор, 2 Коринфянам
83
+ 'GAL' => { match: /^гал(атам)?/, name: 'Галатам' }, # Гал, Галатам
84
+ 'EPH' => { match: /^[еэ]ф(есянам)?/, name: 'Ефесянам' }, # Еф, Ефесянам
85
+ 'PHP' => { match: /^флп/, name: 'Филиппийцам' }, # Флп, Филиппийцам
86
+ 'COL' => { match: /^кол(оссянам)?/, name: 'Колоссянам' }, # Кол, Колоссянам
87
+ '1TH' => { match: /^1 ?фес(с(алоникийцам)?)?/,name: '1 Фессалоникийцам' }, # 1 Фес, 1 Фессалоникийцам
88
+ '2TH' => { match: /^2 ?фес(с(алоникийцам)?)?/,name: '2 Фессалоникийцам' }, # 2 Фес, 2 Фессалоникийцам
89
+ '1TI' => { match: /^1 ?тим(офею)?/, name: '1 Тимофею' }, # 1 Тим, 1 Тимофею
90
+ '2TI' => { match: /^2 ?тим(офею)?/, name: '2 Тимофею' }, # 2 Тим, 2 Тимофею
91
+ 'TIT' => { match: /^титу?/, name: 'Титу' }, # Тит, Титу
92
+ 'PHM' => { match: /^флм/, name: 'Филимону' }, # Флм, Филимону
93
+ 'HEB' => { match: /^евр(еям)?/, name: 'Евреям' }, # Евр, Евреям
94
+ 'JAS' => { match: /^иак(ова?)?/, name: 'Иакова' }, # Иак, Иаков, Иакова
95
+ '1PE' => { match: /^1 ?пет(ра?)?/, name: '1 Петра' }, # 1 Пет, 1 Петра
96
+ '2PE' => { match: /^2 ?пет(ра?)?/, name: '2 Петра' }, # 2 Пет, 2 Петра
97
+ '1JN' => { match: /^1 ?и(оа)?нн?а?/, name: '1 Иоанна' }, # 1 Ин, 1 Иоанн, 1 Иоанна
98
+ '2JN' => { match: /^2 ?и(оа)?нн?а?/, name: '2 Иоанна' }, # 2 Ин, 2 Иоанн, 2 Иоанна
99
+ '3JN' => { match: /^3 ?и(оа)?нн?а?/, name: '3 Иоанна' }, # 3 Ин, 3 Иоанн, 3 Иоанна
100
+ 'JUD' => { match: /^иуды?/, name: 'Иуды' }, # Иуд, Иуды
101
+ 'REV' => { match: /^отк(ровение)?/, name: 'Откровение' } # Откр, Откровение
102
+ }
103
+ end
104
+ end
105
+ end
106
+ end
@@ -1,17 +1,19 @@
1
1
  require_relative 'languages/cherokee'
2
+ require_relative 'languages/czech'
2
3
  require_relative 'languages/english'
3
4
  require_relative 'languages/latin'
4
5
  require_relative 'languages/portuguese'
5
6
  require_relative 'languages/romanian'
6
- require_relative 'languages/czech'
7
+ require_relative 'languages/russian'
7
8
 
8
9
  module BibleRef
9
10
  LANGUAGES = {
10
11
  'chr' => Languages::Cherokee,
12
+ 'cze' => Languages::Czech,
11
13
  'eng' => Languages::English,
12
14
  'lat' => Languages::Latin,
13
15
  'por' => Languages::Portuguese,
14
16
  'ron' => Languages::Romanian,
15
- 'cze' => Languages::Czech
17
+ 'rus' => Languages::Russian
16
18
  }.freeze
17
19
  end
@@ -1,3 +1,3 @@
1
1
  module BibleRef
2
- VERSION = '1.6.0'
2
+ VERSION = '1.7.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bible_ref
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tim Morgan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-03 00:00:00.000000000 Z
11
+ date: 2024-10-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: parslet
@@ -72,6 +72,7 @@ files:
72
72
  - lib/bible_ref/languages/latin.rb
73
73
  - lib/bible_ref/languages/portuguese.rb
74
74
  - lib/bible_ref/languages/romanian.rb
75
+ - lib/bible_ref/languages/russian.rb
75
76
  - lib/bible_ref/parser.rb
76
77
  - lib/bible_ref/reference.rb
77
78
  - lib/bible_ref/version.rb
@@ -94,7 +95,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
94
95
  - !ruby/object:Gem::Version
95
96
  version: '0'
96
97
  requirements: []
97
- rubygems_version: 3.5.3
98
+ rubygems_version: 3.5.16
98
99
  signing_key:
99
100
  specification_version: 4
100
101
  summary: Bible reference parser