diff options
author | Anthony Towns <aj@erisian.com.au> | 2011-02-27 11:11:12 +1000 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2011-03-07 00:01:46 -0800 |
commit | 8cdf4fb051c22b35c251d90bc288551f7c2898bf (patch) | |
tree | a3b39a462dad7f9042ff6b34bdc9ff5e0fea0dec /src/ao_cmd.c | |
parent | 2cfe205de4242398e69c9e7c613af0d2a7094686 (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.c | 22 |
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 |