era_ja 1.1.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 38838bfc2c49efc21bfb6ea0ad206af0cdda6d67c66e21eb786d02990e1c2edd
4
- data.tar.gz: 2fe65c8cf87ea96e14840c0835f02a87469ac92e2b3cbaddc008284d39691bcf
3
+ metadata.gz: 06b4e1ea6e0f49b2428040951c2bc627f6f7000c02b9909b4df5420275c6241c
4
+ data.tar.gz: 77e516fc1ebff2d48ad04ff8bb89af8f3a062ae08edce64f7a21ad354097f888
5
5
  SHA512:
6
- metadata.gz: 6c7c3e10a11d56a7c33670629e4570f2e4b19a935d42a53d6f1a825846cc660fe70eb8d7035466541e9536919c34b3a3b5c992b95a5db4a3e3137e19fe98c523
7
- data.tar.gz: 8940a5d449b38cce4be8e10f54f228ca78afdc24743d51956748490eb058f42804e999094ae0de7d9496cc74ecc1f6bb98c186364bf2369a44fb9bc2c676d3fb
6
+ metadata.gz: 61cdbea263b6f00aa2b361c57cb01f66c3fc61382584ae8663d1d9cc519499a88ebb5968d131173496ba4cfdc44830cc4cc57c5782d9f6f9a4c243d120495bd3
7
+ data.tar.gz: 93ec6a7997073615c201a53360f7c82c636905b4a8cd77a341e10130c850fae1ca252bde8be92d8b550a75e0c1f91770532a21ef1a2a5c280275544bd2b484a9
@@ -4,7 +4,8 @@ rvm:
4
4
  - 2.1.10
5
5
  - 2.2.10
6
6
  - 2.3.8
7
- - 2.4.5
8
- - 2.5.5
9
- - 2.6.2
7
+ - 2.4.9
8
+ - 2.5.7
9
+ - 2.6.5
10
+ - 2.7.0
10
11
  script: bundle exec rspec spec
@@ -30,16 +30,19 @@
30
30
 
31
31
  EraJa#to_eraメソッドでの追加のフォーマット文字列は以下の通りです。
32
32
 
33
- * %o: 元号(アルファベット)
34
- * %O: 元号(漢字)
35
- * %E: 元号の年
33
+ * %o: 元号(アルファベット)
34
+ * %O: 元号(漢字)
35
+ * %1O: 元号(漢字1文字)
36
+ * %E: 元号の年
37
+ * %-E: 元号の年(1から9まで1ケタ)
38
+ * %J: 漢数字
36
39
 
37
40
  ### Timeインスタンスを和暦に変換します。
38
41
 
39
42
  ```ruby
40
43
  require 'era_ja'
41
- Time.mktime(2012,4,29).to_era # => "H24.4.29"
42
- Time.mktime(2012,4,29).to_era("%O%E年%m月%d日") # => "平成24年4月29日"
44
+ Time.mktime(2012,4,29).to_era # => "H24.04.29"
45
+ Time.mktime(2012,4,29).to_era("%O%E年%-m月%d日") # => "平成24年4月29日"
43
46
  Time.mktime(2012,4,29).to_era("%O%JE年%Jm月%Jd日") # => "平成二十四年四月二十九日"
44
47
  ```
45
48
 
@@ -47,8 +50,8 @@ Time.mktime(2012,4,29).to_era("%O%JE年%Jm月%Jd日") # => "平成二十四年
47
50
 
48
51
  ```ruby
49
52
  require 'era_ja
50
- Date.new(2012,4,29).to_era # => "H24.4.29"
51
- Date.new(2012,4,29).to_era("%O%E年%m月%d日") # => "平成24年4月29日"
53
+ Date.new(2012,4,29).to_era # => "H24.04.29"
54
+ Date.new(2012,4,29).to_era("%O%E年%-m月%d日") # => "平成24年4月29日"
52
55
  Date.new(2012,4,29).to_era("%O%JE年%Jm月%Jd日") # => "平成二十四年四月二十九日"
53
56
  ```
54
57
 
@@ -73,9 +76,9 @@ Time.mktime(2012,4,29).to_era("%1O%E年%m月%d日") # => "平24年4月29日"
73
76
 
74
77
  ```ruby
75
78
  require 'era_ja'
76
- Time.mktime(2012,4,29).to_era(era_names: { heisei: ['h', '平'] }) # => "h24.4.29"
77
- Time.mktime(2012,4,29).to_era("%O%E年%m月%d日", era_names: { heisei: ['h', '平'] }) # => "平24年4月29日"
78
- Time.mktime(2012,4,29).to_era("%O%JE年%Jm月%Jd日", era_names: { heisei: ['h', '平'] }) # => "平二十四年四月二十九日"
79
+ Time.mktime(2012,4,29).to_era(era_names: { heisei: ['h', '平'] }) # => "h24.04.29"
80
+ Time.mktime(2012,4,29).to_era("%O%E年%-m月%d日", era_names: { heisei: ['h', '平'] }) # => "平24年4月29日"
81
+ Time.mktime(2012,4,29).to_era("%O%JE年%Jm月%Jd日", era_names: { heisei: ['h', '平'] }) # => "平二十四年四月二十九日"
79
82
  # same as Date
80
83
  ```
81
84
 
data/README.md CHANGED
@@ -34,14 +34,15 @@ Extra format strings provided by EraJa#to_era are:
34
34
  * %O: era(kanzi)
35
35
  * %1O: era(single kanzi)
36
36
  * %E: era year
37
+ * %-E: era year(single digit format from 1 to 9)
37
38
  * %J: kanzi numeral
38
39
 
39
40
  ### Time instance to Japanese era
40
41
 
41
42
  ```ruby
42
43
  require 'era_ja'
43
- Time.mktime(2012,4,29).to_era # => "H24.4.29"
44
- Time.mktime(2012,4,29).to_era("%O%E年%m月%d日") # => "平成24年4月29日"
44
+ Time.mktime(2012,4,29).to_era # => "H24.04.29"
45
+ Time.mktime(2012,4,29).to_era("%O%E年%-m月%d日") # => "平成24年4月29日"
45
46
  Time.mktime(2012,4,29).to_era("%O%JE年%Jm月%Jd日") # => "平成二十四年四月二十九日"
46
47
  ```
47
48
 
@@ -49,8 +50,8 @@ Time.mktime(2012,4,29).to_era("%O%JE年%Jm月%Jd日") # => "平成二十四年
49
50
 
50
51
  ```ruby
51
52
  require 'era_ja'
52
- Date.new(2012,4,29).to_era # => "H24.4.29"
53
- Date.new(2012,4,29).to_era("%O%E年%m月%d日") # => "平成24年4月29日"
53
+ Date.new(2012,4,29).to_era # => "H24.04.29"
54
+ Date.new(2012,4,29).to_era("%O%E年%-m月%d日") # => "平成24年4月29日"
54
55
  Date.new(2012,4,29).to_era("%O%JE年%Jm月%Jd日") # => "平成二十四年四月二十九日"
55
56
  ```
56
57
 
@@ -74,9 +75,9 @@ To convert to custom era strings, you can set `era_names` .
74
75
 
75
76
  ```ruby
76
77
  require 'era_ja'
77
- Time.mktime(2012,4,29).to_era(era_names: { heisei: ['h', '平'] }) # => "h24.4.29"
78
- Time.mktime(2012,4,29).to_era("%O%E年%m月%d日", era_names: { heisei: ['h', '平'] }) # => "平24年4月29日"
79
- Time.mktime(2012,4,29).to_era("%O%JE年%Jm月%Jd日", era_names: { heisei: ['h', '平'] }) # => "平二十四年四月二十九日"
78
+ Time.mktime(2012,4,29).to_era(era_names: { heisei: ['h', '平'] }) # => "h24.04.29"
79
+ Time.mktime(2012,4,29).to_era("%O%E年%-m月%d日", era_names: { heisei: ['h', '平'] }) # => "平24年4月29日"
80
+ Time.mktime(2012,4,29).to_era("%O%JE年%Jm月%Jd日", era_names: { heisei: ['h', '平'] }) # => "平二十四年四月二十九日"
80
81
  # same as Date
81
82
  ```
82
83
 
@@ -53,7 +53,7 @@ module EraJa
53
53
 
54
54
  private
55
55
  def era_year(year, era, era_names)
56
- strftime(@era_format).sub(/(%J)?%E/) { format_year(year, $1) }.sub(/%1?o/i) { format_era(era, era_names) }
56
+ strftime(@era_format).sub(/(%J)?(%-?E)/) { format_year(year, $1, $2) }.sub(/%1?o/i) { format_era(era, era_names) }
57
57
  end
58
58
 
59
59
  def format_era(era, era_names)
@@ -67,11 +67,19 @@ module EraJa
67
67
  end
68
68
  end
69
69
 
70
- def format_year(year, match)
70
+ def format_year(year, match, digit)
71
71
  era_year = sprintf("%02d", year)
72
+
72
73
  if match == "%J"
73
- era_year = year == 1 ? "元" : to_kanzi(era_year)
74
+ return year == 1 ? "元" : to_kanzi(era_year)
74
75
  end
76
+
77
+ era_year = if digit == "%-E"
78
+ sprintf("%01d", year)
79
+ else
80
+ sprintf("%02d", year)
81
+ end
82
+
75
83
  era_year
76
84
  end
77
85
 
@@ -1,3 +1,3 @@
1
1
  module EraJa
2
- VERSION = "1.1.0"
2
+ VERSION = "1.2.0"
3
3
  end
@@ -8,12 +8,24 @@ RSpec.shared_examples "should equal 'R01.07.02'" do
8
8
  context "with '%o%E.%m.%d'" do
9
9
  it { expect(subject.to_era("%o%E.%m.%d")).to eq "R01.07.02" }
10
10
  end
11
+
12
+ context "with '%o%-E.%-m.%-d'" do
13
+ it { expect(subject.to_era("%o%-E.%-m.%-d")).to eq "R1.7.2" }
14
+ end
11
15
  end
12
16
 
13
17
  RSpec.shared_examples "should equal '令和01年07月02日'" do
14
18
  context "with '%O%E年%m月%d日'" do
15
19
  it { expect(subject.to_era("%O%E年%m月%d日")).to eq "令和01年07月02日" }
16
20
  end
21
+
22
+ context "with '%O%-E年%m月%d日'" do
23
+ it { expect(subject.to_era("%O%-E年%m月%d日")).to eq "令和1年07月02日" }
24
+ end
25
+
26
+ context "with '%O%J%-E年%m月%d日'" do
27
+ it { expect(subject.to_era("%O%J%-E年%m月%d日")).to eq "令和元年07月02日" }
28
+ end
17
29
  end
18
30
 
19
31
  RSpec.shared_examples "should equal 'R01.05.01'" do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: era_ja
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - tomi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-04-15 00:00:00.000000000 Z
11
+ date: 2020-01-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -140,7 +140,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
140
140
  - !ruby/object:Gem::Version
141
141
  version: '0'
142
142
  requirements: []
143
- rubygems_version: 3.0.1
143
+ rubygems_version: 3.0.3
144
144
  signing_key:
145
145
  specification_version: 4
146
146
  summary: Convert Date or Time instance to String of Japanese era.