wareki 0.1.2 → 0.1.3
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/ChangeLog +21 -0
- data/README.rdoc +12 -0
- data/lib/wareki/common.rb +1 -1
- data/lib/wareki/date.rb +1 -1
- data/lib/wareki/utils.rb +25 -15
- data/lib/wareki/version.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 580a31cae7a0a20059c2e914c08a0fd5793fa715
|
4
|
+
data.tar.gz: 0d965affe4eb6a63e64b2c7fc3dd3f0038fe87e4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4118d6b51ee6f34dde41d0009a57e695bf4c2e5070e64a014b87f2b5747eb8ef798ea89bab59cdbdc078a8fe7d7d605197d862e45bd089e817fe8d768204e596
|
7
|
+
data.tar.gz: b9206e669bdd95e22fabe2cf8f4c200c69e04abbc07d56bced3802456745b8ac1da4c909f0c87ab3f39d75dd98ae57f1fcbea2530aafe5808bc8f27980701e99
|
data/ChangeLog
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
2017-02-04 Tatsuki Sugiura <sugi@nemui.org>
|
2
|
+
|
3
|
+
* Version 0.1.3
|
4
|
+
* Fix last day of era/year handling issue (#2)
|
5
|
+
* Fix kansuji converter for large numbers
|
6
|
+
(This is NOT affected with ordinal date numbers)
|
7
|
+
|
8
|
+
2015-09-03 Tatsuki Sugiura <sugi@nemui.org>
|
9
|
+
|
10
|
+
* Version 0.1.2
|
11
|
+
* Fix file permissions (#1)
|
12
|
+
|
13
|
+
2015-08-23 Tatsuki Sugiura <sugi@nemui.org>
|
14
|
+
|
15
|
+
* Version 0.1.1
|
16
|
+
* Fix gemspec: dependency of ruby version
|
17
|
+
|
18
|
+
2015-08-23 Tatsuki Sugiura <sugi@nemui.org>
|
19
|
+
|
20
|
+
* Version 0.1.0.
|
21
|
+
* First release
|
data/README.rdoc
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
= ruby 和暦ライブラリ
|
2
2
|
|
3
|
+
{<img src="https://badge.fury.io/rb/wareki.svg" alt="Gem Version" />}[https://badge.fury.io/rb/wareki]
|
4
|
+
{<img src="https://travis-ci.org/sugi/wareki.svg?branch=master" alt="Build Status" />}[https://travis-ci.org/sugi/wareki]
|
5
|
+
{<img src="https://coveralls.io/repos/sugi/wareki/badge.svg?branch=master&service=github" alt="Coverage Status" />}[https://coveralls.io/github/sugi/wareki?branch=master]
|
6
|
+
|
3
7
|
== 概要
|
4
8
|
|
5
9
|
日本の和暦をサポートするライブラリです。
|
@@ -96,6 +100,14 @@ Gemfile に以下のようにするか、
|
|
96
100
|
* 旧暦: {suikawiki - 旧暦}[http://wiki.suikawiki.org/n/%E6%97%A7%E6%9A%A6#section-%E5%AF%BE%E7%85%A7%E8%A1%A8%E3%81%A8%E5%A4%89%E6%8F%9B%E3%83%84%E3%83%BC%E3%83%AB] にある「日本暦日原典」第4版準拠の先発グレゴリオ暦対照表
|
97
101
|
* 元号: {Wikipedia - 元号一覧_(日本)}[https://ja.wikipedia.org/wiki/%E5%85%83%E5%8F%B7%E4%B8%80%E8%A6%A7_%28%E6%97%A5%E6%9C%AC%29] のユリウス歴とグレゴリオ暦表記の物を利用しています
|
98
102
|
|
103
|
+
== ライセンス
|
104
|
+
|
105
|
+
{The BSD 2-Clause License}[https://opensource.org/licenses/BSD-2-Clause]
|
106
|
+
|
107
|
+
== 作者
|
108
|
+
|
109
|
+
Tatsuki Sugiura <sugi@nemui.org>
|
110
|
+
|
99
111
|
== TODO
|
100
112
|
* 北朝モード
|
101
113
|
* Wareki::Date で各種計算のサポート
|
data/lib/wareki/common.rb
CHANGED
@@ -7,7 +7,7 @@ module Wareki
|
|
7
7
|
GREGORIAN_START_YEAR = 1873
|
8
8
|
IMPERIAL_START = 1480041 # Date.new(-660, 2, 11, Date::GREGORIAN).jd
|
9
9
|
IMPERIAL_START_YEAR = -660
|
10
|
-
DATE_INFINITY = ::Date.new(
|
10
|
+
DATE_INFINITY = ::Date.new(280000000, 12, 31) # Use 280000000 for jruby limitation...
|
11
11
|
YEAR_BY_NUM = Hash[*YEAR_DEFS.map{|y| [y.year, y]}.flatten].freeze
|
12
12
|
ERA_BY_NAME = Hash[*(ERA_NORTH_DEFS + ERA_DEFS).map {|g| [g.name, g]}.flatten]
|
13
13
|
ERA_BY_NAME['皇紀'] = ERA_BY_NAME['神武天皇即位紀元'] = Era.new('皇紀', -660, 1480041, DATE_INFINITY.jd)
|
data/lib/wareki/date.rb
CHANGED
@@ -172,7 +172,7 @@ module Wareki
|
|
172
172
|
when :s; month
|
173
173
|
when :S; Utils.i_to_zen(month)
|
174
174
|
when :Sk; Utils.i_to_kan(month)
|
175
|
-
when :SK;
|
175
|
+
when :SK; Utils.alt_month_name(month)
|
176
176
|
when :l; leap_month? ? "'" : ""
|
177
177
|
when :L; leap_month? ? "’" : ""
|
178
178
|
when :Lk; leap_month? ? "閏" : ""
|
data/lib/wareki/utils.rb
CHANGED
@@ -1,8 +1,10 @@
|
|
1
|
+
# coding: utf-8
|
1
2
|
module Wareki
|
2
3
|
module Utils
|
3
4
|
module_function
|
4
5
|
def kan_to_i(str)
|
5
|
-
|
6
|
+
ret3 = 0
|
7
|
+
ret4 = 0
|
6
8
|
curnum = nil
|
7
9
|
str == "零" and return 0
|
8
10
|
str.to_s.each_char do |c|
|
@@ -17,31 +19,36 @@ module Wareki
|
|
17
19
|
when "〇", "0", "0"
|
18
20
|
curnum and curnum *= 10
|
19
21
|
when "卄", "廿"
|
20
|
-
|
22
|
+
ret3 += 20
|
21
23
|
curnum = nil
|
22
24
|
when "卅", "丗"
|
23
|
-
|
25
|
+
ret3 += 30
|
24
26
|
curnum = nil
|
25
27
|
when "卌"
|
26
|
-
|
28
|
+
ret3 += 40
|
27
29
|
curnum = nil
|
28
30
|
when "皕"
|
29
|
-
|
31
|
+
ret3 += 200
|
30
32
|
curnum = nil
|
31
|
-
when "
|
33
|
+
when "万", "億", "兆", "京", "垓"
|
32
34
|
if curnum
|
33
|
-
|
34
|
-
|
35
|
-
ret += 10 ** (["十", "百", "千", "万", "億", "兆"].index(c)+1)
|
35
|
+
ret3 += curnum
|
36
|
+
curnum = nil
|
36
37
|
end
|
38
|
+
ret3 = 1 if ret3 == 0
|
39
|
+
ret4 += ret3 * 10 ** ((["万", "億", "兆", "京", "垓"].index(c)+1)*4)
|
40
|
+
ret3 = 0
|
41
|
+
when "十", "百", "千"
|
42
|
+
curnum ||= 1
|
43
|
+
ret3 += curnum * 10 ** (["十", "百", "千"].index(c)+1)
|
37
44
|
curnum = nil
|
38
45
|
end
|
39
46
|
end
|
40
47
|
if curnum
|
41
|
-
|
48
|
+
ret3 += curnum
|
42
49
|
curnum = nil
|
43
50
|
end
|
44
|
-
|
51
|
+
ret4 + ret3
|
45
52
|
end
|
46
53
|
|
47
54
|
def i_to_kan(num, opts = {})
|
@@ -160,14 +167,17 @@ module Wareki
|
|
160
167
|
|
161
168
|
def find_year(d)
|
162
169
|
jd = _to_jd(d)
|
163
|
-
YEAR_DEFS.bsearch{|y| y.end
|
170
|
+
YEAR_DEFS.bsearch{|y| y.end >= jd }
|
164
171
|
end
|
165
172
|
|
166
173
|
def find_era(d)
|
167
174
|
jd = _to_jd(d)
|
168
|
-
|
169
|
-
|
170
|
-
|
175
|
+
ERA_DEFS.reverse_each { |e|
|
176
|
+
e.start > jd and next
|
177
|
+
e.end < jd and next
|
178
|
+
return e
|
179
|
+
}
|
180
|
+
return nil
|
171
181
|
end
|
172
182
|
end
|
173
183
|
end
|
data/lib/wareki/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wareki
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tatsuki Sugiura
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-02-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -60,6 +60,7 @@ executables: []
|
|
60
60
|
extensions: []
|
61
61
|
extra_rdoc_files: []
|
62
62
|
files:
|
63
|
+
- ChangeLog
|
63
64
|
- LICENSE
|
64
65
|
- README.rdoc
|
65
66
|
- lib/wareki.rb
|
@@ -90,7 +91,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
90
91
|
version: '0'
|
91
92
|
requirements: []
|
92
93
|
rubyforge_project:
|
93
|
-
rubygems_version: 2.
|
94
|
+
rubygems_version: 2.4.5.1
|
94
95
|
signing_key:
|
95
96
|
specification_version: 4
|
96
97
|
summary: Pure ruby library of Wareki (Japanese calendar date)
|