[Toybox] top --help
enh
enh at google.com
Tue Feb 7 15:55:24 PST 2017
On Sun, Feb 5, 2017 at 12:12 PM, Rob Landley <rob at landley.net> wrote:
> On 02/02/2017 04:59 PM, enh wrote:
>> "top --help" doesn't include the TOP_COMMON help. and i'm starting to
>> get bug reports from folks confused by this. especially because it
>> makes it look like some options disappeared, and enough is genuinely
>> different in toybox top that they're relying on the help. (for most
>> people, this is the first time they've used the toybox top and ps,
>> even though i switched AOSP master in the second half of last year.)
>
> I hope "you can cursor left and right to change which fields it's
> sorting by" and "it uses the same -o and -O syntax/names for everything
> as ps" are reasonably obvious.
those two, yes. but that there are all these extra secret bonus items, no:
usage: * [-bq] [-n NUMBER] [-d SECONDS] [-p PID,] [-u USER,]
-b Batch mode (no tty)
-d Delay SECONDS between each cycle (default 3)
-n Exit after NUMBER iterations
-p Show these PIDs
-u Show these USERs
-q Quiet (no header lines)
this came up again today with pgrep... "why no pgrep -f?" answer:
"it's there, but it's on the secret menu". and this secret menu is
even longer:
usage: * [-fnovx] [-G GID,] [-g PGRP,] [-P PPID,] [-s SID,] [-t
TERM,] [-U UID,] [-u EUID,]
-f Check full command line for PATTERN
-G Match real Group ID(s)
-g Match Process Group(s) (0 is current user)
-n Newest match only
-o Oldest match only
-P Match Parent Process ID(s)
-s Match Session ID(s) (0 for current)
-t Match Terminal(s)
-U Match real User ID(s)
-u Match effective User ID(s)
-v Negate the match
-x Match whole command (not substring)
> But yeah, I need to fix this...
>
>> aiui from times this came up in the past, this missing infrastructure
>> feature isn't easy to fix.
>
> It's not exactly _difficult_, just just fiddly.
>
> The help test parsing is a pile of heuristics like "paragraphs are
> separated by blank lines, after you strip off the leading usage: line
> (which has a recognizable prefix and format) there's one paragraph of
> leading description, then if the second paragraph beginnings with - it's
> usage lines that need to be collated/alphabetized, and then the
> remaining text is collated in the order it appear in the config file".
>
> Except said heuristics got tweaked a dozen times while I was
> implementing, and now I not only need to drill down to the appropriate
> point in the logic sticking in all the right printfs to see what it's
> doing, but I should really _document_ these heuristics and make sure
> they make sense.
>
> Which means I need a large chunk of uninterrupted time (~4 hours) to
> build a mental model, and those have been in really short supply
> recently. (Just got off another call where $DAYJOB made sad eyes at me
> about not focusing exclusively on GPS and ignoring everything else forever).
>
>> so should we just copy & paste the common
>> lines in for now? or is there a trick like what's happening with LS
>> and LS_COLOR where we can just rewrite the USE_ lines to get the right
>> output?
>
> I was experimenting with having lines that just say %CONFIG_SYMBOL% and
> having that be what substitutes in the other help text (I.E. manually
> controlling the order), but it's one of the many half-finished things
> that got backed out and abandoned because I've been swap-thrashing over
> too many things this year.
isn't the LS_COLOR-style hack easy in the meantime? or is there
something i'm missing that means it only works for ls --color?
> Rob
> _______________________________________________
> Toybox mailing list
> Toybox at lists.landley.net
> http://lists.landley.net/listinfo.cgi/toybox-landley.net
--
Elliott Hughes - http://who/enh - http://jessies.org/~enh/
Android native code/tools questions? Mail me/drop by/add me as a reviewer.
More information about the Toybox
mailing list