summaryrefslogtreecommitdiff
path: root/src/ao_cmd.c
diff options
context:
space:
mode:
authorAnthony Towns <aj@erisian.com.au>2011-02-27 11:11:12 +1000
committerKeith Packard <keithp@keithp.com>2011-03-07 00:01:46 -0800
commit8cdf4fb051c22b35c251d90bc288551f7c2898bf (patch)
treea3b39a462dad7f9042ff6b34bdc9ff5e0fea0dec /src/ao_cmd.c
parent2cfe205de4242398e69c9e7c613af0d2a7094686 (diff)
src/ao_cmd: Shave off bytes from doc strings
Switch to using { func, "X args\0Desc" } to specify command, saving a char field by looking at help[0] instead, and reduce help length by doing alignment with printf instead of hardcoded spaces.
Diffstat (limited to 'src/ao_cmd.c')
-rw-r--r--src/ao_cmd.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/ao_cmd.c b/src/ao_cmd.c
index a54a2316..6007773c 100644
--- a/src/ao_cmd.c
+++ b/src/ao_cmd.c
@@ -237,8 +237,10 @@ help(void)
puts(help_txt);
for (cmds = 0; cmds < ao_ncmds; cmds++) {
cs = ao_cmds[cmds];
- for (cmd = 0; cs[cmd].cmd != '\0'; cmd++)
- puts(cs[cmd].help);
+ for (cmd = 0; cs[cmd].func; cmd++)
+ printf("%-45s %s\n",
+ cs[cmd].help,
+ cs[cmd].help+1+strlen(cs[cmd].help));
}
}
@@ -282,8 +284,8 @@ ao_cmd(void)
func = (void (*)(void)) NULL;
for (cmds = 0; cmds < ao_ncmds; cmds++) {
cs = ao_cmds[cmds];
- for (cmd = 0; cs[cmd].cmd != '\0'; cmd++)
- if (cs[cmd].cmd == c) {
+ for (cmd = 0; cs[cmd].func; cmd++)
+ if (cs[cmd].help[0] == c) {
func = cs[cmd].func;
break;
}
@@ -301,12 +303,12 @@ ao_cmd(void)
__xdata struct ao_task ao_cmd_task;
__code struct ao_cmds ao_base_cmds[] = {
- { '?', help, "? Print this message" },
- { 'T', ao_task_info, "T Show task states" },
- { 'E', echo, "E <0 off, 1 on> Set command echo mode" },
- { 'r', ao_reboot, "r eboot Reboot" },
- { 'v', version, "v Show version" },
- { 0, help, NULL },
+ { help, "?\0Print this message" },
+ { ao_task_info, "T\0Show task states" },
+ { echo, "E <0 off, 1 on>\0Set command echo mode" },
+ { ao_reboot, "r eboot\0Reboot" },
+ { version, "v\0Show version" },
+ { 0, NULL },
};
void