On Fri, Oct 07, 2011 at 04:48:35PM +0200, Matthieu Moy wrote: > > On Mon, Oct 03, 2011 at 02:57:09PM +0200, Matthieu Moy wrote: > > > >> I like the try_subcommand_pager idea. Ideally, there would also be a > >> nice mechanism to set defaults for subcommands, so that "git tag > >> <whatever>" does the right thing without configuration. > > > > That's easy enough. Something like the patch below? > > It may have been better with a big centralized array of configurations > like > > static struct cmd_struct commands[] = { > { "add", cmd_add, RUN_SETUP | NEED_WORK_TREE }, > ... > > in git.c, but if we have only a few instances of this, your system is > probably fine. I like it. I don't think you can centralize it in the same way, because some of it will have to be implemented in shell script (unlike the full-command ones, which we can always trigger at the git.c wrapper layer). So you could have: static struct pager_default subcommands[] = { { "tag.list", 1 }, { "branch.list", 1 }, }; but you'll never be able to put "stash.list" into that structure (and as you probably guessed, my patch isn't enough to implement stash.list, either; it would need a shell implementation of try_subcommand_pager). -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html