cbeta 1.3.3 → 1.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/cbeta.rb +5 -0
- data/lib/cbeta/gaiji.rb +15 -0
- data/lib/cbeta/p5a_to_text.rb +12 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: adee183353751f8a74f171836a257f0259389791
|
4
|
+
data.tar.gz: 781dbd2f88fdb9f5358c01333215489623ed2461
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 59ce383bb2e3a054d8279abcc0f3e6fafc4b8c3f7850ddffdbb8ab7e25c0456922d75325881757e95d2554236bc2812a29394028edd09be29b4b5612c4b711fe
|
7
|
+
data.tar.gz: a37ab4e373efff9d964dbf0c1fd83b5225b114419e7adee793fa0fc0ca9d4df7b129b4342ed07e2a86a962cd2d149d3b0dd95c29b9a3074870635e5f2cd7e805
|
data/lib/cbeta.rb
CHANGED
data/lib/cbeta/gaiji.rb
CHANGED
@@ -6,6 +6,14 @@ class CBETA::Gaiji
|
|
6
6
|
def initialize()
|
7
7
|
fn = File.join(File.dirname(__FILE__), '../data/gaiji.json')
|
8
8
|
@gaijis = JSON.parse(File.read(fn))
|
9
|
+
|
10
|
+
@zzs = {}
|
11
|
+
@gaijis.each do |k,v|
|
12
|
+
if v.key? 'zzs'
|
13
|
+
zzs = v['zzs']
|
14
|
+
@zzs[zzs] = k
|
15
|
+
end
|
16
|
+
end
|
9
17
|
end
|
10
18
|
|
11
19
|
# 取得缺字資訊
|
@@ -51,6 +59,13 @@ class CBETA::Gaiji
|
|
51
59
|
File.write(output_json_filename, s)
|
52
60
|
end
|
53
61
|
|
62
|
+
# 傳入 組字式,取得 PUA
|
63
|
+
def zzs2pua(zzs)
|
64
|
+
return nil unless @zzs.key? zzs
|
65
|
+
gid = @zzs[zzs]
|
66
|
+
CBETA.pua(gid)
|
67
|
+
end
|
68
|
+
|
54
69
|
private
|
55
70
|
|
56
71
|
def char_to_hash(char)
|
data/lib/cbeta/p5a_to_text.rb
CHANGED
@@ -25,13 +25,17 @@ class CBETA::P5aToText
|
|
25
25
|
# @param format [String] 輸出格式,例:'app'
|
26
26
|
# @option opts [String] :format 輸出格式,例:'app',預設是 normal
|
27
27
|
# @option opts [String] :encoding 輸出編碼,預設 'UTF-8'
|
28
|
+
# @option opts [String] :gaiji 缺字處理方式,預設 'default'
|
29
|
+
# * 'PUA': 缺字一律使用 Unicode PUA
|
30
|
+
# * 'default': 優先使用通用字
|
28
31
|
def initialize(xml_root, output_root, opts={})
|
29
32
|
@xml_root = xml_root
|
30
33
|
@output_root = output_root
|
31
34
|
|
32
35
|
@settings = {
|
33
36
|
format: nil,
|
34
|
-
encoding: 'UTF-8'
|
37
|
+
encoding: 'UTF-8',
|
38
|
+
gaiji: 'default'
|
35
39
|
}
|
36
40
|
@settings.merge!(opts)
|
37
41
|
|
@@ -192,6 +196,13 @@ class CBETA::P5aToText
|
|
192
196
|
# else
|
193
197
|
# Unicode PUA
|
194
198
|
gid = e['ref'][1..-1]
|
199
|
+
|
200
|
+
if @settings[:gaiji] == 'PUA'
|
201
|
+
return CBETA.siddham_pua(gid) if gid.start_with?('SD') # 悉曇字
|
202
|
+
return CBETA.ranjana_pua(gid) if gid.start_with?('RJ') # 蘭札體
|
203
|
+
return CBETA.pua(gid)
|
204
|
+
end
|
205
|
+
|
195
206
|
g = @gaijis[gid]
|
196
207
|
abort "Line:#{__LINE__} 無缺字資料:#{gid}" if g.nil?
|
197
208
|
zzs = g['zzs']
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cbeta
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ray Chou
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-12-
|
11
|
+
date: 2015-12-07 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Ruby gem for use Chinese Buddhist Text resources made by CBETA (http://www.cbeta.org).
|
14
14
|
email: zhoubx@gmail.com
|