subtitle2utf8 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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7299bced9d2870fa841eece07f08e4ac23b89fee
4
- data.tar.gz: 5f7af2b826832afc3502c84fdde7376e72ddf904
3
+ metadata.gz: ee5d73a80af4b8727c459ac8c0a603990cc3d6a9
4
+ data.tar.gz: f9b189cd8bedf98d8b251e86bec9d3f1a6c993d5
5
5
  SHA512:
6
- metadata.gz: 541bd920730e4ec4e07860f01f253bf190093840e08f68d1c691ce3af1e87c2d78e785417d1dec687858f5a202240b19e95a71319b528f3dc18642b063ff1364
7
- data.tar.gz: eb036b48465fb37f41610e02316ca5c60515763fdb399b48be1bf6dd4059013b533219b51340db021a2941190c35b5cbd69af5076de5796efc2ac8f8a02bf0f7
6
+ metadata.gz: 227426f10cee1d90807a267d77371528690948ea25147927975cec76e0a9d7a8aa59f5a8848545e17627b42f285235d21772dc4009357938408d102283589ed0
7
+ data.tar.gz: 0dce74dbcc2ca5ef2f1cd467c0cb2f32e7a59a9699a2d809b06fd49372f5fa60c8bb1d4115e4a155931e2eb3d5cc0b3346088ca2b48f70bee078c1f1c78fa6b6
data/bin/s2u CHANGED
@@ -21,13 +21,11 @@ OptionParser.new do |opts|
21
21
  end.parse!
22
22
 
23
23
  if ARGV.size != 1
24
- puts "Wrong arguments, one is enough."
25
- exit
24
+ abort "Wrong arguments, one is enough."
26
25
  end
27
26
 
28
27
  if options[:file] && options[:dir]
29
- puts "Wrong switches..."
30
- exit
28
+ abort "Wrong switches..."
31
29
  end
32
30
 
33
31
  include Subtitle2utf8
@@ -1,3 +1,3 @@
1
1
  module Subtitle2utf8
2
- VERSION = '0.1.0'
2
+ VERSION = '0.1.1'
3
3
  end
data/lib/subtitle2utf8.rb CHANGED
@@ -2,48 +2,49 @@ require 'subtitle2utf8/version'
2
2
  require 'rchardet'
3
3
 
4
4
  module Subtitle2utf8
5
- def self.convert(val, type, recursion = false)
6
- val = File.expand_path val
5
+ def self.convert(subtitle, type, recursion = false)
6
+ path = File.expand_path(subtitle)
7
7
 
8
8
  case type
9
9
  when :file
10
- if !File.exist? val
11
- puts "#{val} does not exist!"
12
- exit
10
+ if !File.exist?(path)
11
+ abort "#{path} does not exist!"
13
12
  end
14
13
 
15
- convert_file val
14
+ convert_file(path)
16
15
  when :dir
17
- if !Dir.exist? val
18
- puts "#{val} does not exist!"
19
- exit
16
+ if !Dir.exist?(path)
17
+ abort "#{path} does not exist!"
20
18
  end
21
19
 
22
20
  if recursion
23
- convert_dirs val
21
+ convert_dirs(path)
24
22
  else
25
- convert_dir val
23
+ convert_dir(path)
26
24
  end
27
25
  end
28
26
  end
29
27
 
28
+ private
29
+
30
30
  def convert_file(origin)
31
31
  valid = '.srt'
32
32
 
33
33
  if (ext = File.extname(origin)) != valid
34
- puts "#{origin} is not valid file!"
35
- exit
34
+ abort "#{origin} is not valid file!"
36
35
  end
37
36
 
38
37
  name = File.basename(origin, ext)
39
38
  # Ignore converted file.
40
39
  return if name =~ /^*.utf-8/
41
40
 
42
- dir = File.dirname origin
41
+ dir = File.dirname(origin)
43
42
  new_file = "#{dir}/#{name}.utf-8#{ext}"
44
43
  encoding = CharDet.detect(File.new(origin).read(64))['encoding']
45
44
  # GB18030 is a superset of Chinese encoding GB2312.
46
- encoding = encoding == 'GB2312' ? 'GB18030' : encoding
45
+ encoding = begin
46
+ encoding == 'GB2312' ? 'GB18030' : encoding
47
+ end
47
48
 
48
49
  begin
49
50
  file_content =
@@ -55,11 +56,10 @@ module Subtitle2utf8
55
56
  File.read(origin, encoding: encoding).dup.force_encoding(encoding).encode('utf-8')
56
57
  end
57
58
  rescue Exception => e
58
- puts "#{origin} cannot be converted to utf-8..."
59
- return
59
+ abort "#{e}: #{origin} cannot be converted to utf-8..."
60
60
  end
61
61
 
62
- File.open(new_file, 'w') {|f| f.write file_content}
62
+ File.open(new_file, 'w') { |f| f.write(file_content) }
63
63
  end
64
64
 
65
65
  def convert_dir(present)
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_development_dependency 'bundler', '~> 1.7'
22
- spec.add_development_dependency 'rake', '~> 10.0'
23
- spec.add_dependency 'rchardet', '~> 1.5.0'
21
+ spec.add_development_dependency 'bundler'
22
+ spec.add_development_dependency 'rake'
23
+ spec.add_dependency 'rchardet', '~> 1.6.0'
24
24
  end
metadata CHANGED
@@ -1,57 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: subtitle2utf8
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rick Yu
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-01 00:00:00.000000000 Z
11
+ date: 2015-02-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '1.7'
19
+ version: '0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '1.7'
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rchardet
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.5.0
47
+ version: 1.6.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 1.5.0
54
+ version: 1.6.0
55
55
  description: This simple gem is used to convert movie subtitle's encoding to utf-8.
56
56
  email:
57
57
  - cosmtrek@gmail.com
@@ -89,7 +89,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
89
89
  version: '0'
90
90
  requirements: []
91
91
  rubyforge_project:
92
- rubygems_version: 2.2.2
92
+ rubygems_version: 2.4.5
93
93
  signing_key:
94
94
  specification_version: 4
95
95
  summary: Convert movie subtitle's encoding to utf-8.