From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,AWL,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 3BFD11F953; Mon, 8 Nov 2021 22:57:47 +0000 (UTC) Date: Mon, 8 Nov 2021 22:57:47 +0000 From: Eric Wong To: Konstantin Ryabitsev Cc: Rob Herring , meta@public-inbox.org, workflows@vger.kernel.org Subject: Re: lei: incorrect quoting on saved searches (was Re: lore+lei: getting started) Message-ID: <20211108225747.GA11051@dcvr> References: <20211108202204.q5zg6bachnvbjlnx@meerkat.local> <20211108204923.GA12823@dcvr> <20211108213613.4hjtbokwzar7x4ph@meerkat.local> <20211108214836.GA21665@dcvr> <20211108223657.jhsssoumfbmf4dhw@meerkat.local> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20211108223657.jhsssoumfbmf4dhw@meerkat.local> List-Id: Konstantin Ryabitsev wrote: > On Mon, Nov 08, 2021 at 09:48:36PM +0000, Eric Wong wrote: > > > Hmm... I noticed that when I `lei edit-search` the initial query that was > > > causing quoting issues, I get the following: > > > > > > [lei] > > > q = (dfn:drivers OR dfn:arch OR dfn:Documentation OR dfn:include OR dfn:scripts) AND f:robh@kernel.org > > > > > > So, the extra quotes didn't get added to the config file. Running `lei up` on > > > that saved search seems to do the right thing, so the erroneous quotes are > > > only added during the initial `lei q` call. > > > > Right, each entry in lei.q is actually an entry in argv[]. > > So the correct query should look something like: > > So, to be clear here... the following doesn't work because instead of multiple > query parameters to 'lei q' the single-quoted string becomes a single > parameter? > > lei q -I https://lore.kernel.org/all/ -o ~/work/temp/lei/robh-patches \ > --threads --dedupe=mid \ > '(dfn:drivers OR dfn:arch OR dfn:Documentation OR dfn:include OR dfn:scripts) AND f:robh@kernel.org' > > Any way to make this work? I find that it's more easily readable than the > "echo | lei q" version. I can't think of a way to make it work w/o breaking phrase searches (or asking users to use both single and double-quotes): lei q 's:"a quick brown fox"' # yuck > For bash users, the following should work as well: > > lei q -I https://lore.kernel.org/all/ -o ~/work/temp/lei/robh-patches \ > --threads --dedupe=mid <<< \ > '(dfn:drivers OR dfn:arch OR dfn:Documentation OR dfn:include OR dfn:scripts) AND f:robh@kernel.org' Oh, not sure about bash and <<<; but this heredoc should work with any POSIX sh: lei q -I https://lore.kernel.org/all/ \ -o ~/work/temp/lei/robh-patches \ --threads --dedupe=mid <<'EOM' (dfn:drivers OR dfn:arch OR dfn:Documentation OR dfn:include OR dfn:scripts) AND f:robh@kernel.org EOM > Suggestion, can -I accept the URL containing the query, so that the command > becomes: > > lei q -o ~/mail/foo --threads --dedupe=mid -I \ > https://lore.kernel.org/all/?q=f%3Atorvalds+AND+nq%3Agarbage > > This way we pass both the location of the extindex to query AND the parameters > we should use, avoiding shell quoting problems? Maybe, but URI escaping bothers the heck out of me, too. I guess the heredoc example is actually good...