dle 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +4 -0
- data/VERSION +1 -1
- data/lib/dle/application/dispatch.rb +8 -6
- data/lib/dle/application.rb +2 -1
- data/lib/dle/filesystem.rb +5 -0
- data/lib/dle/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b93e109c474d35ba962565151925dbce37d71ab5
|
4
|
+
data.tar.gz: b300d9592ebde5e28ce3413380ad01ed0b0ba254
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 962f86f44a67fa42ca803c2ef44b43f95d7f11ddc7e95ac4c6fb85e08c20d2b68a6845c8b5aad358be0ba5ce7556334df01ff99842b8a1494ba442a97ba3b51c
|
7
|
+
data.tar.gz: 77be89e5d6788b1e0d251c8a95d45bf8157e3d0dbe6ff47764ba5415433444c9841f3fe357c0b4902f4146d73691033def67783f1545f652781893117880523e
|
data/README.md
CHANGED
@@ -5,6 +5,8 @@ You can copy, move, rename, chmod, chown or remove individual files or directori
|
|
5
5
|
|
6
6
|
**BETA product, use at your own risk, use `--simulate` to be sure, always have a backup!**
|
7
7
|
|
8
|
+
**[» See it in action!](https://www.youtube.com/watch?v=-xfnx3VQvNQ)**
|
9
|
+
|
8
10
|
## Requirements
|
9
11
|
|
10
12
|
You will need a UNIX system with a working Ruby installation, sorry Windozer!
|
@@ -30,6 +32,8 @@ To get a list of available options invoke DLE with the `--help` or `-h` option:
|
|
30
32
|
-r, --skip-review Skip review changes before applying
|
31
33
|
-s, --simulate Don't apply changes, show commands instead
|
32
34
|
-f, --file DLFILE Use input file (be careful)
|
35
|
+
-o, --only pattern files, dirs or regexp (without delimiters)
|
36
|
+
e.g.: dle ~/Movies -o "(mov|mkv|avi)$"
|
33
37
|
-m, --monochrome Don't colorize output
|
34
38
|
-h, --help Shows this help
|
35
39
|
-v, --version Shows version and other info
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.3
|
@@ -14,11 +14,13 @@ module Dle
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def dispatch_help
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
17
|
+
logger.log_without_timestr do
|
18
|
+
@optparse.to_s.split("\n").each(&method(:log))
|
19
|
+
log ""
|
20
|
+
log "To set your favorite editor set the env variable #{c "DLE_EDITOR", :magenta}"
|
21
|
+
log "Note that you need a blocking call (e.g. subl -w, mate -w)"
|
22
|
+
log "Your current editor is: #{c @editor || "none", :magenta}"
|
23
|
+
end
|
22
24
|
end
|
23
25
|
|
24
26
|
def dispatch_info
|
@@ -79,7 +81,7 @@ module Dle
|
|
79
81
|
# index filesystem
|
80
82
|
log("index #{c base_dir, :magenta}")
|
81
83
|
logger.ensure_prefix c("[index]\t", :magenta) do
|
82
|
-
@fs = Filesystem.new(base_dir, dotfiles: @opts[:dotfiles])
|
84
|
+
@fs = Filesystem.new(base_dir, dotfiles: @opts[:dotfiles], pattern: @opts[:pattern])
|
83
85
|
|
84
86
|
notifier do
|
85
87
|
loop do
|
data/lib/dle/application.rb
CHANGED
@@ -16,7 +16,7 @@ module Dle
|
|
16
16
|
def self.dispatch *a
|
17
17
|
new(*a) do |app|
|
18
18
|
app.parse_params
|
19
|
-
app.
|
19
|
+
app.logger
|
20
20
|
begin
|
21
21
|
app.dispatch
|
22
22
|
rescue Interrupt
|
@@ -46,6 +46,7 @@ module Dle
|
|
46
46
|
opts.on("-r", "--skip-review", "Skip review changes before applying") { @opts[:review] = false }
|
47
47
|
opts.on("-s", "--simulate", "Don't apply changes, show commands instead") { @opts[:simulate] = true ; @opts[:review] = false }
|
48
48
|
opts.on("-f", "--file DLFILE", "Use input file (be careful)") {|f| @opts[:input_file] = f }
|
49
|
+
opts.on("-o", "--only pattern", c("files", :blue) << c(", ") << c("dirs", :blue) << c(" or regexp (without delimiters)"), " e.g.:" << c(%{ dle ~/Movies -o "(mov|mkv|avi)$"}, :blue)) {|p| @opts[:pattern] = p }
|
49
50
|
opts.on("-m", "--monochrome", "Don't colorize output") { logger.colorize = false }
|
50
51
|
opts.on("-h", "--help", "Shows this help") { @opts[:dispatch] = :help }
|
51
52
|
opts.on("-v", "--version", "Shows version and other info") { @opts[:dispatch] = :info }
|
data/lib/dle/filesystem.rb
CHANGED
@@ -24,6 +24,7 @@ module Dle
|
|
24
24
|
raise ArgumentError, "#{base_dir} is not a directory" unless FileTest.directory?(base_dir)
|
25
25
|
@base_dir = File.expand_path(base_dir).freeze
|
26
26
|
@opts = { dotfiles: true, verbose: true }.merge(opts)
|
27
|
+
@opts[:pattern] = Regexp.new(@opts[:pattern]) unless ["dirs", "files", ""].include?(@opts[:pattern].to_s)
|
27
28
|
@index = {}
|
28
29
|
end
|
29
30
|
|
@@ -34,6 +35,10 @@ module Dle
|
|
34
35
|
|
35
36
|
def index!
|
36
37
|
Find.find(@base_dir) do |path|
|
38
|
+
next if @opts[:pattern] == "files" && !FileTest.file?(path)
|
39
|
+
next if @opts[:pattern] == "dirs" && !FileTest.directory?(path)
|
40
|
+
next if @opts[:pattern].is_a?(Regexp) && !path.match(@opts[:pattern])
|
41
|
+
|
37
42
|
if File.basename(path)[0] == ?. && !@opts[:dotfiles]
|
38
43
|
Find.prune
|
39
44
|
else
|
data/lib/dle/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dle
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sven Pachnit
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-04-
|
11
|
+
date: 2014-04-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: pry
|