convert-strings-ios-and 0.1.1

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 +7 -0
  2. data/lib/convert-strings-ios-and.rb +95 -0
  3. metadata +44 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 399dd07c9f1fd6437e1c58a29acc8070f5312d13
4
+ data.tar.gz: 5a9facaafc13ed3f824aa1a2013a452d2954a6d6
5
+ SHA512:
6
+ metadata.gz: fb7afd61241ff0d38c240cc62e29453524d9246b44482df143a6eebde427ec1d21936258023a7bad80a30b810b1eb97ad812650c23a853274908c2c5f8ffca96
7
+ data.tar.gz: 4857a375e348da6fc63d4b2e89be800415184c3a21d1e17df9c11490294e3153fb25dd04fb3889aa60bb4d398b0ae072dd16347abae3c76d77c611aaa3e50a89
@@ -0,0 +1,95 @@
1
+ #
2
+ # Convert Strings iOS <-> Android
3
+ #
4
+ # last update 2016.12.07
5
+ #
6
+ # hwj4477@gmail.com
7
+ #
8
+
9
+ require 'net/http'
10
+ require 'json'
11
+
12
+ class ConvertStrings
13
+
14
+ def self.ios_to_android(stringsPath)
15
+
16
+ resultFile = File.open('strings.xml', 'wb')
17
+
18
+ File.open(stringsPath) do |file|
19
+
20
+ resultFile.puts "<?xml version=\"1.0\" encoding=\"utf-8\"?>"
21
+ resultFile.puts "\n"
22
+
23
+ while line = file.gets
24
+
25
+ # puts strings
26
+ if line =~ /"/ && line.split("=").count == 2
27
+
28
+ key = line.split("=").first.strip
29
+ value = line.split("=").last.strip.gsub(/"/, "").gsub(/;/, "")
30
+
31
+ resultFile.puts "<string name=#{key}>#{value}</string>"
32
+
33
+ end
34
+
35
+ # puts comment
36
+ if line =~ /\/\//
37
+
38
+ comment = line.gsub(/\/\//, "").strip
39
+
40
+ resultFile.puts "<!-- #{comment} -->"
41
+
42
+ end
43
+
44
+ end
45
+
46
+ end
47
+
48
+ # result
49
+ yield File.absolute_path(resultFile.path)
50
+
51
+ end
52
+
53
+ def self.android_to_ios(stringsPath)
54
+
55
+ resultFile = File.open('Localizable.strings', 'wb')
56
+
57
+ File.open(stringsPath) do |file|
58
+
59
+ while line = file.gets
60
+
61
+ # puts strings
62
+ if line =~ /<string name="/
63
+
64
+ key_value = line.strip.gsub(/<string name="/, "").gsub(/<\/string>/, "").split("\">")
65
+
66
+ if key_value.count == 2
67
+
68
+ key = key_value.first
69
+ value = key_value.last
70
+
71
+ resultFile.puts "\"#{key}\" = \"#{value}\";"
72
+
73
+ end
74
+
75
+ end
76
+
77
+ # puts comment
78
+ if line =~ /<!--/
79
+
80
+ comment = line.gsub(/<!--/, "//").gsub(/-->/, "").strip
81
+
82
+ resultFile.puts comment
83
+
84
+ end
85
+
86
+ end
87
+
88
+ end
89
+
90
+ # result
91
+ yield File.absolute_path(resultFile.path)
92
+
93
+ end
94
+
95
+ end
metadata ADDED
@@ -0,0 +1,44 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: convert-strings-ios-and
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.1
5
+ platform: ruby
6
+ authors:
7
+ - hwj4477
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-12-07 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Strings Converter
14
+ email: hwj4477@gmail.com
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - lib//convert-strings-ios-and.rb
20
+ homepage: http://github.com/hwj4477/convert-strings-ios-and
21
+ licenses:
22
+ - hwj4477
23
+ metadata: {}
24
+ post_install_message:
25
+ rdoc_options: []
26
+ require_paths:
27
+ - lib
28
+ required_ruby_version: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ required_rubygems_version: !ruby/object:Gem::Requirement
34
+ requirements:
35
+ - - ">="
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ requirements: []
39
+ rubyforge_project:
40
+ rubygems_version: 2.4.8
41
+ signing_key:
42
+ specification_version: 4
43
+ summary: Convert Strings iOS <-> Android
44
+ test_files: []