Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 09 May 2012 08:17:51 +0200
From: magnum <john.magnum@...hmail.com>
To: john-dev@...ts.openwall.com
Subject: Re: Fwd: bash auto-completion for john

On 05/09/2012 02:42 AM, Frank Dittrich wrote:
> On 05/09/2012 01:15 AM, magnum wrote:
>> BTW I had an idea of just filling in a static usage hint for some
>> options when tabbed. Like for markov mode, if you tab again it could
>> just give a static "--markov[=LEVEL[:opts]]" instead of the current
>> "--markov" below the actual command line. If this is possible?
> 
> That won't work, because it is just one possible option.
> Since the completion logic would take over the common part of all
> matching options into the command line, you'd end up with
> --markov[=LEVEL[:opts]] on the command line.
> 
> But this works:
> $ ./john --markov
> --markov               --markov=LEVEL[:opts]

This is actually better, as --markov by itself is also valid. Though if
you write --markov= and then TAB, I presume it will write all that to
your line. Still, I think this would be a good addition. A similar
approach could be used for -users, -groups, -shells and -salts.

> Unfortunately, I can't (or don't know yet how to) add "(see doc/MARKOV
> for details)" to the tab completion options, because this would be
> interpreted as separate completion options which get dropped because the
> (to be completed) word "--markov" existing on the command line doesn't
> match the other "options".

Perhaps you could do this:
$ ./john --markov
--markov               --markov[=LEVEL[:START[:END[:LENGTH]]]]

This is even better than the usage blob, where this is too long to fit.

magnum

Powered by blists - more mailing lists

Your e-mail address:

Powered by Openwall GNU/*/Linux - Powered by OpenVZ