ro_commands 0.0.1 → 0.0.2
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/Rakefile +1 -1
- data/bin/ro_client +1 -0
- data/bin/ro_server +1 -1
- data/config/rorc.rb +1 -0
- data/lib/bash_builder.rb +10 -7
- data/lib/bash_builder_helper.rb +25 -23
- data/lib/bash_templates/file.sh +1 -0
- data/lib/bash_templates/git.sh +1 -0
- data/lib/bash_templates/jekyll.sh +3 -0
- data/lib/bash_templates/misc.sh +6 -39
- data/lib/bash_templates/ruby.sh +1 -0
- data/lib/bash_templates/rubymine_idea.sh +41 -0
- data/lib/bash_templates/shortcuts.sh +1 -1
- data/lib/bash_templates/video.sh +4 -0
- data/lib/builder_templates/set_envs.erb +3 -2
- data/lib/drb/client.rb +14 -4
- data/lib/drb/server.rb +2 -1
- data/lib/git_flow_builder_helper.rb +24 -22
- data/lib/rails_builder_helper.rb +31 -28
- data/lib/ro_commands/base.rb +13 -2
- data/lib/ro_commands/core_ext/string.rb +4 -0
- data/lib/ro_commands/core_ext/thor.rb +0 -71
- data/lib/ro_commands/dsl/{file.rb → ro_file.rb} +3 -4
- data/lib/ro_commands/generators/spec_file.rb +24 -17
- data/lib/ro_commands/generators/templates/ex.erb +4 -0
- data/lib/ro_commands/generators/templates/spec.erb +3 -0
- data/lib/ro_commands/helpers/bash.rb +33 -7
- data/lib/ro_commands/helpers/out.rb +61 -2
- data/lib/ro_commands/info.rb +12 -8
- data/lib/ro_commands/navigate.rb +5 -1
- data/lib/ro_commands/rails.rb +1 -1
- data/lib/ro_commands/shortcuts.rb +82 -3
- data/lib/ro_commands/try.rb +8 -1
- data/lib/ro_commands/version.rb +1 -1
- data/lib/ro_commands/zeus_templates/custom_plan.rb +15 -7
- data/lib/ro_commands/zeus_templates/zeus.json +12 -5
- data/lib/set_envs_helper.rb +70 -0
- data/ro_commands.sh +839 -0
- metadata +66 -5
- data/lib/shortcuts.rb +0 -43
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9b3c8d65b42b4dbaff8d2e5d9b6de5cdc2c6bd45
|
4
|
+
data.tar.gz: 3c5c665b73f9b3028875c614b9e7797add0551f3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7aeb6a23fef8828da338d112fdc10d1987959bd02e8245e8ffb6b5caaf2723b285ab4b20478d52c3a379b4bc6660d15fb1eef3a5c3993d9bb2efa397d2904816
|
7
|
+
data.tar.gz: 2d323255f4203f5af461b32c53346d90bfe8e8293c7d17da3ce0fd23d866ebf39bdcb8736c17940f41451779aa1db7cbb66934fbc0844f4812332db2eadac561
|
data/Rakefile
CHANGED
data/bin/ro_client
CHANGED
data/bin/ro_server
CHANGED
data/config/rorc.rb
CHANGED
data/lib/bash_builder.rb
CHANGED
@@ -7,16 +7,19 @@ require "ro_commands/ro_helper"
|
|
7
7
|
require_relative "bash_builder_helper"
|
8
8
|
require_relative "rails_builder_helper"
|
9
9
|
require_relative "git_flow_builder_helper"
|
10
|
+
require_relative "set_envs_helper"
|
11
|
+
require "ro_commands/helpers/out"
|
10
12
|
|
11
13
|
class BashBuilder
|
12
|
-
include BashBuilderHelper
|
13
|
-
include RailsBuilderHelper
|
14
|
-
include GitFlowBuilderHelper
|
14
|
+
include RoHelpers::BashBuilderHelper
|
15
|
+
include RoHelpers::RailsBuilderHelper
|
16
|
+
include RoHelpers::GitFlowBuilderHelper
|
17
|
+
include RoHelpers::SetEnvsHelper
|
15
18
|
|
16
19
|
class << self
|
17
20
|
def build
|
18
21
|
reset_ivars
|
19
|
-
|
22
|
+
set_envs
|
20
23
|
build_rails_cmds
|
21
24
|
build_rails_completions
|
22
25
|
build_git_flow_cmds
|
@@ -51,7 +54,7 @@ class BashBuilder
|
|
51
54
|
path = File.expand_path("../builder_templates/#{name}.erb", __FILE__)
|
52
55
|
|
53
56
|
@ctn = ERB.new(File.read(path)).result(binding)
|
54
|
-
|
57
|
+
Out.out "Building templates #{File.basename path}"
|
55
58
|
end
|
56
59
|
|
57
60
|
def _build_completion
|
@@ -62,7 +65,7 @@ class BashBuilder
|
|
62
65
|
build_template('rails')
|
63
66
|
end
|
64
67
|
|
65
|
-
def
|
68
|
+
def _set_envs
|
66
69
|
build_template('set_envs')
|
67
70
|
end
|
68
71
|
|
@@ -73,7 +76,7 @@ class BashBuilder
|
|
73
76
|
end
|
74
77
|
|
75
78
|
def file_write(file, ctn)
|
76
|
-
|
79
|
+
Out.out "writing #{file}"
|
77
80
|
File.write(file, ctn)
|
78
81
|
end
|
79
82
|
|
data/lib/bash_builder_helper.rb
CHANGED
@@ -1,34 +1,36 @@
|
|
1
|
-
module
|
2
|
-
|
1
|
+
module RoHelpers
|
2
|
+
module BashBuilderHelper
|
3
|
+
include RoCommands::RoHelper
|
3
4
|
|
4
|
-
|
5
|
-
|
6
|
-
|
5
|
+
class << self
|
6
|
+
def included(base)
|
7
|
+
base.extend(ClsMeths)
|
8
|
+
end
|
7
9
|
end
|
8
|
-
end
|
9
10
|
|
10
|
-
|
11
|
-
|
11
|
+
module ClsMeths
|
12
|
+
include RoCommands::RoHelper::ClassMethods
|
12
13
|
|
13
|
-
|
14
|
-
|
15
|
-
|
14
|
+
def is_helper?(meth)
|
15
|
+
::BashBuilderHelper.meths.include?(meth)
|
16
|
+
end
|
16
17
|
|
17
|
-
|
18
|
-
|
19
|
-
|
18
|
+
def ctn
|
19
|
+
@ctn ||= ""
|
20
|
+
end
|
20
21
|
|
21
|
-
|
22
|
-
|
23
|
-
|
22
|
+
def after_each
|
23
|
+
content << @ctn
|
24
|
+
end
|
24
25
|
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
26
|
+
def content
|
27
|
+
@content.uniq! if @content.respond_to?(:uniq!)
|
28
|
+
@content ||= []
|
29
|
+
end
|
29
30
|
|
30
|
-
|
31
|
-
|
31
|
+
def target
|
32
|
+
File.join($root, 'ro_commands.sh')
|
33
|
+
end
|
32
34
|
end
|
33
35
|
end
|
34
36
|
end
|
@@ -0,0 +1 @@
|
|
1
|
+
alias list="ro info list ."
|
data/lib/bash_templates/git.sh
CHANGED
data/lib/bash_templates/misc.sh
CHANGED
@@ -1,43 +1,10 @@
|
|
1
|
-
alias spec="
|
2
|
-
alias ex="
|
1
|
+
alias spec="ro generate spec_file"
|
2
|
+
alias ex="ro generate ex"
|
3
3
|
alias dl="cd ~/Downloads"
|
4
|
-
|
5
|
-
|
6
|
-
path=`ro_client navigate get_dir $1`
|
7
|
-
echo "cd $path"
|
8
|
-
cd "$path"
|
9
|
-
}
|
10
|
-
|
11
|
-
opendir () {
|
12
|
-
goto $1
|
13
|
-
rubymine .
|
14
|
-
}
|
15
|
-
|
16
|
-
# cd to project path
|
17
|
-
cpj () {
|
18
|
-
path=`ro_client navigate get_project $1`
|
19
|
-
echo "cd $path"
|
20
|
-
cd "$path"
|
21
|
-
}
|
22
|
-
|
23
|
-
pj () {
|
24
|
-
cpj $1
|
25
|
-
rubymine "$path"
|
26
|
-
}
|
27
|
-
|
28
|
-
cjpj () {
|
29
|
-
path=`ro_client navigate get_project $1 java`
|
30
|
-
echo "opening $path"
|
31
|
-
cd "$path"
|
32
|
-
}
|
33
|
-
|
34
|
-
jpj () {
|
35
|
-
path=`ro_client navigate get_project $1 java`
|
36
|
-
echo "opening $path"
|
37
|
-
cd "$path"
|
38
|
-
idea "$path"
|
39
|
-
}
|
4
|
+
alias sshproxy="sudo service ssh-proxy"
|
5
|
+
alias roserver="sudo service ro_server"
|
40
6
|
|
7
|
+
# cd to dir
|
41
8
|
rp () {
|
42
9
|
cd "$ruby_projects"
|
43
10
|
}
|
@@ -60,7 +27,7 @@ alias l="cd $learn"
|
|
60
27
|
#find railscasts
|
61
28
|
alias rc="ro_client file_actions find_railscasts"
|
62
29
|
|
63
|
-
# reload
|
30
|
+
# reload ~/bashrc.erb
|
64
31
|
alias rb="source ~/.bashrc"
|
65
32
|
|
66
33
|
alias proxy="http_proxy='socks5://127.0.0.1:1080'"
|
@@ -0,0 +1 @@
|
|
1
|
+
alias guard="bundle exec guard"
|
@@ -3,3 +3,44 @@ alias i='idea `pwd`'
|
|
3
3
|
|
4
4
|
#rubymine
|
5
5
|
alias r='rubymine `pwd`'
|
6
|
+
alias libspec="ro shortcuts lib_spec"
|
7
|
+
|
8
|
+
cdir () {
|
9
|
+
path=`ro_client navigate get_dir $1`
|
10
|
+
echo "cd $path"
|
11
|
+
cd "$path"
|
12
|
+
}
|
13
|
+
|
14
|
+
odir () {
|
15
|
+
cdir $1
|
16
|
+
rubymine .
|
17
|
+
}
|
18
|
+
|
19
|
+
# cd to project path
|
20
|
+
cpj () {
|
21
|
+
path=`ro_client navigate get_project $1`
|
22
|
+
echo "cd $path"
|
23
|
+
cd "$path"
|
24
|
+
}
|
25
|
+
|
26
|
+
pj () {
|
27
|
+
cpj $1
|
28
|
+
rubymine "$path"
|
29
|
+
}
|
30
|
+
|
31
|
+
cjpj () {
|
32
|
+
path=`ro_client navigate get_project $1 java`
|
33
|
+
echo "opening $path"
|
34
|
+
cd "$path"
|
35
|
+
}
|
36
|
+
|
37
|
+
jpj () {
|
38
|
+
path=`ro_client navigate get_project $1 java`
|
39
|
+
echo "opening $path"
|
40
|
+
cd "$path"
|
41
|
+
idea "$path"
|
42
|
+
}
|
43
|
+
|
44
|
+
alias rco="ro shortcuts open_ro_commands"
|
45
|
+
alias rsu="ro shortcuts open_ro_support"
|
46
|
+
|
@@ -1 +1 @@
|
|
1
|
-
alias work="
|
1
|
+
alias work="ro shortcuts work"
|
@@ -5,5 +5,6 @@ learn="$HOME/Dropbox/learn"
|
|
5
5
|
ruby_projects="$HOME/Dropbox/ruby-projects"
|
6
6
|
js_java_projects="$HOME/Dropbox/js-java-projects"
|
7
7
|
work_project="$ruby_projects/ro_partner"
|
8
|
-
ro="
|
9
|
-
|
8
|
+
alias ro="bundle exec ro"
|
9
|
+
alias ro_client="<%= ro_client %>"
|
10
|
+
alias ro_server="<%= ro_server %>"
|
data/lib/drb/client.rb
CHANGED
@@ -1,22 +1,32 @@
|
|
1
1
|
require "drb"
|
2
|
+
|
2
3
|
require "ro_commands/helpers/all_files"
|
3
4
|
require "ro_commands/helpers/out"
|
4
5
|
require "ro_commands/core_ext/string"
|
5
6
|
|
6
|
-
item = ARGV.shift
|
7
|
-
meth = ARGV.shift
|
8
|
-
args = ARGV
|
9
7
|
|
8
|
+
item = ARGV.shift
|
10
9
|
DRb.start_service
|
11
10
|
file = RoCommands.file_map.keys.grep(%r{#{item}}).first
|
12
11
|
|
13
12
|
if file
|
14
13
|
port = RoCommands.file_map[file.to_sym]
|
14
|
+
end
|
15
|
+
|
16
|
+
if ARGV.length == 0
|
17
|
+
#drb_obj = DRbObject.new_with_uri("druby://localhost:#{port}")
|
18
|
+
#drb_obj.start
|
19
|
+
else
|
20
|
+
#Out.out "ARGV:#{ARGV} file:#{File.basename __FILE__} line:#{__LINE__}", "red"
|
21
|
+
meth = ARGV.shift
|
22
|
+
args = ARGV
|
15
23
|
|
16
24
|
#Out.out "starting #{File.basename(file.to_s).gsub(%r{\.rb}, "")}"
|
17
25
|
drb_obj = DRbObject.new_with_uri("druby://localhost:#{port}")
|
18
|
-
|
26
|
+
|
27
|
+
r = drb_obj.start(["drb_#{meth}", *args, {pwd: Dir.pwd}])
|
19
28
|
#Out.out "r:#{r} file:#{File.basename __FILE__} line:#{__LINE__}"
|
20
29
|
Out.out(r)
|
21
30
|
end
|
22
31
|
|
32
|
+
|
data/lib/drb/server.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require "active_support/all"
|
1
2
|
require "drb"
|
2
3
|
require "ro_commands"
|
3
4
|
require "ro_commands/core_ext/thor"
|
@@ -20,7 +21,7 @@ RoCommands.file_map.each do |file, port|
|
|
20
21
|
define_method("drb_#{m}".to_sym) do |*args|
|
21
22
|
Out.reset
|
22
23
|
send(m.to_sym, *args)
|
23
|
-
Out.out "Out.msgs:#{Out.msgs} file:#{File.basename __FILE__} line:#{__LINE__}"
|
24
|
+
#Out.out "Out.msgs:#{Out.msgs} file:#{File.basename __FILE__} line:#{__LINE__}"
|
24
25
|
handle_drb_out
|
25
26
|
end
|
26
27
|
end
|
@@ -1,34 +1,36 @@
|
|
1
1
|
require_relative "ro_helper"
|
2
|
-
module
|
3
|
-
|
4
|
-
|
5
|
-
base
|
2
|
+
module RoHelpers
|
3
|
+
module GitFlowBuilderHelper
|
4
|
+
class << self
|
5
|
+
def included(base)
|
6
|
+
base.extend(ClsMeths)
|
7
|
+
end
|
6
8
|
end
|
7
|
-
end
|
8
9
|
|
9
|
-
|
10
|
+
module ClsMeths
|
10
11
|
|
11
|
-
|
12
|
+
include ::RoHelper
|
12
13
|
|
13
|
-
|
14
|
+
class GitFlow < Cmd
|
14
15
|
|
15
|
-
|
16
|
+
end
|
16
17
|
|
17
|
-
|
18
|
-
|
18
|
+
def git_flows
|
19
|
+
cmd 'gfi', "git init && git flow init -f"
|
19
20
|
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
21
|
+
#git flow release
|
22
|
+
cmd 'fr', "git flow release"
|
23
|
+
cmd 'frf', "fr finish", "zeus git_flow get_releases"
|
24
|
+
cmd 'frp', "fr publish", "zeus git_flow get_releases"
|
24
25
|
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
26
|
+
#git flow feature
|
27
|
+
cmd 'ff', "git flow feature"
|
28
|
+
cmd 'frs', "git flow release start"
|
29
|
+
cmd 'ffs', "git flow feature start"
|
30
|
+
cmd 'fff', "ff finish", "zeus git_flow get_features"
|
31
|
+
cmd 'ffc', 'ff checkout', "zeus git flow get_features"
|
32
|
+
cmds
|
33
|
+
end
|
32
34
|
end
|
33
35
|
end
|
34
36
|
end
|
data/lib/rails_builder_helper.rb
CHANGED
@@ -1,41 +1,44 @@
|
|
1
1
|
require_relative "ro_helper"
|
2
|
-
module
|
3
|
-
|
4
|
-
|
5
|
-
base
|
2
|
+
module RoHelpers
|
3
|
+
module RailsBuilderHelper
|
4
|
+
class << self
|
5
|
+
def included(base)
|
6
|
+
base.extend(ClsMeths)
|
7
|
+
end
|
6
8
|
end
|
7
|
-
end
|
8
9
|
|
9
|
-
|
10
|
+
module ClsMeths
|
10
11
|
|
11
|
-
|
12
|
+
include ::RoHelper
|
12
13
|
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
14
|
+
def rails_cmds
|
15
|
+
cmd 'z', 'zeus'
|
16
|
+
cmd 'zr', 'z rails'
|
17
|
+
cmd 'g', 'z g'
|
18
|
+
cmd 'd', 'z d'
|
19
|
+
cmd 'zs', 'z s'
|
18
20
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
21
|
+
# generate
|
22
|
+
cmd 'a', 'z g assets'
|
23
|
+
cmd 'c', 'zr controller'
|
24
|
+
cmd 'm', 'zr migration'
|
25
|
+
cmd 'mo', 'zr model'
|
26
|
+
cmd 's', 'zr scaffold'
|
25
27
|
|
26
28
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
29
|
+
# destroy
|
30
|
+
cmd 'da', 'd assets', 'ro_client rails get_assets'
|
31
|
+
cmd 'dco', 'd controller', 'ro_client rails get_controllers'
|
32
|
+
cmd 'dmo', 'd model', 'ro_client rails get_models'
|
33
|
+
cmd 'dm', 'd migration', 'ro_client rails get_migrations'
|
34
|
+
cmd 'ds', 'd scaffold', 'ro_client rails get_scaffolds'
|
33
35
|
|
34
|
-
|
35
|
-
|
36
|
+
# misc
|
37
|
+
cmd 'mi', 'z rake db:migrate'
|
36
38
|
|
37
|
-
|
38
|
-
|
39
|
+
cmd 'bx', "bundle exec"
|
40
|
+
cmds
|
41
|
+
end
|
39
42
|
end
|
40
43
|
end
|
41
44
|
end
|
data/lib/ro_commands/base.rb
CHANGED
@@ -5,6 +5,8 @@ require "ro_commands/core_ext/string"
|
|
5
5
|
require "ro_commands/core_ext/hash"
|
6
6
|
require "ro_commands/helpers/out"
|
7
7
|
require "ro_commands/helpers/bash"
|
8
|
+
require "active_support/all"
|
9
|
+
require "ro_commands/core_ext/thor"
|
8
10
|
|
9
11
|
#Thor.class_eval do
|
10
12
|
#
|
@@ -23,6 +25,16 @@ module RoCommands
|
|
23
25
|
class Base < Thor
|
24
26
|
protected
|
25
27
|
class << self
|
28
|
+
def start(given_args=ARGV, config={})
|
29
|
+
given_args.flatten!
|
30
|
+
opt = given_args.extract_options!
|
31
|
+
if opt and opt[:pwd]
|
32
|
+
Out.out("Current working path is #{opt[:pwd]}")
|
33
|
+
Dir.chdir opt[:pwd]
|
34
|
+
end
|
35
|
+
given_args = given_args - [{pwd: opt[:pwd]}]
|
36
|
+
super
|
37
|
+
end
|
26
38
|
|
27
39
|
def method_added(method)
|
28
40
|
super
|
@@ -48,7 +60,6 @@ module RoCommands
|
|
48
60
|
|
49
61
|
include ::Bash
|
50
62
|
|
51
|
-
|
52
63
|
def get_options(args)
|
53
64
|
h = {}
|
54
65
|
args.select do |a|
|
@@ -88,7 +99,7 @@ module RoCommands
|
|
88
99
|
opts
|
89
100
|
end
|
90
101
|
|
91
|
-
def handle_drb_out
|
102
|
+
def handle_drb_out
|
92
103
|
Out.msgs
|
93
104
|
end
|
94
105
|
end
|
@@ -1,71 +0,0 @@
|
|
1
|
-
require "thor"
|
2
|
-
Thor::Shell::Basic.class_eval do
|
3
|
-
def say(message="", color=nil, force_new_line=(message.to_s !~ /( |\t)\Z/))
|
4
|
-
message = message.to_s
|
5
|
-
|
6
|
-
message = set_color(message, *color) if color && can_display_colors?
|
7
|
-
|
8
|
-
spaces = " " * padding
|
9
|
-
|
10
|
-
if force_new_line
|
11
|
-
stdout.puts(spaces + message)
|
12
|
-
else
|
13
|
-
stdout.print(spaces + message)
|
14
|
-
end
|
15
|
-
|
16
|
-
#puts "message:#{message} line:#{__LINE__}"
|
17
|
-
$ro_out << message
|
18
|
-
end
|
19
|
-
|
20
|
-
def print_table(array, options={})
|
21
|
-
return if array.empty?
|
22
|
-
|
23
|
-
formats, indent, colwidth = [], options[:indent].to_i, options[:colwidth]
|
24
|
-
options[:truncate] = terminal_width if options[:truncate] == true
|
25
|
-
|
26
|
-
formats << "%-#{colwidth + 2}s" if colwidth
|
27
|
-
start = colwidth ? 1 : 0
|
28
|
-
|
29
|
-
colcount = array.max{|a,b| a.size <=> b.size }.size
|
30
|
-
|
31
|
-
maximas = []
|
32
|
-
|
33
|
-
start.upto(colcount - 1) do |index|
|
34
|
-
maxima = array.map {|row| row[index] ? row[index].to_s.size : 0 }.max
|
35
|
-
maximas << maxima
|
36
|
-
if index == colcount - 1
|
37
|
-
# Don't output 2 trailing spaces when printing the last column
|
38
|
-
formats << "%-s"
|
39
|
-
else
|
40
|
-
formats << "%-#{maxima + 2}s"
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
formats[0] = formats[0].insert(0, " " * indent)
|
45
|
-
formats << "%s"
|
46
|
-
|
47
|
-
array.each do |row|
|
48
|
-
sentence = ""
|
49
|
-
|
50
|
-
row.each_with_index do |column, index|
|
51
|
-
maxima = maximas[index]
|
52
|
-
|
53
|
-
if column.is_a?(Numeric)
|
54
|
-
if index == row.size - 1
|
55
|
-
# Don't output 2 trailing spaces when printing the last column
|
56
|
-
f = "%#{maxima}s"
|
57
|
-
else
|
58
|
-
f = "%#{maxima}s "
|
59
|
-
end
|
60
|
-
else
|
61
|
-
f = formats[index]
|
62
|
-
end
|
63
|
-
sentence << f % column.to_s
|
64
|
-
end
|
65
|
-
|
66
|
-
sentence = truncate(sentence, options[:truncate]) if options[:truncate]
|
67
|
-
$ro_out << sentence
|
68
|
-
stdout.puts sentence
|
69
|
-
end
|
70
|
-
end
|
71
|
-
end
|
@@ -2,12 +2,11 @@ require 'find'
|
|
2
2
|
|
3
3
|
module RoCommands
|
4
4
|
module DSL
|
5
|
-
module
|
5
|
+
module RoFile
|
6
6
|
def dir?(path)
|
7
7
|
test(?d, path)
|
8
8
|
end
|
9
9
|
|
10
|
-
# file?
|
11
10
|
def file?(path)
|
12
11
|
test(?f, path)
|
13
12
|
end
|
@@ -16,9 +15,9 @@ module RoCommands
|
|
16
15
|
Find.find(path).to_a
|
17
16
|
end
|
18
17
|
|
19
|
-
# size
|
20
18
|
def size(path)
|
21
|
-
test(?s, path)
|
19
|
+
s = test(?s, path)
|
20
|
+
s ||= 0
|
22
21
|
end
|
23
22
|
end
|
24
23
|
end
|