phrase 0.4.1 → 0.4.2

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 (49) hide show
  1. data/.gitignore +0 -2
  2. data/.travis.yml +1 -0
  3. data/lib/phrase.rb +1 -0
  4. data/lib/phrase/api/client.rb +11 -2
  5. data/lib/phrase/delegate.rb +6 -2
  6. data/lib/phrase/formats.rb +151 -0
  7. data/lib/phrase/formats/csv.rb +19 -0
  8. data/lib/phrase/{tool/formats → formats}/custom.rb +3 -1
  9. data/lib/phrase/formats/gettext.rb +27 -0
  10. data/lib/phrase/formats/gettext_template.rb +19 -0
  11. data/lib/phrase/formats/ini.rb +19 -0
  12. data/lib/phrase/formats/json.rb +19 -0
  13. data/lib/phrase/formats/plist.rb +19 -0
  14. data/lib/phrase/formats/properties.rb +19 -0
  15. data/lib/phrase/formats/properties_xml.rb +19 -0
  16. data/lib/phrase/formats/qt_phrase_book.rb +19 -0
  17. data/lib/phrase/formats/qt_translation_source.rb +19 -0
  18. data/lib/phrase/formats/resx.rb +19 -0
  19. data/lib/phrase/formats/resx_windowsphone.rb +19 -0
  20. data/lib/phrase/formats/simple_json.rb +19 -0
  21. data/lib/phrase/formats/strings.rb +39 -0
  22. data/lib/phrase/formats/tmx.rb +19 -0
  23. data/lib/phrase/formats/xliff.rb +19 -0
  24. data/lib/phrase/formats/xml.rb +49 -0
  25. data/lib/phrase/formats/yaml.rb +19 -0
  26. data/lib/phrase/formats/yaml_symfony.rb +19 -0
  27. data/lib/phrase/hash_flattener.rb +15 -14
  28. data/lib/phrase/tool.rb +1 -1
  29. data/lib/phrase/tool/commands/pull.rb +4 -4
  30. data/lib/phrase/tool/commands/push.rb +14 -6
  31. data/lib/phrase/tool/options.rb +2 -1
  32. data/lib/phrase/tool/options_factory.rb +5 -1
  33. data/lib/phrase/version.rb +1 -1
  34. metadata +43 -38
  35. data/lib/phrase/tool/formats.rb +0 -87
  36. data/lib/phrase/tool/formats/base.rb +0 -37
  37. data/lib/phrase/tool/formats/gettext.rb +0 -19
  38. data/lib/phrase/tool/formats/gettext_pot.rb +0 -11
  39. data/lib/phrase/tool/formats/ini.rb +0 -11
  40. data/lib/phrase/tool/formats/json.rb +0 -11
  41. data/lib/phrase/tool/formats/plist.rb +0 -11
  42. data/lib/phrase/tool/formats/properties.rb +0 -11
  43. data/lib/phrase/tool/formats/qt_phrase_book.rb +0 -11
  44. data/lib/phrase/tool/formats/qt_translation_source.rb +0 -11
  45. data/lib/phrase/tool/formats/resx.rb +0 -11
  46. data/lib/phrase/tool/formats/strings.rb +0 -31
  47. data/lib/phrase/tool/formats/xliff.rb +0 -11
  48. data/lib/phrase/tool/formats/xml.rb +0 -41
  49. data/lib/phrase/tool/formats/yaml.rb +0 -11
@@ -0,0 +1,19 @@
1
+ # -*- encoding : utf-8 -*-
2
+
3
+ module Phrase
4
+ module Formats
5
+ class Resx < Phrase::Formats::Base
6
+ def self.filename_for_locale(locale)
7
+ "phrase.#{locale.name}.resx"
8
+ end
9
+
10
+ def self.locale_aware?
11
+ false
12
+ end
13
+
14
+ def self.extensions
15
+ [:resx]
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,19 @@
1
+ # -*- encoding : utf-8 -*-
2
+
3
+ module Phrase
4
+ module Formats
5
+ class ResxWindowsphone < Phrase::Formats::Base
6
+ def self.filename_for_locale(locale)
7
+ "phrase.#{locale.name}.resx"
8
+ end
9
+
10
+ def self.locale_aware?
11
+ false
12
+ end
13
+
14
+ def self.extensions
15
+ [:resx]
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,19 @@
1
+ # -*- encoding : utf-8 -*-
2
+
3
+ module Phrase
4
+ module Formats
5
+ class SimpleJson < Phrase::Formats::Base
6
+ def self.filename_for_locale(locale)
7
+ "phrase.#{locale.name}.json"
8
+ end
9
+
10
+ def self.locale_aware?
11
+ false
12
+ end
13
+
14
+ def self.extensions
15
+ [:json]
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,39 @@
1
+ # -*- encoding : utf-8 -*-
2
+
3
+ module Phrase
4
+ module Formats
5
+ class Strings < Phrase::Formats::Base
6
+ def self.directory_for_locale(locale)
7
+ name = locale.code || locale.name
8
+ "#{formatted(name)}.lproj"
9
+ end
10
+
11
+ def self.filename_for_locale(locale)
12
+ "Localizable.strings"
13
+ end
14
+
15
+ def self.target_directory
16
+ "./"
17
+ end
18
+
19
+ def self.extract_locale_name_from_file_path(file_path)
20
+ file_path.scan(/\/([a-zA-Z\-_]*).lproj\//i).first.try(:first)
21
+ end
22
+
23
+ def self.locale_aware?
24
+ true
25
+ end
26
+
27
+ def self.formatted(name)
28
+ return name unless name.include?("-")
29
+ parts = name.split("-")
30
+ "#{parts.first}_#{parts.last.upcase}"
31
+ end
32
+ private_class_method :formatted
33
+
34
+ def self.extensions
35
+ [:strings]
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,19 @@
1
+ # -*- encoding : utf-8 -*-
2
+
3
+ module Phrase
4
+ module Formats
5
+ class Tmx < Phrase::Formats::Base
6
+ def self.filename_for_locale(locale)
7
+ "phrase.#{locale.name}.tmx"
8
+ end
9
+
10
+ def self.locale_aware?
11
+ false
12
+ end
13
+
14
+ def self.extensions
15
+ [:tmx]
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,19 @@
1
+ # -*- encoding : utf-8 -*-
2
+
3
+ module Phrase
4
+ module Formats
5
+ class Xliff < Phrase::Formats::Base
6
+ def self.filename_for_locale(locale)
7
+ "phrase.#{locale.name}.xlf"
8
+ end
9
+
10
+ def self.locale_aware?
11
+ true
12
+ end
13
+
14
+ def self.extensions
15
+ [:xlf]
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,49 @@
1
+ # -*- encoding : utf-8 -*-
2
+
3
+ module Phrase
4
+ module Formats
5
+ class Xml < Phrase::Formats::Base
6
+ def self.directory_for_locale(locale)
7
+ if locale.default?
8
+ "values"
9
+ else
10
+ name = locale.code || locale.name
11
+ "values-#{formatted(name)}"
12
+ end
13
+ end
14
+
15
+ def self.filename_for_locale(locale)
16
+ "strings.xml"
17
+ end
18
+
19
+ def self.target_directory
20
+ "res/"
21
+ end
22
+
23
+ def self.extract_locale_name_from_file_path(file_path)
24
+ return default_locale_name if file_path.scan(/\/values\/strings.xml/i).first
25
+ locale_part = file_path.scan(/\/values-([a-zA-Z\-_]*)\/strings.xml/i).first.try(:first)
26
+ if locale_part and locale_part.include?("-r")
27
+ "#{locale_part.split("-r").first}-#{locale_part.split("-r").last}"
28
+ else
29
+ locale_part
30
+ end
31
+ end
32
+
33
+ def self.locale_aware?
34
+ true
35
+ end
36
+
37
+ def self.formatted(name)
38
+ return name unless name.include?("-")
39
+ parts = name.split("-")
40
+ "#{parts.first}-r#{parts.last.upcase}"
41
+ end
42
+ private_class_method :formatted
43
+
44
+ def self.extensions
45
+ [:xml]
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,19 @@
1
+ # -*- encoding : utf-8 -*-
2
+
3
+ module Phrase
4
+ module Formats
5
+ class Yaml < Phrase::Formats::Base
6
+ def self.filename_for_locale(locale)
7
+ "phrase.#{locale.name}.yml"
8
+ end
9
+
10
+ def self.locale_aware?
11
+ true
12
+ end
13
+
14
+ def self.extensions
15
+ [:yml]
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,19 @@
1
+ # -*- encoding : utf-8 -*-
2
+
3
+ module Phrase
4
+ module Formats
5
+ class YamlSymfony < Phrase::Formats::Base
6
+ def self.filename_for_locale(locale)
7
+ "phrase.#{locale.name}.yml"
8
+ end
9
+
10
+ def self.locale_aware?
11
+ false
12
+ end
13
+
14
+ def self.extensions
15
+ [:yml]
16
+ end
17
+ end
18
+ end
19
+ end
@@ -1,20 +1,21 @@
1
1
  # -*- encoding : utf-8 -*-
2
2
 
3
- module Phrase::HashFlattener
4
-
5
- FLATTEN_SEPARATOR = "."
6
- SEPARATOR_ESCAPE_CHAR = "\001"
3
+ module Phrase
4
+ module HashFlattener
5
+ FLATTEN_SEPARATOR = "."
6
+ SEPARATOR_ESCAPE_CHAR = "\001"
7
7
 
8
- def self.escape_default_separator(key)
9
- key.to_s.tr(FLATTEN_SEPARATOR, SEPARATOR_ESCAPE_CHAR)
10
- end
8
+ def self.escape_default_separator(key)
9
+ key.to_s.tr(FLATTEN_SEPARATOR, SEPARATOR_ESCAPE_CHAR)
10
+ end
11
11
 
12
- def self.flatten(hash, escape, previous_key=nil, &block)
13
- hash.each_pair do |key, value|
14
- key = escape_default_separator(key) if escape
15
- current_key = [previous_key, key].compact.join(FLATTEN_SEPARATOR).to_sym
16
- yield current_key, value
17
- flatten(value, escape, current_key, &block) if value.is_a?(Hash)
12
+ def self.flatten(hash, escape, previous_key=nil, &block)
13
+ hash.each_pair do |key, value|
14
+ key = escape_default_separator(key) if escape
15
+ current_key = [previous_key, key].compact.join(FLATTEN_SEPARATOR).to_sym
16
+ yield current_key, value
17
+ flatten(value, escape, current_key, &block) if value.is_a?(Hash)
18
+ end
18
19
  end
19
20
  end
20
- end
21
+ end
data/lib/phrase/tool.rb CHANGED
@@ -7,7 +7,7 @@ require 'phrase'
7
7
  class Phrase::Tool
8
8
  autoload :Config, 'phrase/tool/config'
9
9
  autoload :Options, 'phrase/tool/options'
10
- autoload :Formats, 'phrase/tool/formats'
10
+ autoload :Formats, 'phrase/formats'
11
11
  autoload :Commands, 'phrase/tool/commands'
12
12
  autoload :TagValidator, 'phrase/tool/tag_validator'
13
13
  autoload :EncodingDetector, 'phrase/tool/encoding_detector'
@@ -1,7 +1,7 @@
1
1
  # -*- encoding : utf-8 -*-
2
2
 
3
3
  class Phrase::Tool::Commands::Pull < Phrase::Tool::Commands::Base
4
- ALLOWED_DOWNLOAD_FORMATS = %w(yml po xml strings json resx ts qph ini plist properties xlf)
4
+ ALLOWED_DOWNLOAD_FORMATS = Phrase::Formats::SUPPORTED_FORMATS.keys.map(&:to_s)
5
5
  DEFAULT_DOWNLOAD_FORMAT = "yml"
6
6
 
7
7
  def initialize(options, args)
@@ -13,7 +13,7 @@ class Phrase::Tool::Commands::Pull < Phrase::Tool::Commands::Base
13
13
  # TODO: remove DEFAULT_DOWNLOAD_FORMAT when phrase app has been updated
14
14
  @format = @options.get(:format) || config.format || DEFAULT_DOWNLOAD_FORMAT
15
15
  @target = @options.get(:target)
16
- @target ||= Phrase::Tool::Formats.target_directory(@format) if format_valid?(@format)
16
+ @target ||= Phrase::Formats.target_directory(@format) if format_valid?(@format)
17
17
  end
18
18
 
19
19
  def execute!
@@ -36,8 +36,8 @@ private
36
36
  end
37
37
 
38
38
  def store_content_in_locale_file(locale, content)
39
- directory = Phrase::Tool::Formats.directory_for_locale_in_format(locale, @format)
40
- filename = Phrase::Tool::Formats.filename_for_locale_in_format(locale, @format)
39
+ directory = Phrase::Formats.directory_for_locale_in_format(locale, @format)
40
+ filename = Phrase::Formats.filename_for_locale_in_format(locale, @format)
41
41
  path = File.join(base_directory, directory)
42
42
  target = File.join(path, filename)
43
43
  begin
@@ -1,7 +1,6 @@
1
1
  # -*- encoding : utf-8 -*-
2
2
 
3
3
  class Phrase::Tool::Commands::Push < Phrase::Tool::Commands::Base
4
- ALLOWED_FILE_TYPES = %w(yml po pot xml strings json resx ts qph ini plist properties xlf)
5
4
  FORMATS_CONTAINING_LOCALE = %q(po yml qph ts xlf)
6
5
  RAILS_DEFAULT_FOLDER = "./config/locales/"
7
6
 
@@ -11,6 +10,7 @@ class Phrase::Tool::Commands::Push < Phrase::Tool::Commands::Base
11
10
 
12
11
  @file_names = @args[1..-1]
13
12
  @locale = @options.get(:locale)
13
+ @format = @options.get(:format)
14
14
  @tags = @options.get(:tags)
15
15
  @recursive = @options.get(:recursive)
16
16
  end
@@ -80,7 +80,7 @@ private
80
80
  locale = Phrase::Tool::Locale.find_default_locale.try(:name)
81
81
  end
82
82
  locale = @locale if @locale
83
- api_client.upload(file, file_content(file), @tags, locale)
83
+ api_client.upload(file, file_content(file), @tags, locale, @format)
84
84
  print_message "OK".green
85
85
  rescue Exception => e
86
86
  print_error "Failed"
@@ -98,7 +98,7 @@ private
98
98
  end
99
99
 
100
100
  def force_use_of_default_locale?(file_path)
101
- not Phrase::Tool::Formats.file_format_exposes_locale?(file_path)
101
+ not Phrase::Formats.file_format_exposes_locale?(file_path)
102
102
  end
103
103
 
104
104
  def utf16_to_utf8(string)
@@ -111,7 +111,7 @@ private
111
111
 
112
112
  def file_valid?(filepath)
113
113
  extension = filepath.split('.').last
114
- ALLOWED_FILE_TYPES.include?(extension)
114
+ allowed_file_extensions.include?(extension)
115
115
  end
116
116
 
117
117
  def file_exists?(file)
@@ -127,6 +127,14 @@ private
127
127
  end
128
128
 
129
129
  def detect_locale_name_from_file_path(file_path)
130
- Phrase::Tool::Formats.detect_locale_name_from_file_path(file_path)
130
+ Phrase::Formats.detect_locale_name_from_file_path(file_path)
131
131
  end
132
- end
132
+
133
+ def allowed_file_extensions
134
+ extensions = []
135
+ Phrase::Formats::SUPPORTED_FORMATS.each do |format, handler|
136
+ extensions = extensions | handler.send(:extensions)
137
+ end
138
+ extensions.uniq.map(&:to_s)
139
+ end
140
+ end
@@ -23,7 +23,8 @@ class Phrase::Tool::Options
23
23
  push: {
24
24
  tags: [],
25
25
  recursive: false,
26
- locale: nil
26
+ locale: nil,
27
+ format: nil
27
28
  },
28
29
  pull: {
29
30
  format: nil,
@@ -50,11 +50,15 @@ class OptionsFactory
50
50
  opts.on("--locale=en", String, "Locale of the translations your file contain (required for formats that do not include the name of the locale in the file content)") do |locale|
51
51
  set[:locale] = locale
52
52
  end
53
+
54
+ opts.on("--format=yml", String, "See documentation for list of allowed formats") do |format|
55
+ set[:format] = format
56
+ end
53
57
  end
54
58
  private_class_method :push
55
59
 
56
60
  def self.pull(opts, set)
57
- opts.on("--format=yml", String, "See documentation for list of allowed locales") do |format|
61
+ opts.on("--format=yml", String, "See documentation for list of allowed formats") do |format|
58
62
  set[:format] = format
59
63
  end
60
64
 
@@ -1,3 +1,3 @@
1
1
  module Phrase
2
- VERSION = "0.4.1"
2
+ VERSION = "0.4.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: phrase
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-04-12 00:00:00.000000000 Z
12
+ date: 2013-06-17 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: colorize
16
- requirement: &70153559193100 !ruby/object:Gem::Requirement
16
+ requirement: &70112547553080 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70153559193100
24
+ version_requirements: *70112547553080
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: json
27
- requirement: &70153559192640 !ruby/object:Gem::Requirement
27
+ requirement: &70112547552620 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70153559192640
35
+ version_requirements: *70112547552620
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &70153559192220 !ruby/object:Gem::Requirement
38
+ requirement: &70112547552200 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70153559192220
46
+ version_requirements: *70112547552200
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec
49
- requirement: &70153559191800 !ruby/object:Gem::Requirement
49
+ requirement: &70112547551780 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70153559191800
57
+ version_requirements: *70112547551780
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: i18n
60
- requirement: &70153559191380 !ruby/object:Gem::Requirement
60
+ requirement: &70112547551360 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70153559191380
68
+ version_requirements: *70112547551360
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: webmock
71
- requirement: &70153559190960 !ruby/object:Gem::Requirement
71
+ requirement: &70112547550940 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *70153559190960
79
+ version_requirements: *70112547550940
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: vcr
82
- requirement: &70153559190540 !ruby/object:Gem::Requirement
82
+ requirement: &70112547550520 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: '0'
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *70153559190540
90
+ version_requirements: *70112547550520
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: timecop
93
- requirement: &70153559190120 !ruby/object:Gem::Requirement
93
+ requirement: &70112547550100 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,10 +98,10 @@ dependencies:
98
98
  version: '0'
99
99
  type: :development
100
100
  prerelease: false
101
- version_requirements: *70153559190120
101
+ version_requirements: *70112547550100
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: genspec
104
- requirement: &70153559189700 !ruby/object:Gem::Requirement
104
+ requirement: &70112547549680 !ruby/object:Gem::Requirement
105
105
  none: false
106
106
  requirements:
107
107
  - - ! '>='
@@ -109,10 +109,10 @@ dependencies:
109
109
  version: '0'
110
110
  type: :development
111
111
  prerelease: false
112
- version_requirements: *70153559189700
112
+ version_requirements: *70112547549680
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: rails
115
- requirement: &70153559189280 !ruby/object:Gem::Requirement
115
+ requirement: &70112547549260 !ruby/object:Gem::Requirement
116
116
  none: false
117
117
  requirements:
118
118
  - - ! '>='
@@ -120,7 +120,7 @@ dependencies:
120
120
  version: '0'
121
121
  type: :development
122
122
  prerelease: false
123
- version_requirements: *70153559189280
123
+ version_requirements: *70112547549260
124
124
  description: phrase allows you to edit translations in-place on the page itself. More
125
125
  information at phraseapp.com
126
126
  email:
@@ -164,6 +164,27 @@ files:
164
164
  - lib/phrase/delegate/fast_gettext.rb
165
165
  - lib/phrase/delegate/i18n.rb
166
166
  - lib/phrase/engine.rb
167
+ - lib/phrase/formats.rb
168
+ - lib/phrase/formats/csv.rb
169
+ - lib/phrase/formats/custom.rb
170
+ - lib/phrase/formats/gettext.rb
171
+ - lib/phrase/formats/gettext_template.rb
172
+ - lib/phrase/formats/ini.rb
173
+ - lib/phrase/formats/json.rb
174
+ - lib/phrase/formats/plist.rb
175
+ - lib/phrase/formats/properties.rb
176
+ - lib/phrase/formats/properties_xml.rb
177
+ - lib/phrase/formats/qt_phrase_book.rb
178
+ - lib/phrase/formats/qt_translation_source.rb
179
+ - lib/phrase/formats/resx.rb
180
+ - lib/phrase/formats/resx_windowsphone.rb
181
+ - lib/phrase/formats/simple_json.rb
182
+ - lib/phrase/formats/strings.rb
183
+ - lib/phrase/formats/tmx.rb
184
+ - lib/phrase/formats/xliff.rb
185
+ - lib/phrase/formats/xml.rb
186
+ - lib/phrase/formats/yaml.rb
187
+ - lib/phrase/formats/yaml_symfony.rb
167
188
  - lib/phrase/hash_flattener.rb
168
189
  - lib/phrase/tool.rb
169
190
  - lib/phrase/tool/commands.rb
@@ -175,22 +196,6 @@ files:
175
196
  - lib/phrase/tool/commands/show_version.rb
176
197
  - lib/phrase/tool/config.rb
177
198
  - lib/phrase/tool/encoding_detector.rb
178
- - lib/phrase/tool/formats.rb
179
- - lib/phrase/tool/formats/base.rb
180
- - lib/phrase/tool/formats/custom.rb
181
- - lib/phrase/tool/formats/gettext.rb
182
- - lib/phrase/tool/formats/gettext_pot.rb
183
- - lib/phrase/tool/formats/ini.rb
184
- - lib/phrase/tool/formats/json.rb
185
- - lib/phrase/tool/formats/plist.rb
186
- - lib/phrase/tool/formats/properties.rb
187
- - lib/phrase/tool/formats/qt_phrase_book.rb
188
- - lib/phrase/tool/formats/qt_translation_source.rb
189
- - lib/phrase/tool/formats/resx.rb
190
- - lib/phrase/tool/formats/strings.rb
191
- - lib/phrase/tool/formats/xliff.rb
192
- - lib/phrase/tool/formats/xml.rb
193
- - lib/phrase/tool/formats/yaml.rb
194
199
  - lib/phrase/tool/locale.rb
195
200
  - lib/phrase/tool/options.rb
196
201
  - lib/phrase/tool/options_factory.rb