bible_ref 1.6.0 → 1.8.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/bible_ref/languages/chinese.rb +86 -0
- data/lib/bible_ref/languages/russian.rb +106 -0
- data/lib/bible_ref/languages.rb +7 -3
- data/lib/bible_ref/version.rb +1 -1
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 94f082914e94ccc545237ab180482839f16d2f3e3a41ce235563127ce2f1799d
|
4
|
+
data.tar.gz: '00453549f20461b499f1c0e5ab043113b8b8138aaf5fc953905724f580d44e67'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f85e99f90eb8e29e4fe132c55bc3d1548eac9c3b3cfd8933698ca224e33a8380e6902678ceef5390a9301d4d43216627e44838324facc9d30d1bcef769959ab8
|
7
|
+
data.tar.gz: 274d08d88609bd3ae2c62361559d4645c6364b98b9c49e18685b59547bf7ebb3c0a71b24f752fa33db8546208cdbbb6d7ba194bd16f25927d3b9bf3bf2f7f62a
|
@@ -0,0 +1,86 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require_relative 'base'
|
3
|
+
|
4
|
+
module BibleRef
|
5
|
+
module Languages
|
6
|
+
class Chinese < Base
|
7
|
+
|
8
|
+
# Is it a single chapter book?
|
9
|
+
def has_single_chapter?(reference)
|
10
|
+
matches = [/^俄/, /^腓利門/, /^約翰貳/, /^約翰參/, /^猶/]
|
11
|
+
return Regexp.union(matches).match?(reference)
|
12
|
+
end
|
13
|
+
|
14
|
+
def books
|
15
|
+
{
|
16
|
+
'GEN' => { match: /^創/, name: '創世紀'},
|
17
|
+
'EXO' => { match: /^出/, name: '出埃及記'},
|
18
|
+
'LEV' => { match: /^利/, name: '利未記'},
|
19
|
+
'NUM' => { match: /^民/, name: '民數記'},
|
20
|
+
'DEU' => { match: /^申/, name: '申命記'},
|
21
|
+
'JOS' => { match: /^約書/, name: '約書亞記'},
|
22
|
+
'JDG' => { match: /^士/, name: '士師記'},
|
23
|
+
'RUT' => { match: /^路得/, name: '路得記'},
|
24
|
+
'1SA' => { match: /記上$/, name: '撒母耳記上'},
|
25
|
+
'2SA' => { match: /記下$/, name: '撒母耳記下'},
|
26
|
+
'1KI' => { match: /紀上$/, name: '列王紀上'},
|
27
|
+
'2KI' => { match: /紀下$/, name: '列王紀下'},
|
28
|
+
'1CH' => { match: /志上$/, name: '歷代志上'},
|
29
|
+
'2CH' => { match: /志下$/, name: '歷代志下'},
|
30
|
+
'EZR' => { match: /^以斯/, name: '以斯拉記'},
|
31
|
+
'NEH' => { match: /^尼/, name: '尼希米記'},
|
32
|
+
'EST' => { match: /帖記$/, name: '以斯帖記'},
|
33
|
+
'JOB' => { match: /^約伯/, name: '約伯記'},
|
34
|
+
'PSA' => { match: /^詩/, name: '詩篇'},
|
35
|
+
'PRO' => { match: /^箴/, name: '箴言'},
|
36
|
+
'ECC' => { match: /^傳/, name: '傳道書'},
|
37
|
+
'SNG' => { match: /^雅歌/, name: '雅歌'},
|
38
|
+
'ISA' => { match: /^以賽/, name: '以賽亞書'},
|
39
|
+
'JER' => { match: /米書$/, name: '耶利米書'},
|
40
|
+
'LAM' => { match: /哀歌$/, name: '耶利米哀歌'},
|
41
|
+
'EZK' => { match: /^以西/, name: '以西結書'},
|
42
|
+
'DAN' => { match: /^但/, name: '但以理書'},
|
43
|
+
'HOS' => { match: /^何/, name: '何西阿書'},
|
44
|
+
'JOL' => { match: /^約珥/, name: '約珥書'},
|
45
|
+
'AMO' => { match: /^阿/, name: '阿摩司書'},
|
46
|
+
'OBA' => { match: /^俄/, name: '俄巴底亞書'},
|
47
|
+
'JON' => { match: /^約拿/, name: '約拿書'},
|
48
|
+
'MIC' => { match: /^彌/, name: '彌迦書'},
|
49
|
+
'NAM' => { match: /^那/, name: '那鴻書'},
|
50
|
+
'HAB' => { match: /^哈巴/, name: '哈巴谷書'},
|
51
|
+
'ZEP' => { match: /^西/, name: '西番雅書'},
|
52
|
+
'HAG' => { match: /^哈該/, name: '哈該書'},
|
53
|
+
'ZEC' => { match: /^撒迦/, name: '撒迦利亞書'},
|
54
|
+
'MAL' => { match: /^瑪/, name: '瑪拉基書'},
|
55
|
+
'MAT' => { match: /^馬太/, name: '馬太福音'},
|
56
|
+
'MRK' => { match: /^馬可/, name: '馬可福音'},
|
57
|
+
'LUK' => { match: /^路加/, name: '路加福音'},
|
58
|
+
'JHN' => { match: /^約翰福/, name: '約翰福音'},
|
59
|
+
'ACT' => { match: /^使/, name: '使徒行傳'},
|
60
|
+
'ROM' => { match: /^羅/, name: '羅馬書'},
|
61
|
+
'1CO' => { match: /多前書$/, name: '哥林多前書'},
|
62
|
+
'2CO' => { match: /多後書$/, name: '哥林多後書'},
|
63
|
+
'GAL' => { match: /^加/, name: '加拉太書'},
|
64
|
+
'EPH' => { match: /^以弗/, name: '以弗所書'},
|
65
|
+
'PHP' => { match: /比書$/, name: '腓利比書'},
|
66
|
+
'COL' => { match: /^歌/, name: '歌羅西書'},
|
67
|
+
'1TH' => { match: /迦前書$/, name: '帖撒羅尼迦前書'},
|
68
|
+
'2TH' => { match: /迦後書$/, name: '帖撒羅尼迦後書'},
|
69
|
+
'1TI' => { match: /太前書$/, name: '提摩太前書'},
|
70
|
+
'2TI' => { match: /太後書$/, name: '提摩太後書'},
|
71
|
+
'TIT' => { match: /^提多/, name: '提多書'},
|
72
|
+
'PHM' => { match: /門書$/, name: '腓利門書'},
|
73
|
+
'HEB' => { match: /^希/, name: '希伯來書'},
|
74
|
+
'JAS' => { match: /^雅各/, name: '雅各書'},
|
75
|
+
'1PE' => { match: /^彼得前/, name: '彼得前書'},
|
76
|
+
'2PE' => { match: /^彼得後/, name: '彼得前書'},
|
77
|
+
'1JN' => { match: /壹書$/, name: '約翰壹書'},
|
78
|
+
'2JH' => { match: /貳書$/, name: '約翰貳書'},
|
79
|
+
'3JH' => { match: /參書$/, name: '約翰參書'},
|
80
|
+
'JUD' => { match: /^猶/, name: '猶大書'},
|
81
|
+
'REV' => { match: /^啟/, name: '啟示錄'}
|
82
|
+
}
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
@@ -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
|
data/lib/bible_ref/languages.rb
CHANGED
@@ -1,17 +1,21 @@
|
|
1
1
|
require_relative 'languages/cherokee'
|
2
|
+
require_relative 'languages/chinese'
|
3
|
+
require_relative 'languages/czech'
|
2
4
|
require_relative 'languages/english'
|
3
5
|
require_relative 'languages/latin'
|
4
6
|
require_relative 'languages/portuguese'
|
5
7
|
require_relative 'languages/romanian'
|
6
|
-
require_relative 'languages/
|
8
|
+
require_relative 'languages/russian'
|
7
9
|
|
8
10
|
module BibleRef
|
9
11
|
LANGUAGES = {
|
10
12
|
'chr' => Languages::Cherokee,
|
13
|
+
'zh-tw' => Languages::Chinese,
|
14
|
+
'cze' => Languages::Czech,
|
11
15
|
'eng' => Languages::English,
|
12
16
|
'lat' => Languages::Latin,
|
13
17
|
'por' => Languages::Portuguese,
|
14
18
|
'ron' => Languages::Romanian,
|
15
|
-
'
|
19
|
+
'rus' => Languages::Russian
|
16
20
|
}.freeze
|
17
|
-
end
|
21
|
+
end
|
data/lib/bible_ref/version.rb
CHANGED
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.
|
4
|
+
version: 1.8.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-
|
11
|
+
date: 2024-12-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: parslet
|
@@ -67,11 +67,13 @@ files:
|
|
67
67
|
- lib/bible_ref/languages.rb
|
68
68
|
- lib/bible_ref/languages/base.rb
|
69
69
|
- lib/bible_ref/languages/cherokee.rb
|
70
|
+
- lib/bible_ref/languages/chinese.rb
|
70
71
|
- lib/bible_ref/languages/czech.rb
|
71
72
|
- lib/bible_ref/languages/english.rb
|
72
73
|
- lib/bible_ref/languages/latin.rb
|
73
74
|
- lib/bible_ref/languages/portuguese.rb
|
74
75
|
- lib/bible_ref/languages/romanian.rb
|
76
|
+
- lib/bible_ref/languages/russian.rb
|
75
77
|
- lib/bible_ref/parser.rb
|
76
78
|
- lib/bible_ref/reference.rb
|
77
79
|
- lib/bible_ref/version.rb
|
@@ -94,7 +96,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
94
96
|
- !ruby/object:Gem::Version
|
95
97
|
version: '0'
|
96
98
|
requirements: []
|
97
|
-
rubygems_version: 3.5.
|
99
|
+
rubygems_version: 3.5.16
|
98
100
|
signing_key:
|
99
101
|
specification_version: 4
|
100
102
|
summary: Bible reference parser
|