cbeta 2.2.9 → 2.2.10

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/cbeta.rb +30 -1
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a3f8edd88730de817c9ecec347b516f552cd148a
4
- data.tar.gz: 3f9b2eb3e8010094ce3ce47b84e261319d8ccac5
3
+ metadata.gz: 0003f22e89799c988c83fbcfd06620c4276dd5c6
4
+ data.tar.gz: 7adc472b18145ab7701fe593b82970011f732704
5
5
  SHA512:
6
- metadata.gz: 7e05cadab483733f7a5c531966fca41fcd453e1da9ae44f64433bf04e72d3ae9b129ea7b4dc0f94c3e7f304d9d5755ec192a572cd463a6528d3088ed4bcab5f0
7
- data.tar.gz: 15f31074085847f332c3633f7de85706167c059709ae48a889081b9ebbe26f9e32cf626a07c8492cb29c6aadd2089b11e2dae16a66406d8c44038961047a55eb
6
+ metadata.gz: 8cdb5d72538f8a6d81b88e3267e4a49c58dc967249f13e7a85f8691cc411f3d2341fb83f8aff95d2ad11a644a2ec4f1fdeddec22ee8bf5584d50fc52e72a6c0f
7
+ data.tar.gz: 4c1ca46d20efd0ca3add868bed01ceef57b4c832561412192cd06115763b4f33edaf4e25299417d949cb7ce2deddf2308f3f66e6d7ed784087789f6efeb9a00b
@@ -42,6 +42,18 @@ class CBETA
42
42
  fn.sub(/^(#{CANON})\d{2,3}n(.*)$/, '\1\2')
43
43
  end
44
44
 
45
+ # 由「藏經 ID」取得「排序用編號」,例如:傳入 "T" 回傳 "A";傳入 "X" 回傳 "B"
46
+ # @param canon [String] 藏經 ID
47
+ # @return [String] 排序用編號
48
+ def self.get_sort_order_from_canon_id(canon)
49
+ # CBETA 提供,惠敏法師最後決定的全文檢索順序表, 2016-06-03
50
+ table = %w(T X A K S F C D U P J L G M N H I W B GA GB)
51
+ i = table.index(canon)
52
+ abort "unknown canon id: #{canon}" if i.nil?
53
+
54
+ (i + 'A'.ord).chr
55
+ end
56
+
45
57
  # 將行首資訊轉為引用格式
46
58
  #
47
59
  # @param linehead [String] 行首資訊, 例如:T85n2838_p1291a03
@@ -57,6 +69,23 @@ class CBETA
57
69
  nil
58
70
  end
59
71
 
72
+ def self.normalize_vol(vol)
73
+ if vol.match(/^(#{CANON})(.*)$/)
74
+ canon = $1
75
+ vol = $2
76
+
77
+ if %w[A C G GA GB L M P U].include? canon
78
+ # 這些藏經的冊號是三碼
79
+ vol_len = 3
80
+ else
81
+ vol_len = 2
82
+ end
83
+ canon + vol.rjust(vol_len, '0')
84
+ else
85
+ abort "unknown vol format: #{vol}"
86
+ end
87
+ end
88
+
60
89
  def self.open_xml(fn)
61
90
  s = File.read(fn)
62
91
  doc = Nokogiri::XML(s)
@@ -80,7 +109,7 @@ class CBETA
80
109
  i = 0xFA000 + gid[-4..-1].hex
81
110
  [i].pack("U")
82
111
  end
83
-
112
+
84
113
  # 載入藏經資料
85
114
  def initialize()
86
115
  fn = File.join(File.dirname(__FILE__), 'data/canons.csv')
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: 2.2.9
4
+ version: 2.2.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ray Chou
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-08-31 00:00:00.000000000 Z
11
+ date: 2016-09-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