cbeta 3.2.0 → 3.2.1
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/xml_document.rb +46 -6
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5d32b2ace3526aa8492fcfb42bbbebf08edfa1a1df1d3ef5aecc8e409e7423a9
|
4
|
+
data.tar.gz: 67bb568adb4710f114216161e16a6c7c5e0a0c34af6b770a42fc1e26143a3b03
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 71ade7189b3f3bf90f9436e1d756c88f72164285972d7cab8cb81bb2ed27d2c13a048e2909cfb58f8250288e5d31bee888acedf6cf4ea225db5e7ea5605db575
|
7
|
+
data.tar.gz: f84625e849635021b7ba2c10b7b54725830bce6786eb40fe8b3696b8b732274ec89cbbb4fbedb9e494be88f221e7252c23d90fe83fe8e8b81edc8189bf9969f0
|
data/lib/cbeta/xml_document.rb
CHANGED
@@ -3,6 +3,8 @@ require 'nokogiri'
|
|
3
3
|
class CBETA::XMLDocument
|
4
4
|
PASS = %w(back graphic mulu rdg sic teiHeader)
|
5
5
|
|
6
|
+
attr_reader :doc
|
7
|
+
|
6
8
|
def initialize(string_or_io)
|
7
9
|
@doc = Nokogiri::XML(string_or_io)
|
8
10
|
@doc.remove_namespaces!
|
@@ -44,9 +46,21 @@ class CBETA::XMLDocument
|
|
44
46
|
' '
|
45
47
|
end
|
46
48
|
|
49
|
+
def e_caption(e)
|
50
|
+
traverse(e) + "\n"
|
51
|
+
end
|
52
|
+
|
47
53
|
def e_cell(e)
|
48
54
|
traverse(e) + "\n"
|
49
55
|
end
|
56
|
+
|
57
|
+
def e_cit(e)
|
58
|
+
traverse(e)
|
59
|
+
end
|
60
|
+
|
61
|
+
def e_closer(e)
|
62
|
+
traverse(e) + "\n"
|
63
|
+
end
|
50
64
|
|
51
65
|
def e_corr(e)
|
52
66
|
traverse(e)
|
@@ -63,6 +77,10 @@ class CBETA::XMLDocument
|
|
63
77
|
def e_div(e)
|
64
78
|
traverse(e)
|
65
79
|
end
|
80
|
+
|
81
|
+
def e_docAuthor(e)
|
82
|
+
traverse(e)
|
83
|
+
end
|
66
84
|
|
67
85
|
def e_docNumber(e)
|
68
86
|
traverse(e) + "\n"
|
@@ -73,6 +91,12 @@ class CBETA::XMLDocument
|
|
73
91
|
end
|
74
92
|
|
75
93
|
def e_figure(e)
|
94
|
+
r = traverse(e)
|
95
|
+
r << "\n" unless r.empty?
|
96
|
+
r
|
97
|
+
end
|
98
|
+
|
99
|
+
def e_figDesc(e)
|
76
100
|
traverse(e) + "\n"
|
77
101
|
end
|
78
102
|
|
@@ -88,14 +112,19 @@ class CBETA::XMLDocument
|
|
88
112
|
cb_priority = %w(uni_char composition)
|
89
113
|
end
|
90
114
|
|
91
|
-
gid = e['ref']
|
92
|
-
|
93
|
-
|
94
|
-
|
115
|
+
gid = e['ref'].delete_prefix('#')
|
116
|
+
|
117
|
+
unless @gaiji.key?(gid)
|
118
|
+
raise "在 CBETA 缺字庫中找不到此缺字碼: #{gid}"
|
119
|
+
end
|
120
|
+
|
121
|
+
@gaiji.to_s(gid, cb_priority:)
|
95
122
|
end
|
96
123
|
|
97
124
|
def e_head(e)
|
98
|
-
traverse(e)
|
125
|
+
r = traverse(e)
|
126
|
+
r << "\n" unless r.empty?
|
127
|
+
r
|
99
128
|
end
|
100
129
|
|
101
130
|
def e_hi(e)
|
@@ -178,6 +207,14 @@ class CBETA::XMLDocument
|
|
178
207
|
''
|
179
208
|
end
|
180
209
|
|
210
|
+
def e_quote(e)
|
211
|
+
traverse(e)
|
212
|
+
end
|
213
|
+
|
214
|
+
def e_ref(e)
|
215
|
+
traverse(e)
|
216
|
+
end
|
217
|
+
|
181
218
|
def e_reg(e)
|
182
219
|
r = ''
|
183
220
|
choice = e.at_xpath('ancestor::choice')
|
@@ -189,6 +226,10 @@ class CBETA::XMLDocument
|
|
189
226
|
traverse(e) + "\n"
|
190
227
|
end
|
191
228
|
|
229
|
+
def e_seg(e)
|
230
|
+
traverse(e)
|
231
|
+
end
|
232
|
+
|
192
233
|
def e_sg(e)
|
193
234
|
'(' + traverse(e) + ')'
|
194
235
|
end
|
@@ -266,7 +307,6 @@ class CBETA::XMLDocument
|
|
266
307
|
r
|
267
308
|
end
|
268
309
|
|
269
|
-
|
270
310
|
def handle_node(e)
|
271
311
|
return '' if e.comment?
|
272
312
|
return handle_text(e) if e.text?
|
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: 3.2.
|
4
|
+
version: 3.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ray Chou
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-03-
|
11
|
+
date: 2024-03-11 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
|