dracula 0.5.0 → 0.6.0

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: fe10f1e79a3051535e035ed137b1c942074d57c2
4
- data.tar.gz: 95c3e7dde4bcce0352411762a6d4d52daa1f213a
3
+ metadata.gz: a922140df506eabf4ef3525ffcdf09b708162bf6
4
+ data.tar.gz: 1bcf05a92463bd15fb9c075c64be17609aea8a52
5
5
  SHA512:
6
- metadata.gz: 6daca3596bef3115a8749c3e868de3cb0b33b3d3ab851bbbcf395d2463a13ce11f3e3051fd14ee3b33a3a6aeb1cb11e03e52ecc1b63363eac7e231b5d52442b6
7
- data.tar.gz: 86ff8358a768d0718580645af64705cae2f40153a011517a4b20de66babb26f6ca8e852541545bd408c1929c1725ca554e3bf397c67d776b5542cf5a7b3bb72a
6
+ metadata.gz: 9db38eaa23e7a55a3f7bb94bfaa6670c27142e1653d5ce3993a137412ca2eb6631efebad6f99c3b5694d1b47ea364c3f4b031d71732c9695a59bc1b674693c20
7
+ data.tar.gz: 72dddca965e86b9fc08fc756b5f03e3d080518ac52138e32549da8b318f2b320b93b38abc14535205d474acfe650ea6dc06da97aa1639dad14f310c32770c258
data/README.md CHANGED
@@ -48,9 +48,9 @@ Hi dracula!
48
48
 
49
49
  Every method in your class represents a command.
50
50
 
51
- ## Command line options
51
+ ## Command line flags
52
52
 
53
- A command can have one or more command line options.
53
+ A command can have one or more command line flags.
54
54
 
55
55
  ``` ruby
56
56
  class CLI < Dracula
@@ -72,11 +72,11 @@ $ cli hello --name "Peter"
72
72
  Hi Peter!
73
73
  ```
74
74
 
75
- The options are defined above the method.
75
+ The flags are defined above the method.
76
76
 
77
77
  #### Default values
78
78
 
79
- Options can have default values:
79
+ flags can have default values:
80
80
 
81
81
  ``` ruby
82
82
  class CLI < Dracula
@@ -230,7 +230,7 @@ CLI.docs
230
230
  :desc => "Log in to the cli",
231
231
  :long_desc => "Log in to the app from the command line.\n",
232
232
  :shell => "git login --username USERNAME --password PASSWORD",
233
- :options => [
233
+ :flags => [
234
234
  { :name => "username", :required => true, :type => "string", :alias => "u", :default => nil },
235
235
  { :name => "password", :required => true, :type => "string", :alias => "p", :default => nil },
236
236
  { :name => "verbose", :required => false, :type => "boolean", :alias => "v", :default => false }
@@ -247,14 +247,14 @@ CLI.docs
247
247
  :long_desc => "",
248
248
  :desc => "List teams in an organization",
249
249
  :shell => "git teams:list ORG",
250
- :options => []
250
+ :flags => []
251
251
  },
252
252
  {
253
253
  :name => "info",
254
254
  :long_desc => "",
255
255
  :desc => "Show info for a team",
256
256
  :shell => "git teams:info TEAM",
257
- :options => []
257
+ :flags => []
258
258
  }
259
259
  ],
260
260
 
@@ -267,14 +267,14 @@ CLI.docs
267
267
  :long_desc => "",
268
268
  :desc => "Add a project to the team",
269
269
  :shell => "git teams:projects:add TEAM PROJECT",
270
- :options => []
270
+ :flags => []
271
271
  },
272
272
  {
273
273
  :name => "list",
274
274
  :desc => "List projects in a team",
275
275
  :long_desc => "",
276
276
  :shell => "git teams:projects:list TEAM",
277
- :options => []
277
+ :flags => []
278
278
  }
279
279
  ],
280
280
 
@@ -43,7 +43,11 @@ class Dracula
43
43
  def show_flags
44
44
  puts Dracula::UI.bold("Flags:")
45
45
 
46
- @command.flags.each { |flag| puts " #{flag.banner}" }
46
+ flags = @command.flags.map do |flag|
47
+ [flag.banner, flag.description]
48
+ end
49
+
50
+ Dracula::UI.print_table(flags, :indent => 2)
47
51
 
48
52
  puts ""
49
53
  end
@@ -1,6 +1,10 @@
1
1
  class Dracula
2
2
  class Flag < Struct.new(:name, :params)
3
3
 
4
+ def description
5
+ params[:desc]
6
+ end
7
+
4
8
  def type
5
9
  params[:type] || :string
6
10
  end
@@ -32,11 +36,7 @@ class Dracula
32
36
  alias_method :short_name, :alias_name
33
37
 
34
38
  def banner
35
- if short_name_banner
36
- "#{short_name_banner}, #{long_name_banner}"
37
- else
38
- long_name_banner
39
- end
39
+ [short_name_banner, long_name_banner].compact.join(", ")
40
40
  end
41
41
 
42
42
  def short_name_banner
@@ -23,13 +23,14 @@ class Dracula
23
23
  :desc => command.description,
24
24
  :long_desc => command.long_desc.to_s,
25
25
  :shell => command_shell(command),
26
- :options => command.options.map do |option|
26
+ :flags => command.options.map do |option|
27
27
  {
28
28
  :name => option.name.to_s,
29
29
  :required => option.required?,
30
30
  :type => option.type.to_s,
31
31
  :alias => option.alias_name,
32
- :default => option.default_value
32
+ :default => option.default_value,
33
+ :desc => option.description.to_s
33
34
  }
34
35
  end
35
36
  }
@@ -1,3 +1,3 @@
1
1
  class Dracula
2
- VERSION = "0.5.0".freeze
2
+ VERSION = "0.6.0".freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dracula
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Igor Šarčević
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-10-17 00:00:00.000000000 Z
11
+ date: 2017-10-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler