Mercurial > hg > toybox
view toys/help.c @ 569:2e0367cb9585
More work on ls. Now ls -lR sort of works-ish.
author | Rob Landley <rob@landley.net> |
---|---|
date | Sun, 22 Apr 2012 23:01:23 -0500 |
parents | cb3c3c85b966 |
children |
line wrap: on
line source
/* vi: set sw=4 ts=4: * * help.c - Show help for toybox * * Copyright 2007 Rob Landley <rob@landley.net> * * Not in SUSv3, but exists as a bash builtin. USE_HELP(NEWTOY(help, "<1", TOYFLAG_BIN)) config HELP bool "help" default y help usage: help [command] Show usage information for toybox commands. Run "toybox" with no arguments for a list of available commands. */ #include "toys.h" #include "generated/help.h" #undef NEWTOY #undef OLDTOY #define NEWTOY(name,opt,flags) help_##name "\0" #define OLDTOY(name,oldname,opts,flags) "\xff" #oldname "\0" static char *help_data = #include "generated/newtoys.h" ; void help_main(void) { struct toy_list *t = toy_find(*toys.optargs); int i = t-toy_list; char *s = help_data; if (!t) error_exit("Unknown command '%s'", *toys.optargs); for (;;) { while (i--) s += strlen(s) + 1; if (*s != 255) break; i = toy_find(++s)-toy_list; s = help_data; } fprintf(toys.exithelp ? stderr : stdout, "%s", s); }