subtitle2utf8 0.1.0 → 0.1.1

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: 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.