Johannes Schindelin <Johannes.Schindelin@xxxxxx> writes: > On Tue, 17 Jun 2008, Junio C Hamano wrote: > >> Jeff King <peff@xxxxxxxx> writes: >> >> > I think the only right way to accomplish this is to convert the revision >> > and diff parameters into a parseopt-understandable format. >> >> Not necessarily. You could structure individual option parsers like how >> diff option parsers are done. You iterate over argv[], feed diff option >> parser the current index into argv[] and ask if it is an option diff >> understands, have diff eat the option (and possibly its parameter) to >> advance the index, or allow diff option to say "I do not understand >> this", and then handle it yourself or hand it to other parsers. > > AFAIR Pierre tried a few ways, and settled with a macro to introduce the > diff options into a caller's options. > > IOW it would look something like this: > > static struct option builtin_what_options[] = { > [... options specific to this command ...] > DIFF__OPT(&diff_options) > }; I think that is the more painful approach Jeff mentioned, and my comment was to show that it is not the only way. -- 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