mediaman 0.0.6 → 0.0.7
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.
- data/README.md +9 -1
- data/lib/mediaman/command.rb +44 -14
- data/lib/mediaman/version.rb +1 -1
- data/mediaman.gemspec +2 -1
- metadata +16 -5
data/README.md
CHANGED
@@ -33,10 +33,14 @@ It does this based on a few simple rules:
|
|
33
33
|
|
34
34
|
Anything else is considered "Other Media".
|
35
35
|
|
36
|
+
The parsing logic is handled by the [ToName gem](https://github.com/o-sam-o/toname).
|
37
|
+
|
36
38
|
Then it will throw it into a pretty folder for you. Like this:
|
37
39
|
|
38
40
|
../Movies/Star Wars (1977).mov
|
39
41
|
|
42
|
+
or
|
43
|
+
|
40
44
|
../TV Shows/Star Trek - The Next Generation/Season 2/2x03 - Elementary, Dear Data.mov
|
41
45
|
|
42
46
|
The library root directory is your current directory, or pass in something else with the `-l` flag.
|
@@ -47,10 +51,14 @@ The artwork image and metadata (in YAML format) will also be saved for your refe
|
|
47
51
|
|
48
52
|
#### Get Metadata Only
|
49
53
|
|
50
|
-
To
|
54
|
+
To view a YAML-formatted printout of as much metadata as Mediaman can muster, just use:
|
51
55
|
|
52
56
|
$ mediaman metadata ~/path/to/movie.mp4
|
53
57
|
|
58
|
+
You can also just pass in a name:
|
59
|
+
|
60
|
+
$ mediaman metadata "the truman show 1998"
|
61
|
+
|
54
62
|
#### Help
|
55
63
|
|
56
64
|
For more information, try:
|
data/lib/mediaman/command.rb
CHANGED
@@ -1,25 +1,55 @@
|
|
1
1
|
module Mediaman
|
2
2
|
|
3
3
|
require "thor"
|
4
|
-
|
4
|
+
require "colorize"
|
5
|
+
|
5
6
|
class CommandLine < Thor
|
6
7
|
|
7
8
|
desc "add <file>", "sorts the file according to its metadata"
|
8
9
|
method_option :library, type: :string, aliases: "-l", desc: "Media library base folder to sort into.", default: "."
|
9
|
-
|
10
|
+
method_option :batch, type: :boolean, aliases: "-b", desc: "Adds each file or folder in the passed-in folder to the library. Not recursive.", default: false
|
10
11
|
method_option :itunes, type: :boolean, desc: "Attempts to add the final file to iTunes.", default: false
|
11
|
-
def add(
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
12
|
+
def add(input_path)
|
13
|
+
|
14
|
+
# Find files for batch.
|
15
|
+
if options[:batch] && File.directory?(input_path)
|
16
|
+
paths = []
|
17
|
+
Dir.glob File.join(input_path, "*") do |searchfile|
|
18
|
+
case File.extname(searchfile)[1..-1]
|
19
|
+
when /mov|mp4|m4v|avi|wmv|mkv/i then
|
20
|
+
paths << searchfile
|
21
|
+
else
|
22
|
+
if File.directory?(searchfile)
|
23
|
+
paths << searchfile
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
else
|
28
|
+
# Just try the path if it's not a directory.
|
29
|
+
paths = [input_path]
|
30
|
+
end
|
31
|
+
|
32
|
+
if paths.length > 0
|
33
|
+
puts "Found #{paths.length} supported file#{paths.length == 1 ? "" : "s"}.".yellow
|
34
|
+
else
|
35
|
+
puts "No directories or supported files found.".red
|
36
|
+
end
|
37
|
+
|
38
|
+
# Add each
|
39
|
+
for path in paths
|
40
|
+
puts "Adding #{File.basename File.expand_path(path)}".green
|
41
|
+
library_document = LibraryDocument.from_path path
|
42
|
+
library_document.library_path = File.expand_path options[:library]
|
43
|
+
puts " -> #{library_document.video_files.size} video files / #{library_document.junk_files.size} junk files."
|
44
|
+
library_document.move_to_library!
|
45
|
+
library_document.save_and_apply_metadata!
|
46
|
+
puts " -> Destination: #{library_document.path}"
|
47
|
+
if options[:itunes]
|
48
|
+
library_document.add_to_itunes!
|
49
|
+
puts " -> Added to iTunes"
|
50
|
+
end
|
22
51
|
end
|
52
|
+
|
23
53
|
end
|
24
54
|
|
25
55
|
desc "metadata <file/directory/title>", "returns all the metadata discoverable about this file, title, or directory"
|
@@ -34,7 +64,7 @@ module Mediaman
|
|
34
64
|
else
|
35
65
|
doc = Document.from_path(path)
|
36
66
|
doc.save_and_apply_metadata!
|
37
|
-
puts "Metadata and image saved to #{doc.extras_path}"
|
67
|
+
puts "Metadata and image saved to #{doc.extras_path}".green
|
38
68
|
end
|
39
69
|
end
|
40
70
|
|
data/lib/mediaman/version.rb
CHANGED
data/mediaman.gemspec
CHANGED
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: mediaman
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.0.
|
5
|
+
version: 0.0.7
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Wil Gieseler
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2012-08-
|
13
|
+
date: 2012-08-30 00:00:00 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: activesupport
|
@@ -79,7 +79,7 @@ dependencies:
|
|
79
79
|
type: :runtime
|
80
80
|
version_requirements: *id006
|
81
81
|
- !ruby/object:Gem::Dependency
|
82
|
-
name:
|
82
|
+
name: colorize
|
83
83
|
prerelease: false
|
84
84
|
requirement: &id007 !ruby/object:Gem::Requirement
|
85
85
|
none: false
|
@@ -87,10 +87,10 @@ dependencies:
|
|
87
87
|
- - ">="
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: "0"
|
90
|
-
type: :
|
90
|
+
type: :runtime
|
91
91
|
version_requirements: *id007
|
92
92
|
- !ruby/object:Gem::Dependency
|
93
|
-
name:
|
93
|
+
name: rake
|
94
94
|
prerelease: false
|
95
95
|
requirement: &id008 !ruby/object:Gem::Requirement
|
96
96
|
none: false
|
@@ -100,6 +100,17 @@ dependencies:
|
|
100
100
|
version: "0"
|
101
101
|
type: :development
|
102
102
|
version_requirements: *id008
|
103
|
+
- !ruby/object:Gem::Dependency
|
104
|
+
name: rspec
|
105
|
+
prerelease: false
|
106
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
107
|
+
none: false
|
108
|
+
requirements:
|
109
|
+
- - ">="
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: "0"
|
112
|
+
type: :development
|
113
|
+
version_requirements: *id009
|
103
114
|
description: Mediaman manages your media, man.
|
104
115
|
email:
|
105
116
|
- supapuerco@gmail.com
|