legendario 0.1.12 → 0.1.13
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 +4 -4
- data/.gitignore +1 -2
- data/bin/{get_all_subtitles → crawl4subtitles} +0 -0
- data/bin/subtitle_language_switch +82 -0
- data/legendario.gemspec +1 -1
- data/lib/legendario.rb +11 -19
- data/lib/legendario/version.rb +1 -1
- data/lib/sl.rb +23 -0
- metadata +9 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 05fbddeb39118ac0ab96fc059318cf59d1088728
|
4
|
+
data.tar.gz: 7922a1ce6ce3b142a172eaa855e457d3cd8dc837
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 12ef0f26390feab1ea890a75ff4157202640fae370f038446a842254ee22cf0bdfe2fae4c80fdae0704d443415c21618ed5e30e54e757e7aeb9b82fe54bcdd44
|
7
|
+
data.tar.gz: e32502b1a9dc6d8a4ace62fe6cf0316387b53769a6110b6c63332681caeb909f26724e974d3df6e6f1d5101752d32336e3dc673d2285de65156a68b64dcf95c7
|
data/.gitignore
CHANGED
File without changes
|
@@ -0,0 +1,82 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
require 'find'
|
3
|
+
require_relative '../lib/sl'
|
4
|
+
|
5
|
+
if ARGV.size == 0
|
6
|
+
Sl.error 'The parent folder that will have the language changed'
|
7
|
+
puts ''
|
8
|
+
puts 'Please, try something like: '
|
9
|
+
puts ''
|
10
|
+
puts 'change_sub_lang "folder-name" eng por '
|
11
|
+
puts ''
|
12
|
+
puts 'for example.'
|
13
|
+
puts ''
|
14
|
+
puts 'Default languages are: eng por spa ger on this sequence of priority'
|
15
|
+
exit 1
|
16
|
+
end
|
17
|
+
|
18
|
+
def se(command)
|
19
|
+
o = `#{command}`
|
20
|
+
r = $?.to_i
|
21
|
+
Sl.debug "#{o} #{r}"
|
22
|
+
r
|
23
|
+
end
|
24
|
+
|
25
|
+
dir = ARGV[0]
|
26
|
+
lang = ["eng", "por", "spa", "ger"]
|
27
|
+
if ARGV.size > 1
|
28
|
+
lang = []
|
29
|
+
c = 0
|
30
|
+
ARGV.each do|l|
|
31
|
+
lang << l if c > 0
|
32
|
+
c+=1
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
Sl.info "Language priority:"
|
37
|
+
Sl.info lang.inspect
|
38
|
+
Sl.info "The first language found will be soft linked to the subtitle file"
|
39
|
+
|
40
|
+
total_files = 0
|
41
|
+
|
42
|
+
Find.find(dir) do |path|
|
43
|
+
puts "path: #{path}"
|
44
|
+
if FileTest.directory?(path)
|
45
|
+
if File.basename(path)[0] == ?.
|
46
|
+
Find.prune # Don't look any further into this directory.
|
47
|
+
else
|
48
|
+
next
|
49
|
+
end
|
50
|
+
else
|
51
|
+
if FileTest.symlink?(path) and /\.srt$/i =~ File.basename(path)
|
52
|
+
Sl.info "Deleting: #{path}"
|
53
|
+
File.delete(path)
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
58
|
+
Find.find(dir) do |path|
|
59
|
+
leave = false
|
60
|
+
if FileTest.directory?(path)
|
61
|
+
if File.basename(path)[0] == ?.
|
62
|
+
Find.prune # Don't look any further into this directory.
|
63
|
+
else
|
64
|
+
next
|
65
|
+
end
|
66
|
+
else
|
67
|
+
lang.each do |l|
|
68
|
+
if /\.#{l}\.srt$/i =~ File.basename(path) and !FileTest.symlink?(path)
|
69
|
+
link = path.sub(/\.#{l}\.srt$/i, '.srt')
|
70
|
+
se "ln -s \"#{path}\" \"#{link}\""
|
71
|
+
Sl.info "Linking sub lang #{l} to #{link}"
|
72
|
+
total_files +=1
|
73
|
+
# leave = true
|
74
|
+
break
|
75
|
+
end
|
76
|
+
# break if leave
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
|
82
|
+
Sl.info "Total of files linked: #{total_files}"
|
data/legendario.gemspec
CHANGED
@@ -23,7 +23,7 @@ Gem::Specification.new do |spec|
|
|
23
23
|
|
24
24
|
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
25
25
|
spec.bindir = "bin"
|
26
|
-
spec.executables = ["legendario", "
|
26
|
+
spec.executables = ["legendario", "crawl4subtitles", "subtitle_language_switch"]
|
27
27
|
spec.require_paths = ["lib"]
|
28
28
|
spec.add_development_dependency "bundler", "~> 1.10"
|
29
29
|
spec.add_development_dependency "rake", "~> 10.0"
|
data/lib/legendario.rb
CHANGED
@@ -2,25 +2,19 @@
|
|
2
2
|
require "legendario/version"
|
3
3
|
require 'file-monitor'
|
4
4
|
require 'find'
|
5
|
-
|
5
|
+
require_relative 'sl'
|
6
6
|
|
7
7
|
module Legendario
|
8
8
|
|
9
9
|
lib_dir = File.join File.dirname(__FILE__), '../lib'
|
10
10
|
$:.unshift lib_dir unless $:.include? lib_dir
|
11
11
|
|
12
|
-
|
13
12
|
class Legendario
|
14
|
-
@@logger = Logging.logger['legendario.log']
|
15
|
-
@@logger.level = :debug
|
16
|
-
@@logger.add_appenders \
|
17
|
-
Logging.appenders.stdout,
|
18
|
-
Logging.appenders.file('legendario.log')
|
19
13
|
|
20
14
|
if ARGV.size == 0
|
21
|
-
|
15
|
+
Sl.error 'The folder that will be watched for new movies should be defined'
|
22
16
|
puts ''
|
23
|
-
puts 'Please, try: '
|
17
|
+
puts 'Please, try something like: '
|
24
18
|
puts ''
|
25
19
|
puts 'legendario "folder-name" eng por '
|
26
20
|
puts ''
|
@@ -43,28 +37,26 @@ module Legendario
|
|
43
37
|
c+=1
|
44
38
|
end
|
45
39
|
end
|
46
|
-
|
47
|
-
|
40
|
+
Sl.info "Will look for subtitles on these languages: "
|
41
|
+
Sl.info langs.inspect
|
48
42
|
langs
|
49
43
|
@@lang = langs
|
50
44
|
end
|
51
45
|
|
52
|
-
|
53
46
|
def self.watch
|
54
47
|
Legendario.new.watch_dirs(@dir)
|
55
48
|
end
|
56
49
|
|
57
50
|
def se(command)
|
58
|
-
puts command
|
59
51
|
o = `#{command}`
|
60
52
|
r = $?.to_i
|
61
|
-
|
53
|
+
Sl.debug "#{o} #{r}"
|
62
54
|
r
|
63
55
|
end
|
64
56
|
|
65
57
|
def download_subs(file)
|
66
58
|
@@lang.each do |l|
|
67
|
-
|
59
|
+
Sl.info "Language: #{l}"
|
68
60
|
se("getsub -aLl #{l} \"#{file}\"")
|
69
61
|
end
|
70
62
|
symlink(File.dirname(file))
|
@@ -85,9 +77,9 @@ module Legendario
|
|
85
77
|
symlinked = false
|
86
78
|
@@lang.each do |l|
|
87
79
|
if /\.#{l}\.srt$/i =~ File.basename(path) and !symlinked
|
88
|
-
|
80
|
+
Sl.debug path
|
89
81
|
link = path.sub(/\.#{l}\.srt$/i, '.srt')
|
90
|
-
|
82
|
+
Sl.debug link
|
91
83
|
symlinked = true
|
92
84
|
se("ln -s \"#{path}\" \"#{link}\"")
|
93
85
|
break #this break is not working so using !symlinked
|
@@ -111,13 +103,13 @@ module Legendario
|
|
111
103
|
exec do |events|
|
112
104
|
events.each do |ev|
|
113
105
|
file = File.join(ev.watcher.path(), ev.name())
|
114
|
-
|
106
|
+
Sl.info file
|
115
107
|
Legendario.new.download_subs(file)
|
116
108
|
end
|
117
109
|
end
|
118
110
|
#Avoids breaking after a directory been deleted
|
119
111
|
rescue => error
|
120
|
-
|
112
|
+
Sl.error error.inspect
|
121
113
|
Legendario.watch
|
122
114
|
end
|
123
115
|
end
|
data/lib/legendario/version.rb
CHANGED
data/lib/sl.rb
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
require 'logging'
|
2
|
+
|
3
|
+
class Sl
|
4
|
+
|
5
|
+
@@l = Logging.logger['legendario.log']
|
6
|
+
@@l.level = :debug
|
7
|
+
@@l.add_appenders \
|
8
|
+
Logging.appenders.stdout,
|
9
|
+
Logging.appenders.file('legendario.log')
|
10
|
+
|
11
|
+
def self.error(m)
|
12
|
+
@@l.error m
|
13
|
+
end
|
14
|
+
|
15
|
+
def self.info m
|
16
|
+
@@l.info m
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.debug m
|
20
|
+
@@l.debug m
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: legendario
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.13
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Evandro Junior
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-12-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -99,7 +99,8 @@ email:
|
|
99
99
|
- evandrojr@gmail.com
|
100
100
|
executables:
|
101
101
|
- legendario
|
102
|
-
-
|
102
|
+
- crawl4subtitles
|
103
|
+
- subtitle_language_switch
|
103
104
|
extensions: []
|
104
105
|
extra_rdoc_files: []
|
105
106
|
files:
|
@@ -113,12 +114,14 @@ files:
|
|
113
114
|
- README.md
|
114
115
|
- Rakefile
|
115
116
|
- bin/console
|
116
|
-
- bin/
|
117
|
+
- bin/crawl4subtitles
|
117
118
|
- bin/legendario
|
118
119
|
- bin/setup
|
120
|
+
- bin/subtitle_language_switch
|
119
121
|
- legendario.gemspec
|
120
122
|
- lib/legendario.rb
|
121
123
|
- lib/legendario/version.rb
|
124
|
+
- lib/sl.rb
|
122
125
|
homepage: https://github.com/evandrojr/legendario
|
123
126
|
licenses:
|
124
127
|
- MIT
|
@@ -140,8 +143,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
140
143
|
version: '0'
|
141
144
|
requirements: []
|
142
145
|
rubyforge_project:
|
143
|
-
rubygems_version: 2.
|
146
|
+
rubygems_version: 2.2.2
|
144
147
|
signing_key:
|
145
148
|
specification_version: 4
|
146
149
|
summary: Subtitles downloader on demand.
|
147
150
|
test_files: []
|
151
|
+
has_rdoc:
|