gnu-arch-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnu-arch-users] tla-bash-complete usability


From: Robert Anderson
Subject: [Gnu-arch-users] tla-bash-complete usability
Date: 01 Sep 2003 10:51:24 -0700

On Mon, 2003-09-01 at 10:33, Jonas Diemer wrote:
> On 01 Sep 2003 10:13:53 -0700
> Robert Anderson <address@hidden> wrote:
> 
> > > revision completion though? Maybe have the script just complete to
> > > 
> > > cat--branch--version--
> > > 
> > > whenever a revision is a valid argument. this should save a lot of
> > > typing work but still won't give possible hundreds of revisions for
> > > choice.
> > 
> > I think it's ok to list all the revisions.  It's the same thing for
> > file completion in a large directory.  archive cycling for this and
> > other reasons ought to keep revision counts from reaching the 1000's,
> > I suspect.
> 
> Well, I still don't like that though... Not only will it mess up the
> completion output,

How so?

 but revision completion is also the most ressource
> intense task: The script would have to recursively get all existing
> versions, then get all revision for each version and finally concenate
> them together.

I don't understand why.  It should interactively complete each piece of
the version, so that when it comes time to list revisions, you only have
the revisions associated with that version.  Ex:

tla replay --exact cat[TAB]
cat--branch1
cat--branch2
tla replay --exact cat--branch1[TAB]
cat--branch1--1.0
cat--branch1--2.0
tla replay --exact cat--branch1--2.0[TAB]
cat--branch1--2.0--patch-3
...
cat--branch1--2.0--patch-9

> The gain in typing speed is very little compared to the costs.

I don't believe it will be for the behavior above.

>One could point out that listing all revisions might make it easier for the 
>user
> to remember/know which version he wants...

Exactly.  That's one of the main uses of context-sensitive completion,
IMO. It's effectively a menu.

> Another reason is that some commands (e.g. tla get) are also satisfied
> with a version. So we should just do version completion if a revision is
> a valid argument, maybe completing to base-0 or patch- if a version is
> followed by two dashes.

I think if the user gets to the full version and presses [TAB], then
they want revisions (and if revisions are a valid input in that
context).  Otherwise they can just hit [enter] at that point.

Bob






reply via email to

[Prev in Thread] Current Thread [Next in Thread]