From: Mark Walters <markwalters1009@gmail.com>
To: Peter Wang <novalazy@gmail.com>, notmuch@notmuchmail.org
Subject: Re: [PATCH v6 1/6] cli: command line parsing: allow default for keyword options
Date: Mon, 28 May 2012 20:05:59 +0100 [thread overview]
Message-ID: <87wr3wm8h4.fsf@qmul.ac.uk> (raw)
In-Reply-To: <20120528233152.GD2331@hili.localdomain>
On Mon, 28 May 2012, Peter Wang <novalazy@gmail.com> wrote:
> On Sun, 27 May 2012 09:22:21 +0100, Mark Walters <markwalters1009@gmail.com> wrote:
>> This changes the parsing for "keyword" options so that if the option
>> is specified with no argument the argument is parsed as if it were
>> passed an empty string. This make it easier to add options to existing
>> boolean arguments (the existing --option can default to TRUE).
>> ---
>> command-line-arguments.c | 17 +++++++++++++----
>> 1 files changed, 13 insertions(+), 4 deletions(-)
>>
>> diff --git a/command-line-arguments.c b/command-line-arguments.c
>> index 76b185f..2fb8a1b 100644
>> --- a/command-line-arguments.c
>> +++ b/command-line-arguments.c
>> @@ -11,10 +11,15 @@
>> */
>>
>> static notmuch_bool_t
>> -_process_keyword_arg (const notmuch_opt_desc_t *arg_desc, const char *arg_str) {
>> +_process_keyword_arg (const notmuch_opt_desc_t *arg_desc, char next, const char *arg_str) {
>>
>> const notmuch_keyword_t *keywords = arg_desc->keywords;
>>
>> + if (next == 0) {
>> + /* No keyword given */
>> + arg_str="";
>> + }
>> +
>
> Whitespace.
Will fix
>> while (keywords->name) {
>> if (strcmp (arg_str, keywords->name) == 0) {
>> if (arg_desc->output_var) {
>> @@ -24,7 +29,10 @@ _process_keyword_arg (const notmuch_opt_desc_t *arg_desc, const char *arg_str) {
>> }
>> keywords++;
>> }
>> - fprintf (stderr, "unknown keyword: %s\n", arg_str);
>> + if (next!=0)
>
> Whitespace.
Will fix
>> + fprintf (stderr, "unknown keyword: %s\n", arg_str);
>> + else
>> + fprintf (stderr, "option %s needs a keyword\n", arg_desc->name);
>
> I think "keyword argument" is clearer.
I think I agree: the reason I kept it is that the first case is the
existing error message. Any comments from anyone?
Best wishes
Mark
next prev parent reply other threads:[~2012-05-28 19:06 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-27 8:22 [PATCH v6 0/6] Allow JSON to use non-entire thread, and use for elide Mark Walters
2012-05-27 8:22 ` [PATCH v6 1/6] cli: command line parsing: allow default for keyword options Mark Walters
2012-05-28 13:31 ` Peter Wang
2012-05-28 19:05 ` Mark Walters [this message]
2012-05-27 8:22 ` [PATCH v6 2/6] cli: Let json output "null" messages for non --entire-thread Mark Walters
2012-05-27 8:22 ` [PATCH v6 3/6] cli: make --entire-thread=false work for format=json Mark Walters
2012-05-28 13:34 ` Peter Wang
2012-05-28 19:06 ` Mark Walters
2012-05-27 8:22 ` [PATCH v6 4/6] Update devel/schemata for --entire-thread=false Mark Walters
2012-05-27 8:22 ` [PATCH v6 5/6] emacs: make elide messages use notmuch-show for omitting messages Mark Walters
2012-05-27 8:22 ` [PATCH v6 6/6] cli: notmuch-show.c fix whitespace error Mark Walters
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://notmuchmail.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87wr3wm8h4.fsf@qmul.ac.uk \
--to=markwalters1009@gmail.com \
--cc=notmuch@notmuchmail.org \
--cc=novalazy@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://yhetil.org/notmuch.git/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).