po_to_json 0.1.0 → 1.0.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 517508ca59483a1470635ceb485aedabb2c88ff6
4
- data.tar.gz: 034e2d3771b4794ca9693c6861aad99622af76a2
3
+ metadata.gz: 1aee0b68cf67192ce248eec6d24495e4dad42bb5
4
+ data.tar.gz: 5075e170a26556b4523e630281dc11284b908bd4
5
5
  SHA512:
6
- metadata.gz: c6083f8fa476373e5c157394871782fa02f9641ff20e331254ea9b41331984a2c96de6b549b1a34657c2e71becd36476c720d15041c3fd873a68953bca7587cc
7
- data.tar.gz: 0917626f4f9c86461867d17e298d3c35986f37510de56bea0045edd243c8272fe0ba837decd3a423e9cfa71ea9497c1f2aa10e1816f4ff7e4a5da11680b68b6b
6
+ metadata.gz: 11910e0ed416033b1ca7ebafabe2528530cb28b902091451f826abf9be0f97a6647322a8a8b4d49cba627f61bb0934c8f6d0157bf38e96239a19b7955861c310
7
+ data.tar.gz: 06db938002cf111188f1a0838631895fdd6e6f847905b669573c829d7e061db50fb796f0b8716fb20552252560e6156e2c21ba4119fa8c2e0940ee725adc1c2c
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.0.0](https://github.com/webhippie/po_to_json/releases/tag/v0.1.0) - 2015-03-19
4
+
5
+ * BREAKING: Made result compatible to current Jed (#4)
6
+
3
7
  ## [0.1.0](https://github.com/webhippie/po_to_json/releases/tag/v0.1.0) - 2015-02-19
4
8
 
5
9
  * Transfer from github.com/nubis/po_to_json
data/lib/po_to_json.rb CHANGED
@@ -98,7 +98,7 @@ class PoToJson
98
98
  def parse_header
99
99
  return if reject_header
100
100
 
101
- values[""][1].split("\\n").each do |line|
101
+ values[""][0].split("\\n").each do |line|
102
102
  next if line.empty?
103
103
  build_header_for(line)
104
104
  end
@@ -107,7 +107,7 @@ class PoToJson
107
107
  end
108
108
 
109
109
  def reject_header
110
- if values[""].nil? || values[""][1].nil?
110
+ if values[""].nil? || values[""][0].nil?
111
111
  values[""] = {}
112
112
  true
113
113
  else
@@ -173,11 +173,11 @@ class PoToJson
173
173
  trans[$1.to_i] = string if key.to_s.match(/^msgstr_(\d+)/)
174
174
  end
175
175
 
176
- trans.unshift(detect_plural)
176
+ # trans.unshift(detect_plural) if detect_plural
177
177
  end
178
178
 
179
179
  def assign_trans
180
- values[detect_ctxt] = trans if trans.size > 1
180
+ values[detect_ctxt] = trans if trans.size > 0
181
181
  end
182
182
 
183
183
  def push_buffer(value, key = nil)
@@ -25,8 +25,8 @@
25
25
 
26
26
  class PoToJson
27
27
  class Version
28
- MAJOR = 0
29
- MINOR = 1
28
+ MAJOR = 1
29
+ MINOR = 0
30
30
  PATCH = 0
31
31
 
32
32
  PRE = nil
@@ -12,17 +12,17 @@ msgstr ""
12
12
  "MIME-Version: 1.0\n"
13
13
  "Content-Type: text/plain; charset=UTF-8\n"
14
14
  "Content-Transfer-Encoding: 8bit\n"
15
- "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
15
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
16
16
 
17
17
  #: app/helpers/translation_helper.rb:3
18
18
  msgid "%{relative_time} ago"
19
19
  msgstr "vor %{relative_time}"
20
20
 
21
21
  #: app/views/cars/show.html.erb:5
22
- msgid "Axis"
23
- msgid_plural "Axis"
24
- msgstr[0] "Achse"
25
- msgstr[1] "Achsen"
22
+ msgid "1 Axis"
23
+ msgid_plural "%{num} Axis"
24
+ msgstr[0] "1 Achse"
25
+ msgstr[1] "%{num} Achsen"
26
26
 
27
27
  #: app/controllers/cars_controller.rb:47
28
28
  msgid "Car was successfully created."
@@ -45,71 +45,71 @@ describe PoToJson do
45
45
 
46
46
  it "should parse embedded variables" do
47
47
  expect(subject["%{relative_time} ago"]).to(
48
- eq([nil, "vor %{relative_time}"])
48
+ eq(["vor %{relative_time}"])
49
49
  )
50
50
  end
51
51
 
52
52
  it "should match pluralizations" do
53
- expect(subject["Axis"]).to(
54
- eq(["Axis", "Achse", "Achsen"])
53
+ expect(subject["1 Axis"]).to(
54
+ eq(["1 Achse", "%{num} Achsen"])
55
55
  )
56
56
  end
57
57
 
58
58
  it "should match glued values" do
59
59
  expect(subject["Car|Model"]).to(
60
- eq([nil, "Modell"])
60
+ eq(["Modell"])
61
61
  )
62
62
  end
63
63
 
64
64
  it "should match embedded glue" do
65
65
  expect(subject["Car|Wheels count"]).to(
66
- eq([nil, "Räderzahl"])
66
+ eq(["Räderzahl"])
67
67
  )
68
68
  end
69
69
 
70
70
  it "should return empty strings as well" do
71
71
  expect(subject["Untranslated"]).to(
72
- eq([nil, ""])
72
+ eq([""])
73
73
  )
74
74
  end
75
75
 
76
76
  it "should match german umlauts" do
77
77
  expect(subject["Umläüte"]).to(
78
- eq([nil, "Umlaute"])
78
+ eq(["Umlaute"])
79
79
  )
80
80
  end
81
81
 
82
82
  it "should match escaped values" do
83
83
  expect(subject["You should escape '\\\\' as '\\\\\\\\'."]).to(
84
- eq([nil, "Du solltest '\\\\' als '\\\\\\\\' escapen."])
84
+ eq(["Du solltest '\\\\' als '\\\\\\\\' escapen."])
85
85
  )
86
86
  end
87
87
 
88
88
  it "should match multiline translations" do
89
89
  expect(subject["this is a dynamic translation which was found!"]).to(
90
- eq([nil, "Dies ist eine dynamische Übersetzung, die gefunden wurde!"])
90
+ eq(["Dies ist eine dynamische Übersetzung, die gefunden wurde!"])
91
91
  )
92
92
  end
93
93
 
94
94
  it "should match simple strings" do
95
95
  expect(subject["Car was successfully created."]).to(
96
- eq([nil, "Auto wurde erfolgreich gespeichert"])
96
+ eq(["Auto wurde erfolgreich gespeichert"])
97
97
  )
98
98
 
99
99
  expect(subject["Car was successfully updated."]).to(
100
- eq([nil, "Auto wurde erfolgreich aktualisiert"])
100
+ eq(["Auto wurde erfolgreich aktualisiert"])
101
101
  )
102
102
 
103
103
  expect(subject["Created"]).to(
104
- eq([nil, "Erstellt"])
104
+ eq(["Erstellt"])
105
105
  )
106
106
 
107
107
  expect(subject["Month"]).to(
108
- eq([nil, "Monat"])
108
+ eq(["Monat"])
109
109
  )
110
110
 
111
111
  expect(subject["car"]).to(
112
- eq([nil, "Auto"])
112
+ eq(["Auto"])
113
113
  )
114
114
  end
115
115
  end
@@ -139,7 +139,7 @@ describe PoToJson do
139
139
  end
140
140
 
141
141
  it "should include pluralization" do
142
- val = '"plural_forms":"nplurals=INTEGER; plural=EXPRESSION;"'
142
+ val = '"plural_forms":"nplurals=2; plural=(n != 1);"'
143
143
  expect(
144
144
  subject.include? val
145
145
  ).to be_truthy
@@ -176,7 +176,7 @@ describe PoToJson do
176
176
  end
177
177
 
178
178
  it "should include pluralization" do
179
- val = '"plural_forms": "nplurals=INTEGER; plural=EXPRESSION;"'
179
+ val = '"plural_forms": "nplurals=2; plural=(n != 1);"'
180
180
  expect(
181
181
  subject.include? val
182
182
  ).to be_truthy
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: po_to_json
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Boerger
@@ -9,76 +9,76 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-02-20 00:00:00.000000000 Z
12
+ date: 2015-03-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - '>='
18
+ - - ">="
19
19
  - !ruby/object:Gem::Version
20
20
  version: '0'
21
21
  type: :development
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - '>='
25
+ - - ">="
26
26
  - !ruby/object:Gem::Version
27
27
  version: '0'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: rake
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - '>='
32
+ - - ">="
33
33
  - !ruby/object:Gem::Version
34
34
  version: '0'
35
35
  type: :development
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - '>='
39
+ - - ">="
40
40
  - !ruby/object:Gem::Version
41
41
  version: '0'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: yard
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - '>='
46
+ - - ">="
47
47
  - !ruby/object:Gem::Version
48
48
  version: '0'
49
49
  type: :development
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - '>='
53
+ - - ">="
54
54
  - !ruby/object:Gem::Version
55
55
  version: '0'
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: rspec
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - '>='
60
+ - - ">="
61
61
  - !ruby/object:Gem::Version
62
62
  version: '0'
63
63
  type: :development
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - '>='
67
+ - - ">="
68
68
  - !ruby/object:Gem::Version
69
69
  version: '0'
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: json
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - '>='
74
+ - - ">="
75
75
  - !ruby/object:Gem::Version
76
76
  version: 1.6.0
77
77
  type: :runtime
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - '>='
81
+ - - ">="
82
82
  - !ruby/object:Gem::Version
83
83
  version: 1.6.0
84
84
  description: |2
@@ -92,13 +92,13 @@ extensions: []
92
92
  extra_rdoc_files: []
93
93
  files:
94
94
  - CHANGELOG.md
95
- - README.md
96
95
  - LICENSE
96
+ - README.md
97
97
  - lib/po_to_json.rb
98
98
  - lib/po_to_json/version.rb
99
- - spec/spec_helper.rb
100
99
  - spec/fixtures/test.po
101
100
  - spec/po_to_json_spec.rb
101
+ - spec/spec_helper.rb
102
102
  homepage: https://github.com/webhippie/po_to_json
103
103
  licenses:
104
104
  - MIT
@@ -109,22 +109,22 @@ require_paths:
109
109
  - lib
110
110
  required_ruby_version: !ruby/object:Gem::Requirement
111
111
  requirements:
112
- - - '>='
112
+ - - ">="
113
113
  - !ruby/object:Gem::Version
114
- version: '0'
114
+ version: 1.9.3
115
115
  required_rubygems_version: !ruby/object:Gem::Requirement
116
116
  requirements:
117
- - - '>='
117
+ - - ">="
118
118
  - !ruby/object:Gem::Version
119
119
  version: '0'
120
120
  requirements: []
121
121
  rubyforge_project:
122
- rubygems_version: 2.0.3
122
+ rubygems_version: 2.4.5
123
123
  signing_key:
124
124
  specification_version: 4
125
125
  summary: Convert gettext PO files to JSON
126
126
  test_files:
127
- - spec/spec_helper.rb
128
127
  - spec/fixtures/test.po
129
128
  - spec/po_to_json_spec.rb
129
+ - spec/spec_helper.rb
130
130
  has_rdoc: