summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2012-08-04 22:17:37 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2012-08-04 22:17:37 +0000
commit3609cc6eb6f7f30654cb95b0ce02487c742c9487 (patch)
treee08ea462e0bf7d5917e44000a4e5102ef898fc39
parentd57cdbc921d1a50eb6d37471df59dbb3a8a0bb2b (diff)
downloadnuttx-3609cc6eb6f7f30654cb95b0ce02487c742c9487.tar.gz
nuttx-3609cc6eb6f7f30654cb95b0ce02487c742c9487.tar.bz2
nuttx-3609cc6eb6f7f30654cb95b0ce02487c742c9487.zip
Update NSH documentation; Add option to reduce size of help commnd without completely eliminating it
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5009 42af7a65-404d-4744-a932-0658087f49c3
-rw-r--r--apps/nshlib/README.txt13
-rw-r--r--apps/nshlib/nsh_parse.c23
-rw-r--r--nuttx/Documentation/NuttShell.html25
3 files changed, 52 insertions, 9 deletions
diff --git a/apps/nshlib/README.txt b/apps/nshlib/README.txt
index 7dbae8e63..a6cb2d7d7 100644
--- a/apps/nshlib/README.txt
+++ b/apps/nshlib/README.txt
@@ -371,9 +371,15 @@ o get [-b|-n] [-f <local-path>] -h <ip-address> <remote-path>
Selects either binary ("octect") or test ("netascii") transfer
mode. Default: text.
-o help
+o help [-v] [<cmd>]
- Presents summary information about each command to console.
+ Presents summary information about NSH commands to console. Options:
+
+ -v
+ Show verbose output will full command usage
+
+ <cmd>
+ Show full command usage only for this command
o ifconfig
@@ -889,6 +895,9 @@ also allow it to squeeze into very small memory footprints.
CONFIG_NSH_DISABLE_UNSET, CONFIG_NSH_DISABLE_USLEEP, CONFIG_NSH_DISABLE_WGET,
CONFIG_NSH_DISABLE_XD
+Verbose help output can be suppressed by defining CONFIG_NSH_HELP_TERSE. In that
+case, the help command is still available but will be slightly smaller.
+
NSH-Specific Configuration Settings
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diff --git a/apps/nshlib/nsh_parse.c b/apps/nshlib/nsh_parse.c
index b79461bba..049444397 100644
--- a/apps/nshlib/nsh_parse.c
+++ b/apps/nshlib/nsh_parse.c
@@ -211,7 +211,11 @@ static const struct cmdmap_s g_cmdmap[] =
#endif
#ifndef CONFIG_NSH_DISABLE_HELP
- { "help", cmd_help, 1, 3, "[-v] [cmd]" },
+# ifdef CONFIG_NSH_HELP_TERSE
+ { "help", cmd_help, 1, 2, "[<cmd>]" },
+#else
+ { "help", cmd_help, 1, 3, "[-v] [<cmd>]" },
+# endif
#endif
#ifdef CONFIG_NET
@@ -453,7 +457,7 @@ static inline void help_cmdlist(FAR struct nsh_vtbl_s *vtbl)
* Name: help_usage
****************************************************************************/
-#ifndef CONFIG_NSH_DISABLE_HELP
+#if !defined(CONFIG_NSH_DISABLE_HELP) && !defined(CONFIG_NSH_HELP_TERSE)
static inline void help_usage(FAR struct nsh_vtbl_s *vtbl)
{
nsh_output(vtbl, "NSH command forms:\n");
@@ -526,7 +530,7 @@ static int help_cmd(FAR struct nsh_vtbl_s *vtbl, FAR const char *cmd)
* Name: help_allcmds
****************************************************************************/
-#ifndef CONFIG_NSH_DISABLE_HELP
+#if !defined(CONFIG_NSH_DISABLE_HELP) && !defined(CONFIG_NSH_HELP_TERSE)
static inline void help_allcmds(FAR struct nsh_vtbl_s *vtbl)
{
FAR const struct cmdmap_s *cmdmap;
@@ -569,12 +573,15 @@ static inline void help_builtins(FAR struct nsh_vtbl_s *vtbl)
#ifndef CONFIG_NSH_DISABLE_HELP
static int cmd_help(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv)
{
- bool verbose = false;
FAR const char *cmd = NULL;
+#ifdef CONFIG_NSH_HELP_TERSE
+ bool verbose = false;
int i;
+#endif
/* The command may be followed by a verbose option */
+#ifdef CONFIG_NSH_HELP_TERSE
i = 1;
if (argc > i)
{
@@ -598,6 +605,12 @@ static int cmd_help(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv)
{
help_usage(vtbl);
}
+#else
+ if (argc > 1)
+ {
+ cmd = argv[1];
+ }
+#endif
/* Are we showing help on a single command? */
@@ -612,6 +625,7 @@ static int cmd_help(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv)
{
/* In verbose mode, show detailed help for all commands */
+#ifdef CONFIG_NSH_HELP_TERSE
if (verbose)
{
nsh_output(vtbl, "Where <cmd> is one of:\n");
@@ -621,6 +635,7 @@ static int cmd_help(FAR struct nsh_vtbl_s *vtbl, int argc, char **argv)
/* Otherwise, just show the list of command names */
else
+#endif
{
nsh_output(vtbl, "help usage:");
help_cmd(vtbl, "help");
diff --git a/nuttx/Documentation/NuttShell.html b/nuttx/Documentation/NuttShell.html
index 249bf2636..8e57e27b2 100644
--- a/nuttx/Documentation/NuttShell.html
+++ b/nuttx/Documentation/NuttShell.html
@@ -1046,12 +1046,27 @@ get [-b|-n] [-f &lt;local-path&gt;] -h &lt;ip-address&gt; &lt;remote-path&gt;
<p><b>Command Syntax:</b></p>
<ul><pre>
-help
+help [-v] [&lt;cmd&gt;]
</pre></ul>
<p>
<b>Synopsis</b>.
- Presents summary information about each command to console.
+ Presents summary information about NSH commands to console.
</p>
+<p><b>Options:</b></p>
+<ul><table>
+ <tr>
+ <td><b><code>-v</code></b></td>
+ <td>
+ how verbose output will full command usage.
+ </td>
+ </tr>
+ <tr>
+ <td><b><code>&lt;cmd&gt;</code></b></td>
+ <td>
+ Show full command usage only for this command.
+ </td>
+ </tr>
+</table></ul>
<table width ="100%">
<tr bgcolor="#e4e4e4">
@@ -2031,7 +2046,7 @@ nsh>
<td><code>CONFIG_NSH_DISABLE_GET</code></td>
</tr>
<tr>
- <td><b><code>help</code></b></td>
+ <td><b><code>help</code></b><sup>5</sup></td>
<td><br></td>
<td><code>CONFIG_NSH_DISABLE_HELP</code></td>
</tr>
@@ -2192,6 +2207,10 @@ nsh>
<sup>4</sup><small>
<code>CONFIG_FS_WRITABLE</code> is not a user configuration but is set automatically
if any writable filesystem is selected. At present, this is only <code>CONFIG_FS_FAT</code>.</small><br>
+ <sup>5</sup><small>
+ Verbose help output can be suppressed by defining <code>CONFIG_NSH_HELP_TERSE</code>.
+ In that case, the help command is still available but will be slightly smaller.
+ </small>
</p>
<table width ="100%">