ObjCLocalizableConst 1.0.1 → 1.0.2

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
  SHA1:
3
- metadata.gz: f905f792a3726b70775b614ad1203a52f284fe1b
4
- data.tar.gz: 9746235262c1cc5194f38e4a5691f5d7fb74e80d
3
+ metadata.gz: 391c372852c7170bf9e0df99a0681a38646ff237
4
+ data.tar.gz: ace9757711d96cf213beb052ed265dc09ca164ee
5
5
  SHA512:
6
- metadata.gz: 58797f0d737afdfea61211ede73c341c777b561ac4e79e6e781508e6d7b0a8bd2fdd8fd82f2f08aebf0013ae02929b5a8b4593defd04c3a3a20aa536a49da556
7
- data.tar.gz: 43ec8ad3d753ed3c676d64839d8018b1d6b380dc8527adf0383a8e45576601349290f7b18e9a05b63515076bce7d9b932bc53d6ed4f35d3df63df4ea1226edcb
6
+ metadata.gz: 85e22707aa27fdc098fe3bec90c9c494bf1cebc7f93566d5c20d687120075667ad4b2219969254d278c8f2ddf49d3fa14f4bc82be77c51d2329b2474ce491540
7
+ data.tar.gz: 124fa5263e3764f956bf097ba5d6b00c5e186b74f94a55ab3df3b7655d8d725ae1788011b2d03ab58e2c948f375ea082b64db120d07baea1d12e81339fa07164
@@ -1,3 +1,33 @@
1
1
  #!/usr/bin/env ruby
2
- require 'ObjCLocalizableConst'
3
- ObjCLocalizableConst.running(ARGV[0], ARGV[1])
2
+
3
+ require 'rubygems'
4
+ require 'commander/import'
5
+ require 'active_support/all'
6
+
7
+ require_relative '../lib/ObjCLocalizableConstGenerate'
8
+ require_relative '../lib/ObjCLocalizableConstReplace'
9
+
10
+ program :name, 'ObjCLocalizableConst'
11
+ program :version, '1.0.2'
12
+ program :description, 'Objective C Localizable to Constants!'
13
+
14
+ command :generate do |c|
15
+ c.syntax = 'generate <LocalizeFile> <DestSave> [options]'
16
+ c.summary = 'Create file constants from localize.strings'
17
+ c.example 'description', 'generate {PATH} {DIR}'
18
+
19
+ c.action do |args, options|
20
+ ObjCLocalizableConstGenerate.running(args[0], args[1])
21
+ end
22
+ end
23
+
24
+ command :replace do |c|
25
+ c.syntax = 'replace <LocalizeFile> <Folder or File> [options]'
26
+ c.summary = 'Replace Strings in Folder using ConstFile.h'
27
+ c.example 'description', 'replace {PATH} {DIR or FILE}'
28
+
29
+ c.action do |args, options|
30
+ ObjCLocalizableConstReplace.running(args[0], args[1])
31
+ end
32
+ end
33
+
@@ -0,0 +1,16 @@
1
+ class ObjCLocalizableConstGenerate
2
+ def self.running(constantFile, path)
3
+ fail 'É necessário informar o arquivo de Constantes válido' if constantFile.nil? || !File.file?(constantFile)
4
+ fail 'É necessário informar onde deseja salvar o arquivo' if path.nil?
5
+
6
+ @contentConst = File.read(constantFile)
7
+ regx = /"(.+)"\s*=\s*"(.+)"\s*;/
8
+ @contentConst.gsub!(regx) do
9
+ key = $1
10
+ "static NSString * const kLocalizable#{key.gsub(".","_").camelcase} = @\"#{key}\";"
11
+ end
12
+
13
+ File.open(path, "w") {|file| file.puts @contentConst }
14
+ end
15
+
16
+ end
@@ -1,14 +1,14 @@
1
- class ObjCLocalizableConst
1
+ class ObjCLocalizableConstReplace
2
2
  def self.running(constantFile, path)
3
- if constantFile.nil?
4
- puts "É necessário informar o caminho da classe de Constants Localize."
3
+ if constantFile.nil? || !File.file?(constantFile)
4
+ fail "É necessário informar do caminho do ClasseDeConstants.h Localize Válido"
5
5
  end
6
6
 
7
7
  @constantFile = constantFile
8
8
  @constants = getMatchConst
9
9
 
10
10
  if path.nil?
11
- puts "É necessário informar o caminho dos arquivos que deseja trocar para Constant."
11
+ puts "É necessário informar o caminho dos arquivos que deseja trocar para Constant"
12
12
  return false
13
13
  end
14
14
 
@@ -19,7 +19,7 @@ class ObjCLocalizableConst
19
19
  elsif File.file?(path)
20
20
  replaceInFiles([path])
21
21
  else
22
- puts "Pasta ou arquivo inválido."
22
+ puts "Pasta ou arquivo inválido"
23
23
  return false
24
24
  end
25
25
 
@@ -37,7 +37,18 @@ class ObjCLocalizableConst
37
37
  if File.file?(file)
38
38
  content = File.read(file)
39
39
  new_content = content.dup
40
- @constants.each { |key, value| new_content.gsub!(value, key) if content.include?(value) }
40
+ @constants.each do |key, value|
41
+ if content.include?(value)
42
+ new_content.gsub!(value, key)
43
+ regex = /(^.*?(\w+)?\s*=\s*#{key};.*$)/
44
+ const_to_const = new_content.scan(regex)
45
+ unless const_to_const.empty?
46
+ new_content.gsub!(const_to_const[0][0], "")
47
+ new_content.gsub!(/(\W)#{const_to_const[0][1]}(\W)/){"#{$1}#{key}#{$2}"}
48
+ new_content.gsub!(/^$\n{2,}/, "\n")
49
+ end
50
+ end
51
+ end
41
52
  if content != new_content
42
53
  File.open(file, "w") {|file| file.puts new_content }
43
54
  puts "[Alterado] - #{file}"
@@ -47,4 +58,5 @@ class ObjCLocalizableConst
47
58
  end
48
59
  end
49
60
  end
61
+
50
62
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ObjCLocalizableConst
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rodrigo Dias
@@ -9,7 +9,35 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2017-05-09 00:00:00.000000000 Z
12
- dependencies: []
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: commander
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '4.4'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '4.4'
27
+ - !ruby/object:Gem::Dependency
28
+ name: activesupport
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '5.1'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '5.1'
13
41
  description: Objective C Localizable to Constants.
14
42
  email: rodrigogd@ciandt.com.br
15
43
  executables:
@@ -18,7 +46,8 @@ extensions: []
18
46
  extra_rdoc_files: []
19
47
  files:
20
48
  - bin/ObjCLocalizableConst
21
- - lib/ObjCLocalizableConst.rb
49
+ - lib/ObjCLocalizableConstGenerate.rb
50
+ - lib/ObjCLocalizableConstReplace.rb
22
51
  homepage: http://rubygems.org/gems/ObjCLocalizableConst
23
52
  licenses:
24
53
  - MIT