The example I used in the mail is not what I did (duh!). And now I
cannot reproduce the "problem" which was pminfo returned Unknown metric
name for a metric name formed by auto completion.
Don't know what happened ... assume idiot user error and please ignore.
Ta.
On Mon, 2009-05-11 at 16:43 +1000, Nathan Scott wrote:
> ----- "Ken McDonell" <kenj@xxxxxxxxxxxxxxxx> wrote:
>
> > Interesting.
> >
> > Need to dig a bit deeper, but for me it does not work correctly.
>
> Depends how you define "correctly" I suspect. You may be expecting
> it to stop at first "."? Not sure thats what it is designed todo...
>
> > The auto completion list for hinv. is reported as
> > hinv.cpu.bogomips hinv.cpu.stepping hinv.map.scsi
> > hinv.pagesize
> > hinv.cpu.cache hinv.cpu.vendor hinv.ncpu hinv.physmem
> > hinv.cpu.clock hinv.machine hinv.ndisk
> > hinv.cpu.model hinv.map.cpu_num hinv.nfilesys
> >
> > but pminfo hinv.cpu reports
> > hinv.cpu.clock
> > hinv.cpu.vendor
> > hinv.cpu.model
> > hinv.cpu.stepping
> > hinv.cpu.cache
> > hinv.cpu.bogomips
>
> All of those are listed above though. As well as everything else
> below hinv, afaict, so it looks correct to me (just, not stopping
> at the next level down, but expands all below a point if there's
> not "too much" matching).
>
> > So I'm not sure where the metrics namespace info is coming from!
>
> Its running pminfo internally ...
> COMPREPLY=(`compgen -W '$(command pminfo)' $cur`)
>
> ... maybe Roman can explain how that bit works. compgen is
> a bash builtin:
>
> compgen [option] [word]
> Generate possible completion matches for word according to the
> options, which may be any option accepted by the complete
> builtin with the exception of -p and -r, and write the matches
> to the standard output. When using the -F or -C options, the
> various shell variables set by the programmable completion
> facilities, while available, will not have useful values.
>
> The matches will be generated in the same way as if the pro‐
> grammable completion code had generated them directly from a
> completion specification with the same flags. If word is speci‐
> fied, only those completions matching word will be displayed.
>
> The return value is true unless an invalid option is supplied,
> or no matches were generated.
>
> Not sure what -W does.
>
> > And with -h and/or -a, hard to see how this is going to work without
> > surprises.
>
> Those are explicitly excluded via the regexs (i.e. if those were the
> last part of the command line before attempting expansion, then no
> expansion is attempted, I think).
>
> cheers.
>
|