ios_localizer 0.0.1 → 0.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.
data/README.md CHANGED
@@ -1 +1,105 @@
1
+ iOS Localizer
2
+ =============
1
3
 
4
+ A Ruby gem that makes it easy to localize iOS applications.
5
+
6
+ This gem uses [Google Translate's REST API] to translate all the Localizable.strings
7
+ files generated by XCode to the file's respective language.
8
+
9
+ Created by Daniel Olshansky ([@olshansky]) and Amandeep Grewal ([@amandeep]).
10
+
11
+ Prerequisites
12
+ -------------
13
+
14
+ ### 1. API Access
15
+
16
+ Google's translating services cost $20 per 1M characters so you must get
17
+ a valid key prior to using this gem.
18
+
19
+ Go to the [Google APIs Console]. Under *Services*, enable *Translate API* and complete the required
20
+ forms to enable payments.
21
+
22
+ ### 2. Localizing your strings
23
+
24
+ I would also personally recommend that all the strings displayed to the user
25
+ should be removed from any .nib files and added via code to make your
26
+ project more systematic and easier to manage.
27
+
28
+ Any string displayed to the User must be formatted in the following way:
29
+ ```
30
+ NSLocalizedString(@"String to be displayed", @"Comment about the string");
31
+ ```
32
+
33
+ ### 3. Localizable.strings files
34
+
35
+ Create a new Strings file:
36
+ - Go to *File > New > File*
37
+ - On the left hand side go to Resource (iOS or OS X depending on the application)
38
+ and choose *Strings File*. Call the file *Localizable.strings*.
39
+
40
+ Select the new Localizable.strings file and make it localizable by clicking the *[Make localized]* button.
41
+
42
+ ### 4. Adding new languages
43
+
44
+ Adding an additional language is very simple with XCode. [This image] shows you where
45
+ you can choose to add or remove languages that application should be localized for depending on who your target
46
+ demographic.
47
+
48
+ Installation
49
+ ------------
50
+ ```
51
+ gem install ios_localizer
52
+ ```
53
+
54
+ Usage
55
+ -----
56
+ * Navigate into your project's directory in terminal:
57
+
58
+ i.e. ```cd ~/Documents/workspace/ExampleProjectName/ ```
59
+
60
+ * The most common use case of the gem would then be:
61
+
62
+ i.e. ```ios_localizer -k YoureKeyHere1234567890 ```
63
+
64
+ * If the source language is not english, you can specify it as follows:
65
+
66
+ i.e. ```ios_localizer -k YoureKeyHere1234567890 -s nl```
67
+
68
+ where `nl` is the ISO 639 representation of the source language
69
+
70
+ * If you have already run the script but added a new localization
71
+ language afterwards, you can avoid retranslating (and wasting your credit) as follows:
72
+
73
+ i.e. ```ios_localizer -k YoureKeyHere1234567890 -n la -n lb -n lc```
74
+
75
+ where `la`, `lb` and `lc` are the ISO 639 representations of the languages you
76
+ would like to avoid translating to (given that you have added them in
77
+ XCode under Localizations).
78
+
79
+ Contributing
80
+ ------------
81
+ Any and all pull requests are welcome!
82
+
83
+ Copyright and license
84
+ ---------------------
85
+
86
+ Copyright 2012 Daniel Olshansky & Amandeep Grewal
87
+
88
+ Licensed under the Apache License, Version 2.0 (the "License");
89
+ you may not use this work except in compliance with the License.
90
+ You may obtain a copy of the License in the LICENSE file, or at:
91
+
92
+ http://www.apache.org/licenses/LICENSE-2.0
93
+
94
+ Unless required by applicable law or agreed to in writing, software
95
+ distributed under the License is distributed on an "AS IS" BASIS,
96
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
97
+ See the License for the specific language governing permissions and
98
+ limitations under the License.
99
+
100
+ [@olshansky]: http://twitter.com/olshansky
101
+ [@amandeep]: http://twitter.com/amandeep
102
+ [Google APIs Console]: https://code.google.com/apis/console/
103
+ [Google Translate's REST API]: https://developers.google.com/translate/v2/using_rest
104
+ [This image]: https://github.com/Olshansk/ios_localizer/raw/master/images/Add%20Language.png
105
+ [Make localized]: https://github.com/Olshansk/ios_localizer/raw/master/images/Localize.png
Binary file
Binary file
@@ -5,6 +5,7 @@ require 'ios_localizer/version'
5
5
 
6
6
  Gem::Specification.new do |gem|
7
7
  gem.name = "ios_localizer"
8
+ gem.date = Date.today
8
9
  gem.version = IosLocalizer::VERSION
9
10
  gem.authors = ["Daniel Olshansky", "Amandeep Grewal"]
10
11
  gem.email = ["olshansky.daniel@gmail.com", "me@amandeep.ca"]
@@ -17,11 +18,7 @@ Gem::Specification.new do |gem|
17
18
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
19
  gem.require_paths = ["lib"]
19
20
 
20
- gem.add_development_dependency "uri"
21
- gem.add_development_dependency "net/https"
22
- gem.add_development_dependency "json"
23
- gem.add_development_dependency "cgi"
24
- gem.add_development_dependency "htmlentities"
25
- gem.add_development_dependency "optparse"
21
+ gem.add_dependency "json"
22
+ gem.add_dependency "htmlentities"
26
23
 
27
24
  end
@@ -1,3 +1,3 @@
1
1
  module IosLocalizer
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.1.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ios_localizer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,75 +10,31 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-09-09 00:00:00.000000000 -04:00
13
+ date: 2012-09-10 00:00:00.000000000 -04:00
14
14
  default_executable:
15
15
  dependencies:
16
- - !ruby/object:Gem::Dependency
17
- name: uri
18
- requirement: &70338768892080 !ruby/object:Gem::Requirement
19
- none: false
20
- requirements:
21
- - - ! '>='
22
- - !ruby/object:Gem::Version
23
- version: '0'
24
- type: :development
25
- prerelease: false
26
- version_requirements: *70338768892080
27
- - !ruby/object:Gem::Dependency
28
- name: net/https
29
- requirement: &70338768891600 !ruby/object:Gem::Requirement
30
- none: false
31
- requirements:
32
- - - ! '>='
33
- - !ruby/object:Gem::Version
34
- version: '0'
35
- type: :development
36
- prerelease: false
37
- version_requirements: *70338768891600
38
16
  - !ruby/object:Gem::Dependency
39
17
  name: json
40
- requirement: &70338768891100 !ruby/object:Gem::Requirement
18
+ requirement: &70328367060260 !ruby/object:Gem::Requirement
41
19
  none: false
42
20
  requirements:
43
21
  - - ! '>='
44
22
  - !ruby/object:Gem::Version
45
23
  version: '0'
46
- type: :development
24
+ type: :runtime
47
25
  prerelease: false
48
- version_requirements: *70338768891100
49
- - !ruby/object:Gem::Dependency
50
- name: cgi
51
- requirement: &70338768890640 !ruby/object:Gem::Requirement
52
- none: false
53
- requirements:
54
- - - ! '>='
55
- - !ruby/object:Gem::Version
56
- version: '0'
57
- type: :development
58
- prerelease: false
59
- version_requirements: *70338768890640
26
+ version_requirements: *70328367060260
60
27
  - !ruby/object:Gem::Dependency
61
28
  name: htmlentities
62
- requirement: &70338768890140 !ruby/object:Gem::Requirement
63
- none: false
64
- requirements:
65
- - - ! '>='
66
- - !ruby/object:Gem::Version
67
- version: '0'
68
- type: :development
69
- prerelease: false
70
- version_requirements: *70338768890140
71
- - !ruby/object:Gem::Dependency
72
- name: optparse
73
- requirement: &70338768889660 !ruby/object:Gem::Requirement
29
+ requirement: &70328367059800 !ruby/object:Gem::Requirement
74
30
  none: false
75
31
  requirements:
76
32
  - - ! '>='
77
33
  - !ruby/object:Gem::Version
78
34
  version: '0'
79
- type: :development
35
+ type: :runtime
80
36
  prerelease: false
81
- version_requirements: *70338768889660
37
+ version_requirements: *70328367059800
82
38
  description: Uses Google Translate's REST API to properly translate the source Localizable.strings
83
39
  file to each of the specified languages
84
40
  email:
@@ -95,6 +51,8 @@ files:
95
51
  - README.md
96
52
  - Rakefile
97
53
  - bin/ios_localizer
54
+ - images/Add Language.png
55
+ - images/Localize.png
98
56
  - ios_localizer.gemspec
99
57
  - lib/ios_localizer.rb
100
58
  - lib/ios_localizer/version.rb