po_to_json 2.0.0 → 2.1.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 +4 -4
- data/CHANGELOG.md +14 -0
- data/README.md +22 -22
- data/lib/po_to_json/version.rb +3 -13
- data/lib/po_to_json.rb +6 -4
- metadata +5 -63
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8deee8f91ad92a42c342a84812863b87c3515c5b19144df457ad839c42458c43
|
4
|
+
data.tar.gz: 1e972d0b2541eb33e81f14202b9e97d746879efe8bae5230a7b34e5db5ec8951
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 89e464f05489ac1df010a7f704e59ac44c02105af09a26cd48d9df697be4e245af74c6851da12ee3a8eb7110e7bd6d4a8cd3373b74b0f143c05225e47f261d0c
|
7
|
+
data.tar.gz: e38ba37be53241be11fee111c4cfa6189e2a1aec38a8827c09c26e78ca84c1644fcfd3ecac9a338674b7e7165069e1c902e9c7fe4e47d73389039acceb5bd837
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,19 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## [2.1.0](https://github.com/webhippie/po_to_json/compare/v2.0.0...v2.1.0) (2025-09-12)
|
4
|
+
|
5
|
+
|
6
|
+
### Features
|
7
|
+
|
8
|
+
* allow installation of more current listen version and ignore it for renovate ([c14cd42](https://github.com/webhippie/po_to_json/commit/c14cd42794536e335a97cbace1cb237f5d116451))
|
9
|
+
* integrate automated release process ([70f4f6d](https://github.com/webhippie/po_to_json/commit/70f4f6dbffc9dee4b0874c1e5bea3d83f35abc64))
|
10
|
+
* update rubocop rules and test cases ([7686d98](https://github.com/webhippie/po_to_json/commit/7686d98f1e6a93922c17961e7d17fa8e6b7e12a8))
|
11
|
+
|
12
|
+
|
13
|
+
### Bugfixes
|
14
|
+
|
15
|
+
* always download via https from rubygems ([5c14652](https://github.com/webhippie/po_to_json/commit/5c14652bb2d334ba94beed35f33b20d267cdd22f))
|
16
|
+
|
3
17
|
## [2.0.0](https://github.com/webhippie/po_to_json/releases/tag/v2.0.0) - 2023-07-18
|
4
18
|
|
5
19
|
* Fix escape double quote in msgid (@chaomao)
|
data/README.md
CHANGED
@@ -16,7 +16,7 @@ look at the [wokflow][workflow].
|
|
16
16
|
## Installation
|
17
17
|
|
18
18
|
```ruby
|
19
|
-
gem
|
19
|
+
gem 'po_to_json', '~> 2.1.0'
|
20
20
|
```
|
21
21
|
|
22
22
|
## Versioning
|
@@ -33,7 +33,7 @@ gem using the [Pessimistic Version Constraint][pvc] with two digits of precision
|
|
33
33
|
For example:
|
34
34
|
|
35
35
|
```ruby
|
36
|
-
spec.add_dependency
|
36
|
+
spec.add_dependency 'po_to_json', '~> 2.1.0'
|
37
37
|
```
|
38
38
|
|
39
39
|
## Usage
|
@@ -42,19 +42,19 @@ Most common use would be to generate a Jed ready javascript file. For example,
|
|
42
42
|
in a Rails project:
|
43
43
|
|
44
44
|
```ruby
|
45
|
-
require
|
45
|
+
require 'po_to_json'
|
46
46
|
|
47
47
|
json = PoToJson.new(
|
48
|
-
Rails.root.join(
|
49
|
-
).generate_for_jed(
|
48
|
+
Rails.root.join('locale', 'de', 'app.po')
|
49
|
+
).generate_for_jed('de')
|
50
50
|
|
51
51
|
Rails.root.join(
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
52
|
+
'app',
|
53
|
+
'assets',
|
54
|
+
'javascripts',
|
55
|
+
'locale',
|
56
|
+
'de',
|
57
|
+
'app.js'
|
58
58
|
).write(json)
|
59
59
|
```
|
60
60
|
|
@@ -62,19 +62,19 @@ If you need a pretty json, add `pretty: true` to `generate_for_jed`, like the
|
|
62
62
|
following example:
|
63
63
|
|
64
64
|
```ruby
|
65
|
-
require
|
65
|
+
require 'po_to_json'
|
66
66
|
|
67
67
|
json = PoToJson.new(
|
68
|
-
Rails.root.join(
|
69
|
-
).generate_for_jed(
|
68
|
+
Rails.root.join('locale', 'de', 'app.po')
|
69
|
+
).generate_for_jed('de', pretty: true)
|
70
70
|
|
71
71
|
Rails.root.join(
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
72
|
+
'app',
|
73
|
+
'assets',
|
74
|
+
'javascripts',
|
75
|
+
'locale',
|
76
|
+
'de',
|
77
|
+
'app.js'
|
78
78
|
).write(json)
|
79
79
|
```
|
80
80
|
|
@@ -82,8 +82,8 @@ The javascript file generated has a global "locales" object with an attribute
|
|
82
82
|
corresponding to the generated language:
|
83
83
|
|
84
84
|
```javascript
|
85
|
-
i18n = new Jed(locales[
|
86
|
-
i18n.gettext(
|
85
|
+
i18n = new Jed(locales['de'])
|
86
|
+
i18n.gettext('Hello World') // Should evaluate to 'Hallo Welt'
|
87
87
|
```
|
88
88
|
|
89
89
|
## Contributing
|
data/lib/po_to_json/version.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
#
|
2
4
|
# Copyright (c) 2012-2015 Dropmysite.com <https://dropmyemail.com>
|
3
5
|
# Copyright (c) 2015 Webhippie <http://www.webhippie.de>
|
@@ -23,17 +25,5 @@
|
|
23
25
|
#
|
24
26
|
|
25
27
|
class PoToJson
|
26
|
-
|
27
|
-
MAJOR = 2
|
28
|
-
MINOR = 0
|
29
|
-
PATCH = 0
|
30
|
-
|
31
|
-
PRE = nil
|
32
|
-
|
33
|
-
class << self
|
34
|
-
def to_s
|
35
|
-
[MAJOR, MINOR, PATCH, PRE].compact.join(".")
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|
28
|
+
VERSION = "2.1.0".freeze
|
39
29
|
end
|
data/lib/po_to_json.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
#
|
2
4
|
# Copyright (c) 2012-2015 Dropmysite.com <https://dropmyemail.com>
|
3
5
|
# Copyright (c) 2015 Webhippie <http://www.webhippie.de>
|
@@ -143,7 +145,7 @@ class PoToJson
|
|
143
145
|
msgid = buffer[:msgid]
|
144
146
|
|
145
147
|
if msgctxt && !msgctxt.empty?
|
146
|
-
[msgctxt, glue, msgid].join
|
148
|
+
[msgctxt, glue, msgid].join
|
147
149
|
else
|
148
150
|
msgid
|
149
151
|
end
|
@@ -168,13 +170,13 @@ class PoToJson
|
|
168
170
|
|
169
171
|
def push_buffer(value, key = nil)
|
170
172
|
value = $1 if value =~ /^"(.*)"/
|
171
|
-
value.gsub!(
|
173
|
+
value.gsub!('\"', "\"")
|
172
174
|
|
173
175
|
if key.nil?
|
174
176
|
buffer[lastkey] = [
|
175
177
|
buffer[lastkey],
|
176
178
|
value
|
177
|
-
].join
|
179
|
+
].join
|
178
180
|
else
|
179
181
|
buffer[key] = value
|
180
182
|
@lastkey = key
|
@@ -308,7 +310,7 @@ class PoToJson
|
|
308
310
|
}, {
|
309
311
|
regex: /^(?:#~ )?msgstr\[(\d+)\]\s+(.*)/,
|
310
312
|
index: 2,
|
311
|
-
key: proc { |m| "msgstr_#{m[1]}"
|
313
|
+
key: proc { |m| :"msgstr_#{m[1]}" }
|
312
314
|
}, {
|
313
315
|
regex: /^(?:#~ )?"/,
|
314
316
|
index: nil
|
metadata
CHANGED
@@ -1,72 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: po_to_json
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thomas Boerger
|
8
8
|
- Nubis
|
9
|
-
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
|
-
- !ruby/object:Gem::Dependency
|
15
|
-
name: bundler
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
17
|
-
requirements:
|
18
|
-
- - ">="
|
19
|
-
- !ruby/object:Gem::Version
|
20
|
-
version: '0'
|
21
|
-
type: :development
|
22
|
-
prerelease: false
|
23
|
-
version_requirements: !ruby/object:Gem::Requirement
|
24
|
-
requirements:
|
25
|
-
- - ">="
|
26
|
-
- !ruby/object:Gem::Version
|
27
|
-
version: '0'
|
28
|
-
- !ruby/object:Gem::Dependency
|
29
|
-
name: rake
|
30
|
-
requirement: !ruby/object:Gem::Requirement
|
31
|
-
requirements:
|
32
|
-
- - ">="
|
33
|
-
- !ruby/object:Gem::Version
|
34
|
-
version: '0'
|
35
|
-
type: :development
|
36
|
-
prerelease: false
|
37
|
-
version_requirements: !ruby/object:Gem::Requirement
|
38
|
-
requirements:
|
39
|
-
- - ">="
|
40
|
-
- !ruby/object:Gem::Version
|
41
|
-
version: '0'
|
42
|
-
- !ruby/object:Gem::Dependency
|
43
|
-
name: rspec
|
44
|
-
requirement: !ruby/object:Gem::Requirement
|
45
|
-
requirements:
|
46
|
-
- - ">="
|
47
|
-
- !ruby/object:Gem::Version
|
48
|
-
version: '0'
|
49
|
-
type: :development
|
50
|
-
prerelease: false
|
51
|
-
version_requirements: !ruby/object:Gem::Requirement
|
52
|
-
requirements:
|
53
|
-
- - ">="
|
54
|
-
- !ruby/object:Gem::Version
|
55
|
-
version: '0'
|
56
|
-
- !ruby/object:Gem::Dependency
|
57
|
-
name: yard
|
58
|
-
requirement: !ruby/object:Gem::Requirement
|
59
|
-
requirements:
|
60
|
-
- - ">="
|
61
|
-
- !ruby/object:Gem::Version
|
62
|
-
version: '0'
|
63
|
-
type: :development
|
64
|
-
prerelease: false
|
65
|
-
version_requirements: !ruby/object:Gem::Requirement
|
66
|
-
requirements:
|
67
|
-
- - ">="
|
68
|
-
- !ruby/object:Gem::Version
|
69
|
-
version: '0'
|
70
13
|
- !ruby/object:Gem::Dependency
|
71
14
|
name: json
|
72
15
|
requirement: !ruby/object:Gem::Requirement
|
@@ -99,8 +42,8 @@ files:
|
|
99
42
|
homepage: https://github.com/webhippie/po_to_json
|
100
43
|
licenses:
|
101
44
|
- MIT
|
102
|
-
metadata:
|
103
|
-
|
45
|
+
metadata:
|
46
|
+
rubygems_mfa_required: 'true'
|
104
47
|
rdoc_options: []
|
105
48
|
require_paths:
|
106
49
|
- lib
|
@@ -115,8 +58,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
115
58
|
- !ruby/object:Gem::Version
|
116
59
|
version: '0'
|
117
60
|
requirements: []
|
118
|
-
rubygems_version: 3.
|
119
|
-
signing_key:
|
61
|
+
rubygems_version: 3.6.9
|
120
62
|
specification_version: 4
|
121
63
|
summary: Convert gettext PO files to JSON
|
122
64
|
test_files: []
|