bovem 2.4.1 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -1
  3. data/Gemfile +1 -1
  4. data/README.md +98 -2
  5. data/bovem.gemspec +3 -3
  6. data/doc/Bovem.html +25 -6
  7. data/doc/Bovem/Application.html +3057 -0
  8. data/doc/Bovem/Command.html +7031 -0
  9. data/doc/Bovem/CommandMethods.html +125 -0
  10. data/doc/Bovem/CommandMethods/Children.html +1285 -0
  11. data/doc/Bovem/CommandMethods/Help.html +209 -0
  12. data/doc/Bovem/Configuration.html +3 -3
  13. data/doc/Bovem/Console.html +8 -8
  14. data/doc/Bovem/ConsoleMethods.html +3 -3
  15. data/doc/Bovem/ConsoleMethods/Interactions.html +3 -3
  16. data/doc/Bovem/ConsoleMethods/Interactions/ClassMethods.html +3 -3
  17. data/doc/Bovem/ConsoleMethods/Logging.html +4 -4
  18. data/doc/Bovem/ConsoleMethods/Logging/ClassMethods.html +3 -3
  19. data/doc/Bovem/ConsoleMethods/Output.html +3 -3
  20. data/doc/Bovem/ConsoleMethods/StyleHandling.html +4 -4
  21. data/doc/Bovem/ConsoleMethods/StyleHandling/ClassMethods.html +8 -8
  22. data/doc/Bovem/Errors.html +4 -4
  23. data/doc/Bovem/Errors/Error.html +631 -0
  24. data/doc/Bovem/Errors/InvalidConfiguration.html +3 -3
  25. data/doc/Bovem/Errors/InvalidLogger.html +3 -3
  26. data/doc/Bovem/Localizer.html +376 -0
  27. data/doc/Bovem/Logger.html +64 -160
  28. data/doc/Bovem/Option.html +7009 -0
  29. data/doc/Bovem/Parser.html +276 -0
  30. data/doc/Bovem/ParserMethods.html +125 -0
  31. data/doc/Bovem/ParserMethods/General.html +134 -0
  32. data/doc/Bovem/ParserMethods/General/ClassMethods.html +574 -0
  33. data/doc/Bovem/Shell.html +8 -8
  34. data/doc/Bovem/ShellMethods.html +3 -3
  35. data/doc/Bovem/ShellMethods/Directories.html +3 -3
  36. data/doc/Bovem/ShellMethods/Execute.html +3 -3
  37. data/doc/Bovem/ShellMethods/General.html +3 -3
  38. data/doc/Bovem/ShellMethods/Read.html +3 -3
  39. data/doc/Bovem/ShellMethods/Write.html +3 -3
  40. data/doc/Bovem/Version.html +6 -6
  41. data/doc/_index.html +119 -11
  42. data/doc/class_list.html +1 -1
  43. data/doc/file.README.html +98 -5
  44. data/doc/frames.html +1 -1
  45. data/doc/index.html +98 -5
  46. data/doc/method_list.html +476 -26
  47. data/doc/top-level-namespace.html +3 -3
  48. data/lib/bovem.rb +8 -1
  49. data/lib/bovem/application.rb +158 -0
  50. data/lib/bovem/command.rb +529 -0
  51. data/lib/bovem/console.rb +8 -8
  52. data/lib/bovem/errors.rb +27 -0
  53. data/lib/bovem/localizer.rb +27 -0
  54. data/lib/bovem/logger.rb +2 -8
  55. data/lib/bovem/option.rb +250 -0
  56. data/lib/bovem/parser.rb +317 -0
  57. data/lib/bovem/shell.rb +2 -2
  58. data/lib/bovem/version.rb +3 -3
  59. data/locales/en.yml +33 -0
  60. data/locales/it.yml +33 -0
  61. data/spec/bovem/application_spec.rb +170 -0
  62. data/spec/bovem/command_spec.rb +526 -0
  63. data/spec/bovem/configuration_spec.rb +4 -4
  64. data/spec/bovem/console_spec.rb +22 -22
  65. data/spec/bovem/errors_spec.rb +18 -0
  66. data/spec/bovem/logger_spec.rb +22 -12
  67. data/spec/bovem/option_spec.rb +307 -0
  68. data/spec/bovem/parser_spec.rb +126 -0
  69. data/spec/bovem/shell_spec.rb +4 -4
  70. metadata +32 -5
data/doc/class_list.html CHANGED
@@ -46,7 +46,7 @@
46
46
 
47
47
  <ul id="full_list" class="class">
48
48
  <li><span class='object_link'><a href="top-level-namespace.html" title="Top Level Namespace (root)">Top Level Namespace</a></span></li>
49
- <li><a class='toggle'></a> <span class='object_link'><a href="Bovem.html" title="Bovem (module)">Bovem</a></span><small class='search_info'>Top Level Namespace</small></li><ul><li><span class='object_link'><a href="Bovem/Configuration.html" title="Bovem::Configuration (class)">Configuration</a></span> &lt; Configuration<small class='search_info'>Bovem</small></li><li><span class='object_link'><a href="Bovem/Console.html" title="Bovem::Console (class)">Console</a></span> &lt; Object<small class='search_info'>Bovem</small></li><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/ConsoleMethods.html" title="Bovem::ConsoleMethods (module)">ConsoleMethods</a></span><small class='search_info'>Bovem</small></li><ul><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/ConsoleMethods/Interactions.html" title="Bovem::ConsoleMethods::Interactions (module)">Interactions</a></span><small class='search_info'>Bovem::ConsoleMethods</small></li><ul><li><span class='object_link'><a href="Bovem/ConsoleMethods/Interactions/ClassMethods.html" title="Bovem::ConsoleMethods::Interactions::ClassMethods (module)">ClassMethods</a></span><small class='search_info'>Bovem::ConsoleMethods::Interactions</small></li></ul><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/ConsoleMethods/Logging.html" title="Bovem::ConsoleMethods::Logging (module)">Logging</a></span><small class='search_info'>Bovem::ConsoleMethods</small></li><ul><li><span class='object_link'><a href="Bovem/ConsoleMethods/Logging/ClassMethods.html" title="Bovem::ConsoleMethods::Logging::ClassMethods (module)">ClassMethods</a></span><small class='search_info'>Bovem::ConsoleMethods::Logging</small></li></ul><li><span class='object_link'><a href="Bovem/ConsoleMethods/Output.html" title="Bovem::ConsoleMethods::Output (module)">Output</a></span><small class='search_info'>Bovem::ConsoleMethods</small></li><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/ConsoleMethods/StyleHandling.html" title="Bovem::ConsoleMethods::StyleHandling (module)">StyleHandling</a></span><small class='search_info'>Bovem::ConsoleMethods</small></li><ul><li><span class='object_link'><a href="Bovem/ConsoleMethods/StyleHandling/ClassMethods.html" title="Bovem::ConsoleMethods::StyleHandling::ClassMethods (module)">ClassMethods</a></span><small class='search_info'>Bovem::ConsoleMethods::StyleHandling</small></li></ul></ul><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/Errors.html" title="Bovem::Errors (module)">Errors</a></span><small class='search_info'>Bovem</small></li><ul><li><span class='object_link'><a href="Bovem/Errors/InvalidConfiguration.html" title="Bovem::Errors::InvalidConfiguration (class)">InvalidConfiguration</a></span> &lt; ArgumentError<small class='search_info'>Bovem::Errors</small></li><li><span class='object_link'><a href="Bovem/Errors/InvalidLogger.html" title="Bovem::Errors::InvalidLogger (class)">InvalidLogger</a></span> &lt; ArgumentError<small class='search_info'>Bovem::Errors</small></li></ul><li><span class='object_link'><a href="Bovem/Logger.html" title="Bovem::Logger (class)">Logger</a></span> &lt; Logger<small class='search_info'>Bovem</small></li><li><span class='object_link'><a href="Bovem/Shell.html" title="Bovem::Shell (class)">Shell</a></span> &lt; Object<small class='search_info'>Bovem</small></li><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/ShellMethods.html" title="Bovem::ShellMethods (module)">ShellMethods</a></span><small class='search_info'>Bovem</small></li><ul><li><span class='object_link'><a href="Bovem/ShellMethods/Directories.html" title="Bovem::ShellMethods::Directories (module)">Directories</a></span><small class='search_info'>Bovem::ShellMethods</small></li><li><span class='object_link'><a href="Bovem/ShellMethods/Execute.html" title="Bovem::ShellMethods::Execute (module)">Execute</a></span><small class='search_info'>Bovem::ShellMethods</small></li><li><span class='object_link'><a href="Bovem/ShellMethods/General.html" title="Bovem::ShellMethods::General (module)">General</a></span><small class='search_info'>Bovem::ShellMethods</small></li><li><span class='object_link'><a href="Bovem/ShellMethods/Read.html" title="Bovem::ShellMethods::Read (module)">Read</a></span><small class='search_info'>Bovem::ShellMethods</small></li><li><span class='object_link'><a href="Bovem/ShellMethods/Write.html" title="Bovem::ShellMethods::Write (module)">Write</a></span><small class='search_info'>Bovem::ShellMethods</small></li></ul><li><span class='object_link'><a href="Bovem/Version.html" title="Bovem::Version (module)">Version</a></span><small class='search_info'>Bovem</small></li></ul>
49
+ <li><a class='toggle'></a> <span class='object_link'><a href="Bovem.html" title="Bovem (module)">Bovem</a></span><small class='search_info'>Top Level Namespace</small></li><ul><li><span class='object_link'><a href="Bovem/Application.html" title="Bovem::Application (class)">Application</a></span> &lt; Command<small class='search_info'>Bovem</small></li><li><span class='object_link'><a href="Bovem/Command.html" title="Bovem::Command (class)">Command</a></span> &lt; Object<small class='search_info'>Bovem</small></li><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/CommandMethods.html" title="Bovem::CommandMethods (module)">CommandMethods</a></span><small class='search_info'>Bovem</small></li><ul><li><span class='object_link'><a href="Bovem/CommandMethods/Children.html" title="Bovem::CommandMethods::Children (module)">Children</a></span><small class='search_info'>Bovem::CommandMethods</small></li><li><span class='object_link'><a href="Bovem/CommandMethods/Help.html" title="Bovem::CommandMethods::Help (module)">Help</a></span><small class='search_info'>Bovem::CommandMethods</small></li></ul><li><span class='object_link'><a href="Bovem/Configuration.html" title="Bovem::Configuration (class)">Configuration</a></span> &lt; Configuration<small class='search_info'>Bovem</small></li><li><span class='object_link'><a href="Bovem/Console.html" title="Bovem::Console (class)">Console</a></span> &lt; Object<small class='search_info'>Bovem</small></li><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/ConsoleMethods.html" title="Bovem::ConsoleMethods (module)">ConsoleMethods</a></span><small class='search_info'>Bovem</small></li><ul><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/ConsoleMethods/Interactions.html" title="Bovem::ConsoleMethods::Interactions (module)">Interactions</a></span><small class='search_info'>Bovem::ConsoleMethods</small></li><ul><li><span class='object_link'><a href="Bovem/ConsoleMethods/Interactions/ClassMethods.html" title="Bovem::ConsoleMethods::Interactions::ClassMethods (module)">ClassMethods</a></span><small class='search_info'>Bovem::ConsoleMethods::Interactions</small></li></ul><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/ConsoleMethods/Logging.html" title="Bovem::ConsoleMethods::Logging (module)">Logging</a></span><small class='search_info'>Bovem::ConsoleMethods</small></li><ul><li><span class='object_link'><a href="Bovem/ConsoleMethods/Logging/ClassMethods.html" title="Bovem::ConsoleMethods::Logging::ClassMethods (module)">ClassMethods</a></span><small class='search_info'>Bovem::ConsoleMethods::Logging</small></li></ul><li><span class='object_link'><a href="Bovem/ConsoleMethods/Output.html" title="Bovem::ConsoleMethods::Output (module)">Output</a></span><small class='search_info'>Bovem::ConsoleMethods</small></li><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/ConsoleMethods/StyleHandling.html" title="Bovem::ConsoleMethods::StyleHandling (module)">StyleHandling</a></span><small class='search_info'>Bovem::ConsoleMethods</small></li><ul><li><span class='object_link'><a href="Bovem/ConsoleMethods/StyleHandling/ClassMethods.html" title="Bovem::ConsoleMethods::StyleHandling::ClassMethods (module)">ClassMethods</a></span><small class='search_info'>Bovem::ConsoleMethods::StyleHandling</small></li></ul></ul><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/Errors.html" title="Bovem::Errors (module)">Errors</a></span><small class='search_info'>Bovem</small></li><ul><li><span class='object_link'><a href="Bovem/Errors/Error.html" title="Bovem::Errors::Error (class)">Error</a></span> &lt; ArgumentError<small class='search_info'>Bovem::Errors</small></li><li><span class='object_link'><a href="Bovem/Errors/InvalidConfiguration.html" title="Bovem::Errors::InvalidConfiguration (class)">InvalidConfiguration</a></span> &lt; ArgumentError<small class='search_info'>Bovem::Errors</small></li><li><span class='object_link'><a href="Bovem/Errors/InvalidLogger.html" title="Bovem::Errors::InvalidLogger (class)">InvalidLogger</a></span> &lt; ArgumentError<small class='search_info'>Bovem::Errors</small></li></ul><li><span class='object_link'><a href="Bovem/Localizer.html" title="Bovem::Localizer (class)">Localizer</a></span> &lt; Localizer<small class='search_info'>Bovem</small></li><li><span class='object_link'><a href="Bovem/Logger.html" title="Bovem::Logger (class)">Logger</a></span> &lt; Logger<small class='search_info'>Bovem</small></li><li><span class='object_link'><a href="Bovem/Option.html" title="Bovem::Option (class)">Option</a></span> &lt; Object<small class='search_info'>Bovem</small></li><li><span class='object_link'><a href="Bovem/Parser.html" title="Bovem::Parser (class)">Parser</a></span> &lt; Object<small class='search_info'>Bovem</small></li><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/ParserMethods.html" title="Bovem::ParserMethods (module)">ParserMethods</a></span><small class='search_info'>Bovem</small></li><ul><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/ParserMethods/General.html" title="Bovem::ParserMethods::General (module)">General</a></span><small class='search_info'>Bovem::ParserMethods</small></li><ul><li><span class='object_link'><a href="Bovem/ParserMethods/General/ClassMethods.html" title="Bovem::ParserMethods::General::ClassMethods (module)">ClassMethods</a></span><small class='search_info'>Bovem::ParserMethods::General</small></li></ul></ul><li><span class='object_link'><a href="Bovem/Shell.html" title="Bovem::Shell (class)">Shell</a></span> &lt; Object<small class='search_info'>Bovem</small></li><li><a class='toggle'></a> <span class='object_link'><a href="Bovem/ShellMethods.html" title="Bovem::ShellMethods (module)">ShellMethods</a></span><small class='search_info'>Bovem</small></li><ul><li><span class='object_link'><a href="Bovem/ShellMethods/Directories.html" title="Bovem::ShellMethods::Directories (module)">Directories</a></span><small class='search_info'>Bovem::ShellMethods</small></li><li><span class='object_link'><a href="Bovem/ShellMethods/Execute.html" title="Bovem::ShellMethods::Execute (module)">Execute</a></span><small class='search_info'>Bovem::ShellMethods</small></li><li><span class='object_link'><a href="Bovem/ShellMethods/General.html" title="Bovem::ShellMethods::General (module)">General</a></span><small class='search_info'>Bovem::ShellMethods</small></li><li><span class='object_link'><a href="Bovem/ShellMethods/Read.html" title="Bovem::ShellMethods::Read (module)">Read</a></span><small class='search_info'>Bovem::ShellMethods</small></li><li><span class='object_link'><a href="Bovem/ShellMethods/Write.html" title="Bovem::ShellMethods::Write (module)">Write</a></span><small class='search_info'>Bovem::ShellMethods</small></li></ul><li><span class='object_link'><a href="Bovem/Version.html" title="Bovem::Version (module)">Version</a></span><small class='search_info'>Bovem</small></li></ul>
50
50
 
51
51
  </ul>
52
52
  </div>
data/doc/file.README.html CHANGED
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  File: README
8
8
 
9
- &mdash; Documentation by YARD 0.8.6.2
9
+ &mdash; Documentation by YARD 0.8.7
10
10
 
11
11
  </title>
12
12
 
@@ -69,7 +69,7 @@
69
69
  <a href="https://codeclimate.com/github/ShogunPanda/bovem"><img src="https://codeclimate.com/github/ShogunPanda/bovem.png" alt="Code Climate" /></a>
70
70
  <a href="https://coveralls.io/r/ShogunPanda/bovem"><img src="https://coveralls.io/repos/ShogunPanda/bovem/badge.png" alt="Coverage Status" /></a></p>
71
71
 
72
- <p>A collection of utilities for developers.</p>
72
+ <p>A command line manager and a collection of utilities for developers.</p>
73
73
 
74
74
  <p>http://sw.cow.tc/bovem</p>
75
75
 
@@ -77,10 +77,103 @@
77
77
 
78
78
  <h2 id="description">Description</h2>
79
79
 
80
- <p>Bovem is a small set of utilities for Ruby developers.</p>
80
+ <p>Bovem is a command line manager and small set of utilities for Ruby developers.</p>
81
81
 
82
82
  <p>See the documentation for more informations.</p>
83
83
 
84
+ <h2 id="basic-usage">Basic usage.</h2>
85
+
86
+ <p>As ever, talking by example is always better.
87
+ This application:</p>
88
+
89
+ <p>```ruby
90
+ require “bovem”</p>
91
+
92
+ <p>Bovem::Application.create(name: “Bovem Usage Test”, version: “1.0.0”, description: “An example modelled like a TODO application”, banner: “Do you like Bovem?”) do
93
+ option(:storage, [“f”, “file”], String, help: “The file where store TODOs to.”, meta: “FILE”)</p>
94
+
95
+ <p>command :list do
96
+ description “List all TODOs.”
97
+ action do |command|
98
+ # You should implement this.
99
+ end
100
+ end</p>
101
+
102
+ <p>command :manage, “Manage existing TODO.” do
103
+ option(:verbose, [], “Be verbose.”)</p>
104
+
105
+ <pre class="code ruby"><code class="ruby">action do |command|
106
+ puts &quot;Please use \&quot;add\&quot; or \&quot;remove\&quot; subcommands.&quot;
107
+ end
108
+
109
+ command :add, {description: &quot;Add a TODO.&quot;} do
110
+ action do |command|
111
+ # You should implement this.
112
+ end
113
+ end
114
+
115
+ command :remove, {description: &quot;Removes a TODO.&quot;} do
116
+ action do |command|
117
+ # You should implement this.
118
+ end
119
+ end end end ```
120
+ </code></pre>
121
+
122
+ <p>Will create a complete (at least at the interface model) TODO application which support commands <code>list</code> and <code>manage</code>.</p>
123
+
124
+ <p>The <code>manage</code> command supports subcommands <code>add</code> and <code>remove</code>. You can invoke it via syntax <code>manage add</code> or <code>manage:add</code>. <strong>If there is no conflict, just <code>m:r</code> is sufficient!</strong></p>
125
+
126
+ <p>To provide (sub)commands, both hash-style or block-style method style are supported (except for the <code>action</code> option), as you can see in the example.</p>
127
+
128
+ <p>You can use the <code>--help</code> switch or the <code>help command</code> syntax to navigate through commands details.</p>
129
+
130
+ <p>After setting up the skeleton, you will just need to write the action bodies and you’re done. <strong>Happy coding!</strong></p>
131
+
132
+ <h3 id="wrapping-up-the-example">Wrapping up the example</h3>
133
+ <p>Here’s the help screen of the application above for the global application and for the <code>manage</code> command.</p>
134
+
135
+ <h4 id="general-help">General help</h4>
136
+
137
+ <p>```
138
+ $ ./test -h
139
+ [NAME]
140
+ Bovem Usage Test 1.0.0 - An example modelled like a TODO application</p>
141
+
142
+ <p>[SYNOPSIS]
143
+ test [options] [command [subcommand …]][command-options] [arguments]</p>
144
+
145
+ <p>[DESCRIPTION]
146
+ Do you like Bovem?</p>
147
+
148
+ <p>[GLOBAL OPTIONS]
149
+ -f FILE, –file FILE - The file where store TODOs to.
150
+ -h, –help - Shows this message.</p>
151
+
152
+ <p>[COMMANDS]
153
+ help - Shows a help about a command.
154
+ list - List all TODOs.
155
+ manage - Manage existing TODO.
156
+ ```</p>
157
+
158
+ <h4 id="the-manage-command-help">The <code>manage</code> command help</h4>
159
+
160
+ <p>```
161
+ $ ./test help manage
162
+ [SYNOPSIS]
163
+ test [options] manage [subcommand …]] [command-options] [arguments]</p>
164
+
165
+ <p>[OPTIONS]
166
+ -v, –verbose - Be verbose.</p>
167
+
168
+ <p>[SUBCOMMANDS]
169
+ add - Add a TODO.
170
+ remove - Removes a TODO.
171
+ ```</p>
172
+
173
+ <h2 id="advanced-usage">Advanced usage</h2>
174
+
175
+ <p>See documentation for more information.</p>
176
+
84
177
  <h2 id="contributing-to-bovem">Contributing to bovem</h2>
85
178
 
86
179
  <ul>
@@ -101,9 +194,9 @@
101
194
  </div></div>
102
195
 
103
196
  <div id="footer">
104
- Generated on Sat Aug 3 12:38:42 2013 by
197
+ Generated on Sat Aug 3 13:50:14 2013 by
105
198
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
106
- 0.8.6.2 (ruby-2.0.0).
199
+ 0.8.7 (ruby-2.0.0).
107
200
  </div>
108
201
 
109
202
  </body>
data/doc/frames.html CHANGED
@@ -4,7 +4,7 @@
4
4
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
5
  <head>
6
6
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
7
- <title>Documentation by YARD 0.8.6.2</title>
7
+ <title>Documentation by YARD 0.8.7</title>
8
8
  </head>
9
9
  <script type="text/javascript" charset="utf-8">
10
10
  window.onload = function() {
data/doc/index.html CHANGED
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  File: README
8
8
 
9
- &mdash; Documentation by YARD 0.8.6.2
9
+ &mdash; Documentation by YARD 0.8.7
10
10
 
11
11
  </title>
12
12
 
@@ -69,7 +69,7 @@
69
69
  <a href="https://codeclimate.com/github/ShogunPanda/bovem"><img src="https://codeclimate.com/github/ShogunPanda/bovem.png" alt="Code Climate" /></a>
70
70
  <a href="https://coveralls.io/r/ShogunPanda/bovem"><img src="https://coveralls.io/repos/ShogunPanda/bovem/badge.png" alt="Coverage Status" /></a></p>
71
71
 
72
- <p>A collection of utilities for developers.</p>
72
+ <p>A command line manager and a collection of utilities for developers.</p>
73
73
 
74
74
  <p>http://sw.cow.tc/bovem</p>
75
75
 
@@ -77,10 +77,103 @@
77
77
 
78
78
  <h2 id="description">Description</h2>
79
79
 
80
- <p>Bovem is a small set of utilities for Ruby developers.</p>
80
+ <p>Bovem is a command line manager and small set of utilities for Ruby developers.</p>
81
81
 
82
82
  <p>See the documentation for more informations.</p>
83
83
 
84
+ <h2 id="basic-usage">Basic usage.</h2>
85
+
86
+ <p>As ever, talking by example is always better.
87
+ This application:</p>
88
+
89
+ <p>```ruby
90
+ require “bovem”</p>
91
+
92
+ <p>Bovem::Application.create(name: “Bovem Usage Test”, version: “1.0.0”, description: “An example modelled like a TODO application”, banner: “Do you like Bovem?”) do
93
+ option(:storage, [“f”, “file”], String, help: “The file where store TODOs to.”, meta: “FILE”)</p>
94
+
95
+ <p>command :list do
96
+ description “List all TODOs.”
97
+ action do |command|
98
+ # You should implement this.
99
+ end
100
+ end</p>
101
+
102
+ <p>command :manage, “Manage existing TODO.” do
103
+ option(:verbose, [], “Be verbose.”)</p>
104
+
105
+ <pre class="code ruby"><code class="ruby">action do |command|
106
+ puts &quot;Please use \&quot;add\&quot; or \&quot;remove\&quot; subcommands.&quot;
107
+ end
108
+
109
+ command :add, {description: &quot;Add a TODO.&quot;} do
110
+ action do |command|
111
+ # You should implement this.
112
+ end
113
+ end
114
+
115
+ command :remove, {description: &quot;Removes a TODO.&quot;} do
116
+ action do |command|
117
+ # You should implement this.
118
+ end
119
+ end end end ```
120
+ </code></pre>
121
+
122
+ <p>Will create a complete (at least at the interface model) TODO application which support commands <code>list</code> and <code>manage</code>.</p>
123
+
124
+ <p>The <code>manage</code> command supports subcommands <code>add</code> and <code>remove</code>. You can invoke it via syntax <code>manage add</code> or <code>manage:add</code>. <strong>If there is no conflict, just <code>m:r</code> is sufficient!</strong></p>
125
+
126
+ <p>To provide (sub)commands, both hash-style or block-style method style are supported (except for the <code>action</code> option), as you can see in the example.</p>
127
+
128
+ <p>You can use the <code>--help</code> switch or the <code>help command</code> syntax to navigate through commands details.</p>
129
+
130
+ <p>After setting up the skeleton, you will just need to write the action bodies and you’re done. <strong>Happy coding!</strong></p>
131
+
132
+ <h3 id="wrapping-up-the-example">Wrapping up the example</h3>
133
+ <p>Here’s the help screen of the application above for the global application and for the <code>manage</code> command.</p>
134
+
135
+ <h4 id="general-help">General help</h4>
136
+
137
+ <p>```
138
+ $ ./test -h
139
+ [NAME]
140
+ Bovem Usage Test 1.0.0 - An example modelled like a TODO application</p>
141
+
142
+ <p>[SYNOPSIS]
143
+ test [options] [command [subcommand …]][command-options] [arguments]</p>
144
+
145
+ <p>[DESCRIPTION]
146
+ Do you like Bovem?</p>
147
+
148
+ <p>[GLOBAL OPTIONS]
149
+ -f FILE, –file FILE - The file where store TODOs to.
150
+ -h, –help - Shows this message.</p>
151
+
152
+ <p>[COMMANDS]
153
+ help - Shows a help about a command.
154
+ list - List all TODOs.
155
+ manage - Manage existing TODO.
156
+ ```</p>
157
+
158
+ <h4 id="the-manage-command-help">The <code>manage</code> command help</h4>
159
+
160
+ <p>```
161
+ $ ./test help manage
162
+ [SYNOPSIS]
163
+ test [options] manage [subcommand …]] [command-options] [arguments]</p>
164
+
165
+ <p>[OPTIONS]
166
+ -v, –verbose - Be verbose.</p>
167
+
168
+ <p>[SUBCOMMANDS]
169
+ add - Add a TODO.
170
+ remove - Removes a TODO.
171
+ ```</p>
172
+
173
+ <h2 id="advanced-usage">Advanced usage</h2>
174
+
175
+ <p>See documentation for more information.</p>
176
+
84
177
  <h2 id="contributing-to-bovem">Contributing to bovem</h2>
85
178
 
86
179
  <ul>
@@ -101,9 +194,9 @@
101
194
  </div></div>
102
195
 
103
196
  <div id="footer">
104
- Generated on Sat Aug 3 12:38:42 2013 by
197
+ Generated on Sat Aug 3 13:50:14 2013 by
105
198
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
106
- 0.8.6.2 (ruby-2.0.0).
199
+ 0.8.7 (ruby-2.0.0).
107
200
  </div>
108
201
 
109
202
  </body>
data/doc/method_list.html CHANGED
@@ -48,23 +48,131 @@
48
48
 
49
49
 
50
50
  <li class="r1 ">
51
+ <span class='object_link'><a href="Bovem/Command.html#action-instance_method" title="Bovem::Command#action (method)">#action</a></span>
52
+ <small>Bovem::Command</small>
53
+ </li>
54
+
55
+
56
+ <li class="r2 ">
57
+ <span class='object_link'><a href="Bovem/Option.html#action-instance_method" title="Bovem::Option#action (method)">#action</a></span>
58
+ <small>Bovem::Option</small>
59
+ </li>
60
+
61
+
62
+ <li class="r1 ">
63
+ <span class='object_link'><a href="Bovem/Command.html#after-instance_method" title="Bovem::Command#after (method)">#after</a></span>
64
+ <small>Bovem::Command</small>
65
+ </li>
66
+
67
+
68
+ <li class="r2 ">
69
+ <span class='object_link'><a href="Bovem/Command.html#application-instance_method" title="Bovem::Command#application (method)">#application</a></span>
70
+ <small>Bovem::Command</small>
71
+ </li>
72
+
73
+
74
+ <li class="r1 ">
75
+ <span class='object_link'><a href="Bovem/CommandMethods/Children.html#argument-instance_method" title="Bovem::CommandMethods::Children#argument (method)">#argument</a></span>
76
+ <small>Bovem::CommandMethods::Children</small>
77
+ </li>
78
+
79
+
80
+ <li class="r2 ">
81
+ <span class='object_link'><a href="Bovem/CommandMethods/Children.html#arguments-instance_method" title="Bovem::CommandMethods::Children#arguments (method)">#arguments</a></span>
82
+ <small>Bovem::CommandMethods::Children</small>
83
+ </li>
84
+
85
+
86
+ <li class="r1 ">
87
+ <span class='object_link'><a href="Bovem/Command.html#arguments-instance_method" title="Bovem::Command#arguments (method)">#arguments</a></span>
88
+ <small>Bovem::Command</small>
89
+ </li>
90
+
91
+
92
+ <li class="r2 ">
93
+ <span class='object_link'><a href="Bovem/Command.html#banner-instance_method" title="Bovem::Command#banner (method)">#banner</a></span>
94
+ <small>Bovem::Command</small>
95
+ </li>
96
+
97
+
98
+ <li class="r1 ">
99
+ <span class='object_link'><a href="Bovem/Command.html#before-instance_method" title="Bovem::Command#before (method)">#before</a></span>
100
+ <small>Bovem::Command</small>
101
+ </li>
102
+
103
+
104
+ <li class="r2 ">
51
105
  <span class='object_link'><a href="Bovem/ConsoleMethods/Logging.html#begin-instance_method" title="Bovem::ConsoleMethods::Logging#begin (method)">#begin</a></span>
52
106
  <small>Bovem::ConsoleMethods::Logging</small>
53
107
  </li>
54
108
 
55
109
 
56
- <li class="r2 ">
110
+ <li class="r1 ">
57
111
  <span class='object_link'><a href="Bovem/ShellMethods/Read.html#check-instance_method" title="Bovem::ShellMethods::Read#check (method)">#check</a></span>
58
112
  <small>Bovem::ShellMethods::Read</small>
59
113
  </li>
60
114
 
61
115
 
116
+ <li class="r2 ">
117
+ <span class='object_link'><a href="Bovem/CommandMethods/Children.html#clear_commands-instance_method" title="Bovem::CommandMethods::Children#clear_commands (method)">#clear_commands</a></span>
118
+ <small>Bovem::CommandMethods::Children</small>
119
+ </li>
120
+
121
+
122
+ <li class="r1 ">
123
+ <span class='object_link'><a href="Bovem/CommandMethods/Children.html#clear_options-instance_method" title="Bovem::CommandMethods::Children#clear_options (method)">#clear_options</a></span>
124
+ <small>Bovem::CommandMethods::Children</small>
125
+ </li>
126
+
127
+
128
+ <li class="r2 ">
129
+ <span class='object_link'><a href="Bovem/CommandMethods/Children.html#command-instance_method" title="Bovem::CommandMethods::Children#command (method)">#command</a></span>
130
+ <small>Bovem::CommandMethods::Children</small>
131
+ </li>
132
+
133
+
134
+ <li class="r1 ">
135
+ <span class='object_link'><a href="Bovem/Application.html#command_help-instance_method" title="Bovem::Application#command_help (method)">#command_help</a></span>
136
+ <small>Bovem::Application</small>
137
+ </li>
138
+
139
+
140
+ <li class="r2 ">
141
+ <span class='object_link'><a href="Bovem/CommandMethods/Children.html#commands-instance_method" title="Bovem::CommandMethods::Children#commands (method)">#commands</a></span>
142
+ <small>Bovem::CommandMethods::Children</small>
143
+ </li>
144
+
145
+
146
+ <li class="r1 ">
147
+ <span class='object_link'><a href="Bovem/Command.html#commands-instance_method" title="Bovem::Command#commands (method)">#commands</a></span>
148
+ <small>Bovem::Command</small>
149
+ </li>
150
+
151
+
152
+ <li class="r2 ">
153
+ <span class='object_link'><a href="Bovem/Option.html#complete_long-instance_method" title="Bovem::Option#complete_long (method)">#complete_long</a></span>
154
+ <small>Bovem::Option</small>
155
+ </li>
156
+
157
+
62
158
  <li class="r1 ">
159
+ <span class='object_link'><a href="Bovem/Option.html#complete_short-instance_method" title="Bovem::Option#complete_short (method)">#complete_short</a></span>
160
+ <small>Bovem::Option</small>
161
+ </li>
162
+
163
+
164
+ <li class="r2 ">
63
165
  <span class='object_link'><a href="Bovem/Shell.html#console-instance_method" title="Bovem::Shell#console (method)">#console</a></span>
64
166
  <small>Bovem::Shell</small>
65
167
  </li>
66
168
 
67
169
 
170
+ <li class="r1 ">
171
+ <span class='object_link'><a href="Bovem/Application.html#console-instance_method" title="Bovem::Application#console (method)">#console</a></span>
172
+ <small>Bovem::Application</small>
173
+ </li>
174
+
175
+
68
176
  <li class="r2 ">
69
177
  <span class='object_link'><a href="Bovem/ShellMethods/Write.html#copy-instance_method" title="Bovem::ShellMethods::Write#copy (method)">#copy</a></span>
70
178
  <small>Bovem::ShellMethods::Write</small>
@@ -78,23 +186,35 @@
78
186
 
79
187
 
80
188
  <li class="r2 ">
189
+ <span class='object_link'><a href="Bovem/Application.html#create-class_method" title="Bovem::Application.create (method)">create</a></span>
190
+ <small>Bovem::Application</small>
191
+ </li>
192
+
193
+
194
+ <li class="r1 ">
81
195
  <span class='object_link'><a href="Bovem/Logger.html#create-class_method" title="Bovem::Logger.create (method)">create</a></span>
82
196
  <small>Bovem::Logger</small>
83
197
  </li>
84
198
 
85
199
 
86
- <li class="r1 ">
200
+ <li class="r2 ">
87
201
  <span class='object_link'><a href="Bovem/ShellMethods/Directories.html#create_directories-instance_method" title="Bovem::ShellMethods::Directories#create_directories (method)">#create_directories</a></span>
88
202
  <small>Bovem::ShellMethods::Directories</small>
89
203
  </li>
90
204
 
91
205
 
92
- <li class="r2 ">
206
+ <li class="r1 ">
93
207
  <span class='object_link'><a href="Bovem/ConsoleMethods/Logging.html#debug-instance_method" title="Bovem::ConsoleMethods::Logging#debug (method)">#debug</a></span>
94
208
  <small>Bovem::ConsoleMethods::Logging</small>
95
209
  </li>
96
210
 
97
211
 
212
+ <li class="r2 ">
213
+ <span class='object_link'><a href="Bovem/Option.html#default-instance_method" title="Bovem::Option#default (method)">#default</a></span>
214
+ <small>Bovem::Option</small>
215
+ </li>
216
+
217
+
98
218
  <li class="r1 ">
99
219
  <span class='object_link'><a href="Bovem/Logger.html#default_file-class_method" title="Bovem::Logger.default_file (method)">default_file</a></span>
100
220
  <small>Bovem::Logger</small>
@@ -114,23 +234,35 @@
114
234
 
115
235
 
116
236
  <li class="r2 ">
237
+ <span class='object_link'><a href="Bovem/Command.html#description-instance_method" title="Bovem::Command#description (method)">#description</a></span>
238
+ <small>Bovem::Command</small>
239
+ </li>
240
+
241
+
242
+ <li class="r1 ">
117
243
  <span class='object_link'><a href="Bovem/Logger.html#device-instance_method" title="Bovem::Logger#device (method)">#device</a></span>
118
244
  <small>Bovem::Logger</small>
119
245
  </li>
120
246
 
121
247
 
122
- <li class="r1 ">
248
+ <li class="r2 ">
123
249
  <span class='object_link'><a href="Bovem/ConsoleMethods/Output.html#emphasize-instance_method" title="Bovem::ConsoleMethods::Output#emphasize (method)">#emphasize</a></span>
124
250
  <small>Bovem::ConsoleMethods::Output</small>
125
251
  </li>
126
252
 
127
253
 
128
- <li class="r2 ">
254
+ <li class="r1 ">
129
255
  <span class='object_link'><a href="Bovem/ConsoleMethods/Logging.html#error-instance_method" title="Bovem::ConsoleMethods::Logging#error (method)">#error</a></span>
130
256
  <small>Bovem::ConsoleMethods::Logging</small>
131
257
  </li>
132
258
 
133
259
 
260
+ <li class="r2 ">
261
+ <span class='object_link'><a href="Bovem/Application.html#executable_name-instance_method" title="Bovem::Application#executable_name (method)">#executable_name</a></span>
262
+ <small>Bovem::Application</small>
263
+ </li>
264
+
265
+
134
266
  <li class="r1 ">
135
267
  <span class='object_link'><a href="Bovem/ConsoleMethods/Interactions/ClassMethods.html#execute-instance_method" title="Bovem::ConsoleMethods::Interactions::ClassMethods#execute (method)">#execute</a></span>
136
268
  <small>Bovem::ConsoleMethods::Interactions::ClassMethods</small>
@@ -138,17 +270,41 @@
138
270
 
139
271
 
140
272
  <li class="r2 ">
273
+ <span class='object_link'><a href="Bovem/Application.html#execute-instance_method" title="Bovem::Application#execute (method)">#execute</a></span>
274
+ <small>Bovem::Application</small>
275
+ </li>
276
+
277
+
278
+ <li class="r1 ">
279
+ <span class='object_link'><a href="Bovem/Command.html#execute-instance_method" title="Bovem::Command#execute (method)">#execute</a></span>
280
+ <small>Bovem::Command</small>
281
+ </li>
282
+
283
+
284
+ <li class="r2 ">
285
+ <span class='object_link'><a href="Bovem/Option.html#execute_action-instance_method" title="Bovem::Option#execute_action (method)">#execute_action</a></span>
286
+ <small>Bovem::Option</small>
287
+ </li>
288
+
289
+
290
+ <li class="r1 ">
141
291
  <span class='object_link'><a href="Bovem/ConsoleMethods/Logging.html#fatal-instance_method" title="Bovem::ConsoleMethods::Logging#fatal (method)">#fatal</a></span>
142
292
  <small>Bovem::ConsoleMethods::Logging</small>
143
293
  </li>
144
294
 
145
295
 
146
- <li class="r1 ">
296
+ <li class="r2 ">
147
297
  <span class='object_link'><a href="Bovem/ShellMethods/Read.html#find-instance_method" title="Bovem::ShellMethods::Read#find (method)">#find</a></span>
148
298
  <small>Bovem::ShellMethods::Read</small>
149
299
  </li>
150
300
 
151
301
 
302
+ <li class="r1 ">
303
+ <span class='object_link'><a href="Bovem/ParserMethods/General/ClassMethods.html#find_command-instance_method" title="Bovem::ParserMethods::General::ClassMethods#find_command (method)">#find_command</a></span>
304
+ <small>Bovem::ParserMethods::General::ClassMethods</small>
305
+ </li>
306
+
307
+
152
308
  <li class="r2 ">
153
309
  <span class='object_link'><a href="Bovem/ConsoleMethods/Output.html#format-instance_method" title="Bovem::ConsoleMethods::Output#format (method)">#format</a></span>
154
310
  <small>Bovem::ConsoleMethods::Output</small>
@@ -162,11 +318,23 @@
162
318
 
163
319
 
164
320
  <li class="r2 ">
321
+ <span class='object_link'><a href="Bovem/Command.html#full_name-instance_method" title="Bovem::Command#full_name (method)">#full_name</a></span>
322
+ <small>Bovem::Command</small>
323
+ </li>
324
+
325
+
326
+ <li class="r1 ">
165
327
  <span class='object_link'><a href="Bovem/ConsoleMethods/Logging.html#get_banner-instance_method" title="Bovem::ConsoleMethods::Logging#get_banner (method)">#get_banner</a></span>
166
328
  <small>Bovem::ConsoleMethods::Logging</small>
167
329
  </li>
168
330
 
169
331
 
332
+ <li class="r2 ">
333
+ <span class='object_link'><a href="Bovem/CommandMethods/Children.html#get_options-instance_method" title="Bovem::CommandMethods::Children#get_options (method)">#get_options</a></span>
334
+ <small>Bovem::CommandMethods::Children</small>
335
+ </li>
336
+
337
+
170
338
  <li class="r1 ">
171
339
  <span class='object_link'><a href="Bovem/Logger.html#get_real_file-class_method" title="Bovem::Logger.get_real_file (method)">get_real_file</a></span>
172
340
  <small>Bovem::Logger</small>
@@ -179,6 +347,54 @@
179
347
  </li>
180
348
 
181
349
 
350
+ <li class="r1 ">
351
+ <span class='object_link'><a href="Bovem/Command.html#has_banner%3F-instance_method" title="Bovem::Command#has_banner? (method)">#has_banner?</a></span>
352
+ <small>Bovem::Command</small>
353
+ </li>
354
+
355
+
356
+ <li class="r2 ">
357
+ <span class='object_link'><a href="Bovem/CommandMethods/Children.html#has_commands%3F-instance_method" title="Bovem::CommandMethods::Children#has_commands? (method)">#has_commands?</a></span>
358
+ <small>Bovem::CommandMethods::Children</small>
359
+ </li>
360
+
361
+
362
+ <li class="r1 ">
363
+ <span class='object_link'><a href="Bovem/Option.html#has_default%3F-instance_method" title="Bovem::Option#has_default? (method)">#has_default?</a></span>
364
+ <small>Bovem::Option</small>
365
+ </li>
366
+
367
+
368
+ <li class="r2 ">
369
+ <span class='object_link'><a href="Bovem/Command.html#has_description%3F-instance_method" title="Bovem::Command#has_description? (method)">#has_description?</a></span>
370
+ <small>Bovem::Command</small>
371
+ </li>
372
+
373
+
374
+ <li class="r1 ">
375
+ <span class='object_link'><a href="Bovem/Option.html#has_help%3F-instance_method" title="Bovem::Option#has_help? (method)">#has_help?</a></span>
376
+ <small>Bovem::Option</small>
377
+ </li>
378
+
379
+
380
+ <li class="r2 ">
381
+ <span class='object_link'><a href="Bovem/CommandMethods/Children.html#has_options%3F-instance_method" title="Bovem::CommandMethods::Children#has_options? (method)">#has_options?</a></span>
382
+ <small>Bovem::CommandMethods::Children</small>
383
+ </li>
384
+
385
+
386
+ <li class="r1 ">
387
+ <span class='object_link'><a href="Bovem/Option.html#help-instance_method" title="Bovem::Option#help (method)">#help</a></span>
388
+ <small>Bovem::Option</small>
389
+ </li>
390
+
391
+
392
+ <li class="r2 ">
393
+ <span class='object_link'><a href="Bovem/Application.html#help_option-instance_method" title="Bovem::Application#help_option (method)">#help_option</a></span>
394
+ <small>Bovem::Application</small>
395
+ </li>
396
+
397
+
182
398
  <li class="r1 ">
183
399
  <span class='object_link'><a href="Bovem/ConsoleMethods/Output.html#indent-instance_method" title="Bovem::ConsoleMethods::Output#indent (method)">#indent</a></span>
184
400
  <small>Bovem::ConsoleMethods::Output</small>
@@ -204,14 +420,14 @@
204
420
 
205
421
 
206
422
  <li class="r1 ">
207
- <span class='object_link'><a href="Bovem/Console.html#initialize-instance_method" title="Bovem::Console#initialize (method)">#initialize</a></span>
208
- <small>Bovem::Console</small>
423
+ <span class='object_link'><a href="Bovem/Command.html#initialize-instance_method" title="Bovem::Command#initialize (method)">#initialize</a></span>
424
+ <small>Bovem::Command</small>
209
425
  </li>
210
426
 
211
427
 
212
428
  <li class="r2 ">
213
- <span class='object_link'><a href="Bovem/Logger.html#initialize-instance_method" title="Bovem::Logger#initialize (method)">#initialize</a></span>
214
- <small>Bovem::Logger</small>
429
+ <span class='object_link'><a href="Bovem/Localizer.html#initialize-instance_method" title="Bovem::Localizer#initialize (method)">#initialize</a></span>
430
+ <small>Bovem::Localizer</small>
215
431
  </li>
216
432
 
217
433
 
@@ -222,14 +438,38 @@
222
438
 
223
439
 
224
440
  <li class="r2 ">
441
+ <span class='object_link'><a href="Bovem/Application.html#initialize-instance_method" title="Bovem::Application#initialize (method)">#initialize</a></span>
442
+ <small>Bovem::Application</small>
443
+ </li>
444
+
445
+
446
+ <li class="r1 ">
225
447
  <span class='object_link'><a href="Bovem/Configuration.html#initialize-instance_method" title="Bovem::Configuration#initialize (method)">#initialize</a></span>
226
448
  <small>Bovem::Configuration</small>
227
449
  </li>
228
450
 
229
451
 
452
+ <li class="r2 ">
453
+ <span class='object_link'><a href="Bovem/Console.html#initialize-instance_method" title="Bovem::Console#initialize (method)">#initialize</a></span>
454
+ <small>Bovem::Console</small>
455
+ </li>
456
+
457
+
230
458
  <li class="r1 ">
231
- <span class='object_link'><a href="Bovem/Shell.html#instance-class_method" title="Bovem::Shell.instance (method)">instance</a></span>
232
- <small>Bovem::Shell</small>
459
+ <span class='object_link'><a href="Bovem/Logger.html#initialize-instance_method" title="Bovem::Logger#initialize (method)">#initialize</a></span>
460
+ <small>Bovem::Logger</small>
461
+ </li>
462
+
463
+
464
+ <li class="r2 ">
465
+ <span class='object_link'><a href="Bovem/Errors/Error.html#initialize-instance_method" title="Bovem::Errors::Error#initialize (method)">#initialize</a></span>
466
+ <small>Bovem::Errors::Error</small>
467
+ </li>
468
+
469
+
470
+ <li class="r1 ">
471
+ <span class='object_link'><a href="Bovem/Option.html#initialize-instance_method" title="Bovem::Option#initialize (method)">#initialize</a></span>
472
+ <small>Bovem::Option</small>
233
473
  </li>
234
474
 
235
475
 
@@ -240,41 +480,149 @@
240
480
 
241
481
 
242
482
  <li class="r1 ">
483
+ <span class='object_link'><a href="Bovem/Shell.html#instance-class_method" title="Bovem::Shell.instance (method)">instance</a></span>
484
+ <small>Bovem::Shell</small>
485
+ </li>
486
+
487
+
488
+ <li class="r2 ">
489
+ <span class='object_link'><a href="Bovem/Command.html#is_application%3F-instance_method" title="Bovem::Command#is_application? (method)">#is_application?</a></span>
490
+ <small>Bovem::Command</small>
491
+ </li>
492
+
493
+
494
+ <li class="r1 ">
495
+ <span class='object_link'><a href="Bovem/Option.html#label-instance_method" title="Bovem::Option#label (method)">#label</a></span>
496
+ <small>Bovem::Option</small>
497
+ </li>
498
+
499
+
500
+ <li class="r2 ">
243
501
  <span class='object_link'><a href="Bovem/Console.html#line_width-instance_method" title="Bovem::Console#line_width (method)">#line_width</a></span>
244
502
  <small>Bovem::Console</small>
245
503
  </li>
246
504
 
247
505
 
506
+ <li class="r1 ">
507
+ <span class='object_link'><a href="Bovem/Localizer.html#localize_on_locale-class_method" title="Bovem::Localizer.localize_on_locale (method)">localize_on_locale</a></span>
508
+ <small>Bovem::Localizer</small>
509
+ </li>
510
+
511
+
512
+ <li class="r2 ">
513
+ <span class='object_link'><a href="Bovem/Option.html#long-instance_method" title="Bovem::Option#long (method)">#long</a></span>
514
+ <small>Bovem::Option</small>
515
+ </li>
516
+
517
+
518
+ <li class="r1 ">
519
+ <span class='object_link'><a href="Bovem/Errors/Error.html#message-instance_method" title="Bovem::Errors::Error#message (method)">#message</a></span>
520
+ <small>Bovem::Errors::Error</small>
521
+ </li>
522
+
523
+
248
524
  <li class="r2 ">
525
+ <span class='object_link'><a href="Bovem/Option.html#meta-instance_method" title="Bovem::Option#meta (method)">#meta</a></span>
526
+ <small>Bovem::Option</small>
527
+ </li>
528
+
529
+
530
+ <li class="r1 ">
249
531
  <span class='object_link'><a href="Bovem/ConsoleMethods/Logging/ClassMethods.html#min_banner_length-instance_method" title="Bovem::ConsoleMethods::Logging::ClassMethods#min_banner_length (method)">#min_banner_length</a></span>
250
532
  <small>Bovem::ConsoleMethods::Logging::ClassMethods</small>
251
533
  </li>
252
534
 
253
535
 
254
- <li class="r1 ">
536
+ <li class="r2 ">
255
537
  <span class='object_link'><a href="Bovem/ShellMethods/Write.html#move-instance_method" title="Bovem::ShellMethods::Write#move (method)">#move</a></span>
256
538
  <small>Bovem::ShellMethods::Write</small>
257
539
  </li>
258
540
 
259
541
 
542
+ <li class="r1 ">
543
+ <span class='object_link'><a href="Bovem/Option.html#name-instance_method" title="Bovem::Option#name (method)">#name</a></span>
544
+ <small>Bovem::Option</small>
545
+ </li>
546
+
547
+
260
548
  <li class="r2 ">
549
+ <span class='object_link'><a href="Bovem/Command.html#name-instance_method" title="Bovem::Command#name (method)">#name</a></span>
550
+ <small>Bovem::Command</small>
551
+ </li>
552
+
553
+
554
+ <li class="r1 ">
555
+ <span class='object_link'><a href="Bovem/CommandMethods/Children.html#option-instance_method" title="Bovem::CommandMethods::Children#option (method)">#option</a></span>
556
+ <small>Bovem::CommandMethods::Children</small>
557
+ </li>
558
+
559
+
560
+ <li class="r2 ">
561
+ <span class='object_link'><a href="Bovem/Command.html#options-instance_method" title="Bovem::Command#options (method)">#options</a></span>
562
+ <small>Bovem::Command</small>
563
+ </li>
564
+
565
+
566
+ <li class="r1 ">
567
+ <span class='object_link'><a href="Bovem/CommandMethods/Children.html#options-instance_method" title="Bovem::CommandMethods::Children#options (method)">#options</a></span>
568
+ <small>Bovem::CommandMethods::Children</small>
569
+ </li>
570
+
571
+
572
+ <li class="r2 ">
573
+ <span class='object_link'><a href="Bovem/Application.html#output_commands-instance_method" title="Bovem::Application#output_commands (method)">#output_commands</a></span>
574
+ <small>Bovem::Application</small>
575
+ </li>
576
+
577
+
578
+ <li class="r1 ">
579
+ <span class='object_link'><a href="Bovem/Command.html#parent-instance_method" title="Bovem::Command#parent (method)">#parent</a></span>
580
+ <small>Bovem::Command</small>
581
+ </li>
582
+
583
+
584
+ <li class="r2 ">
585
+ <span class='object_link'><a href="Bovem/Option.html#parent-instance_method" title="Bovem::Option#parent (method)">#parent</a></span>
586
+ <small>Bovem::Option</small>
587
+ </li>
588
+
589
+
590
+ <li class="r1 ">
261
591
  <span class='object_link'><a href="Bovem/Configuration.html#parse-instance_method" title="Bovem::Configuration#parse (method)">#parse</a></span>
262
592
  <small>Bovem::Configuration</small>
263
593
  </li>
264
594
 
265
595
 
596
+ <li class="r2 ">
597
+ <span class='object_link'><a href="Bovem/Parser.html#parse-instance_method" title="Bovem::Parser#parse (method)">#parse</a></span>
598
+ <small>Bovem::Parser</small>
599
+ </li>
600
+
601
+
266
602
  <li class="r1 ">
603
+ <span class='object_link'><a href="Bovem/ParserMethods/General/ClassMethods.html#parse-instance_method" title="Bovem::ParserMethods::General::ClassMethods#parse (method)">#parse</a></span>
604
+ <small>Bovem::ParserMethods::General::ClassMethods</small>
605
+ </li>
606
+
607
+
608
+ <li class="r2 ">
267
609
  <span class='object_link'><a href="Bovem/ConsoleMethods/StyleHandling/ClassMethods.html#parse_style-instance_method" title="Bovem::ConsoleMethods::StyleHandling::ClassMethods#parse_style (method)">#parse_style</a></span>
268
610
  <small>Bovem::ConsoleMethods::StyleHandling::ClassMethods</small>
269
611
  </li>
270
612
 
271
613
 
272
- <li class="r2 ">
614
+ <li class="r1 ">
273
615
  <span class='object_link'><a href="Bovem/ConsoleMethods/StyleHandling/ClassMethods.html#parse_styles-instance_method" title="Bovem::ConsoleMethods::StyleHandling::ClassMethods#parse_styles (method)">#parse_styles</a></span>
274
616
  <small>Bovem::ConsoleMethods::StyleHandling::ClassMethods</small>
275
617
  </li>
276
618
 
277
619
 
620
+ <li class="r2 ">
621
+ <span class='object_link'><a href="Bovem/Option.html#provided%3F-instance_method" title="Bovem::Option#provided? (method)">#provided?</a></span>
622
+ <small>Bovem::Option</small>
623
+ </li>
624
+
625
+
278
626
  <li class="r1 ">
279
627
  <span class='object_link'><a href="Bovem/ConsoleMethods/Interactions.html#read-instance_method" title="Bovem::ConsoleMethods::Interactions#read (method)">#read</a></span>
280
628
  <small>Bovem::ConsoleMethods::Interactions</small>
@@ -282,29 +630,53 @@
282
630
 
283
631
 
284
632
  <li class="r2 ">
633
+ <span class='object_link'><a href="Bovem/Errors/Error.html#reason-instance_method" title="Bovem::Errors::Error#reason (method)">#reason</a></span>
634
+ <small>Bovem::Errors::Error</small>
635
+ </li>
636
+
637
+
638
+ <li class="r1 ">
285
639
  <span class='object_link'><a href="Bovem/ConsoleMethods/StyleHandling.html#replace_markers-instance_method" title="Bovem::ConsoleMethods::StyleHandling#replace_markers (method)">#replace_markers</a></span>
286
640
  <small>Bovem::ConsoleMethods::StyleHandling</small>
287
641
  </li>
288
642
 
289
643
 
290
- <li class="r1 ">
644
+ <li class="r2 ">
291
645
  <span class='object_link'><a href="Bovem/ConsoleMethods/StyleHandling/ClassMethods.html#replace_markers-instance_method" title="Bovem::ConsoleMethods::StyleHandling::ClassMethods#replace_markers (method)">#replace_markers</a></span>
292
646
  <small>Bovem::ConsoleMethods::StyleHandling::ClassMethods</small>
293
647
  </li>
294
648
 
295
649
 
296
- <li class="r2 ">
650
+ <li class="r1 ">
297
651
  <span class='object_link'><a href="Bovem/ConsoleMethods/StyleHandling/ClassMethods.html#replace_term_code-instance_method" title="Bovem::ConsoleMethods::StyleHandling::ClassMethods#replace_term_code (method)">#replace_term_code</a></span>
298
652
  <small>Bovem::ConsoleMethods::StyleHandling::ClassMethods</small>
299
653
  </li>
300
654
 
301
655
 
656
+ <li class="r2 ">
657
+ <span class='object_link'><a href="Bovem/Option.html#required-instance_method" title="Bovem::Option#required (method)">#required</a></span>
658
+ <small>Bovem::Option</small>
659
+ </li>
660
+
661
+
302
662
  <li class="r1 ">
663
+ <span class='object_link'><a href="Bovem/Option.html#requires_argument%3F-instance_method" title="Bovem::Option#requires_argument? (method)">#requires_argument?</a></span>
664
+ <small>Bovem::Option</small>
665
+ </li>
666
+
667
+
668
+ <li class="r2 ">
303
669
  <span class='object_link'><a href="Bovem/ConsoleMethods/Output.html#reset_indentation-instance_method" title="Bovem::ConsoleMethods::Output#reset_indentation (method)">#reset_indentation</a></span>
304
670
  <small>Bovem::ConsoleMethods::Output</small>
305
671
  </li>
306
672
 
307
673
 
674
+ <li class="r1 ">
675
+ <span class='object_link'><a href="Bovem/Application.html#run-instance_method" title="Bovem::Application#run (method)">#run</a></span>
676
+ <small>Bovem::Application</small>
677
+ </li>
678
+
679
+
308
680
  <li class="r2 ">
309
681
  <span class='object_link'><a href="Bovem/ShellMethods/Execute.html#run-instance_method" title="Bovem::ShellMethods::Execute#run (method)">#run</a></span>
310
682
  <small>Bovem::ShellMethods::Execute</small>
@@ -312,78 +684,156 @@
312
684
 
313
685
 
314
686
  <li class="r1 ">
687
+ <span class='object_link'><a href="Bovem/Option.html#set-instance_method" title="Bovem::Option#set (method)">#set</a></span>
688
+ <small>Bovem::Option</small>
689
+ </li>
690
+
691
+
692
+ <li class="r2 ">
315
693
  <span class='object_link'><a href="Bovem/ConsoleMethods/Output.html#set_indentation-instance_method" title="Bovem::ConsoleMethods::Output#set_indentation (method)">#set_indentation</a></span>
316
694
  <small>Bovem::ConsoleMethods::Output</small>
317
695
  </li>
318
696
 
319
697
 
320
- <li class="r2 ">
698
+ <li class="r1 ">
321
699
  <span class='object_link'><a href="Bovem/ShellMethods/General.html#setup_error_handling-instance_method" title="Bovem::ShellMethods::General#setup_error_handling (method)">#setup_error_handling</a></span>
322
700
  <small>Bovem::ShellMethods::General</small>
323
701
  </li>
324
702
 
325
703
 
704
+ <li class="r2 ">
705
+ <span class='object_link'><a href="Bovem/Command.html#setup_with-instance_method" title="Bovem::Command#setup_with (method)">#setup_with</a></span>
706
+ <small>Bovem::Command</small>
707
+ </li>
708
+
709
+
710
+ <li class="r1 ">
711
+ <span class='object_link'><a href="Bovem/Application.html#shell-instance_method" title="Bovem::Application#shell (method)">#shell</a></span>
712
+ <small>Bovem::Application</small>
713
+ </li>
714
+
715
+
716
+ <li class="r2 ">
717
+ <span class='object_link'><a href="Bovem/Option.html#short-instance_method" title="Bovem::Option#short (method)">#short</a></span>
718
+ <small>Bovem::Option</small>
719
+ </li>
720
+
721
+
326
722
  <li class="r1 ">
723
+ <span class='object_link'><a href="Bovem/Application.html#show_commands-instance_method" title="Bovem::Application#show_commands (method)">#show_commands</a></span>
724
+ <small>Bovem::Application</small>
725
+ </li>
726
+
727
+
728
+ <li class="r2 ">
327
729
  <span class='object_link'><a href="Bovem/ShellMethods/General.html#show_general_failure-instance_method" title="Bovem::ShellMethods::General#show_general_failure (method)">#show_general_failure</a></span>
328
730
  <small>Bovem::ShellMethods::General</small>
329
731
  </li>
330
732
 
331
733
 
734
+ <li class="r1 ">
735
+ <span class='object_link'><a href="Bovem/CommandMethods/Help.html#show_help-instance_method" title="Bovem::CommandMethods::Help#show_help (method)">#show_help</a></span>
736
+ <small>Bovem::CommandMethods::Help</small>
737
+ </li>
738
+
739
+
332
740
  <li class="r2 ">
333
- <span class='object_link'><a href="Bovem/Logger.html#start_time-class_method" title="Bovem::Logger.start_time (method)">start_time</a></span>
334
- <small>Bovem::Logger</small>
741
+ <span class='object_link'><a href="Bovem/Application.html#skip_commands-instance_method" title="Bovem::Application#skip_commands (method)">#skip_commands</a></span>
742
+ <small>Bovem::Application</small>
335
743
  </li>
336
744
 
337
745
 
338
746
  <li class="r1 ">
339
- <span class='object_link'><a href="Bovem/Logger.html#start_time-instance_method" title="Bovem::Logger#start_time (method)">#start_time</a></span>
340
- <small>Bovem::Logger</small>
747
+ <span class='object_link'><a href="Bovem/ParserMethods/General/ClassMethods.html#smart_join-instance_method" title="Bovem::ParserMethods::General::ClassMethods#smart_join (method)">#smart_join</a></span>
748
+ <small>Bovem::ParserMethods::General::ClassMethods</small>
341
749
  </li>
342
750
 
343
751
 
344
752
  <li class="r2 ">
753
+ <span class='object_link'><a href="Bovem/Logger.html#start_time-class_method" title="Bovem::Logger.start_time (method)">start_time</a></span>
754
+ <small>Bovem::Logger</small>
755
+ </li>
756
+
757
+
758
+ <li class="r1 ">
345
759
  <span class='object_link'><a href="Bovem/ConsoleMethods/Logging.html#status-instance_method" title="Bovem::ConsoleMethods::Logging#status (method)">#status</a></span>
346
760
  <small>Bovem::ConsoleMethods::Logging</small>
347
761
  </li>
348
762
 
349
763
 
764
+ <li class="r2 ">
765
+ <span class='object_link'><a href="Bovem/Command.html#synopsis-instance_method" title="Bovem::Command#synopsis (method)">#synopsis</a></span>
766
+ <small>Bovem::Command</small>
767
+ </li>
768
+
769
+
350
770
  <li class="r1 ">
771
+ <span class='object_link'><a href="Bovem/Errors/Error.html#target-instance_method" title="Bovem::Errors::Error#target (method)">#target</a></span>
772
+ <small>Bovem::Errors::Error</small>
773
+ </li>
774
+
775
+
776
+ <li class="r2 ">
351
777
  <span class='object_link'><a href="Bovem/ConsoleMethods/Interactions.html#task-instance_method" title="Bovem::ConsoleMethods::Interactions#task (method)">#task</a></span>
352
778
  <small>Bovem::ConsoleMethods::Interactions</small>
353
779
  </li>
354
780
 
355
781
 
782
+ <li class="r1 ">
783
+ <span class='object_link'><a href="Bovem/Option.html#type-instance_method" title="Bovem::Option#type (method)">#type</a></span>
784
+ <small>Bovem::Option</small>
785
+ </li>
786
+
787
+
356
788
  <li class="r2 ">
789
+ <span class='object_link'><a href="Bovem/Option.html#validator-instance_method" title="Bovem::Option#validator (method)">#validator</a></span>
790
+ <small>Bovem::Option</small>
791
+ </li>
792
+
793
+
794
+ <li class="r1 ">
795
+ <span class='object_link'><a href="Bovem/Option.html#value-instance_method" title="Bovem::Option#value (method)">#value</a></span>
796
+ <small>Bovem::Option</small>
797
+ </li>
798
+
799
+
800
+ <li class="r2 ">
801
+ <span class='object_link'><a href="Bovem/Application.html#version-instance_method" title="Bovem::Application#version (method)">#version</a></span>
802
+ <small>Bovem::Application</small>
803
+ </li>
804
+
805
+
806
+ <li class="r1 ">
357
807
  <span class='object_link'><a href="Bovem/ConsoleMethods/Logging.html#warn-instance_method" title="Bovem::ConsoleMethods::Logging#warn (method)">#warn</a></span>
358
808
  <small>Bovem::ConsoleMethods::Logging</small>
359
809
  </li>
360
810
 
361
811
 
362
- <li class="r1 ">
812
+ <li class="r2 ">
363
813
  <span class='object_link'><a href="Bovem/ConsoleMethods/Output.html#with_indentation-instance_method" title="Bovem::ConsoleMethods::Output#with_indentation (method)">#with_indentation</a></span>
364
814
  <small>Bovem::ConsoleMethods::Output</small>
365
815
  </li>
366
816
 
367
817
 
368
- <li class="r2 ">
818
+ <li class="r1 ">
369
819
  <span class='object_link'><a href="Bovem/ShellMethods/Directories.html#within_directory-instance_method" title="Bovem::ShellMethods::Directories#within_directory (method)">#within_directory</a></span>
370
820
  <small>Bovem::ShellMethods::Directories</small>
371
821
  </li>
372
822
 
373
823
 
374
- <li class="r1 ">
824
+ <li class="r2 ">
375
825
  <span class='object_link'><a href="Bovem/ConsoleMethods/Output.html#wrap-instance_method" title="Bovem::ConsoleMethods::Output#wrap (method)">#wrap</a></span>
376
826
  <small>Bovem::ConsoleMethods::Output</small>
377
827
  </li>
378
828
 
379
829
 
380
- <li class="r2 ">
830
+ <li class="r1 ">
381
831
  <span class='object_link'><a href="Bovem/ConsoleMethods/Logging.html#write-instance_method" title="Bovem::ConsoleMethods::Logging#write (method)">#write</a></span>
382
832
  <small>Bovem::ConsoleMethods::Logging</small>
383
833
  </li>
384
834
 
385
835
 
386
- <li class="r1 ">
836
+ <li class="r2 ">
387
837
  <span class='object_link'><a href="Bovem/ConsoleMethods/Logging.html#write_banner_aligned-instance_method" title="Bovem::ConsoleMethods::Logging#write_banner_aligned (method)">#write_banner_aligned</a></span>
388
838
  <small>Bovem::ConsoleMethods::Logging</small>
389
839
  </li>