From: Pierre Habouzit Date: Wed, 03 Oct 2007 23:11:45 GMT Subject: Re: [PATCH] Add a simple option parser. Message-ID: <20071003231145.GF28188@artemis.corp> In-Reply-To: <1191447902-27326-1-git-send-email-krh@redhat.com> On Wed, Oct 03, 2007 at 09:45:01PM +0000, Kristian Høgsberg wrote: > The option parser takes argc, argv, an array of struct option > and a usage string. Each of the struct option elements in the array > describes a valid option, its type and a pointer to the location where the > value is written. The entry point is parse_options(), which scans through > the given argv, and matches each option there against the list of valid > options. During the scan, argv is rewritten to only contain the > non-option command line arguments and the number of these is returned. if we are going in that direction (and I believe it's a good one), we should be sure that the model fits with other commands as well. And as I said on IRC, I believe the most "horrible" (as in complex) option parser in git is the one from git-grep. A migration of git-grep on that API should be tried first. If this works well enough, I believe that the rest of the git commands will be migrated easily enough. (with maybe small addition to parse-option.[hc] but the hardcore things should have been met with git-grep already I think). -- ·O· Pierre Habouzit ··O madcoder@debian.org OOO http://www.madism.org