Subject: Re: [PATCH v2 1/2] git-jump: add an optional argument 'stdout'

From: Junio C Hamano <[email-masked]>
Date: Mon, 21 Nov 2022 14:43:51 +0900

"Yoichi Nakayama via GitGitGadget" <[email-masked]> writes:

> +You can use the optional argument 'stdout' to print the listing to
> +standard output. You can use it with M-x grep on Emacs.

It is unclear what happens when you do not give 'stdout' from the
above description.  You say 'stdout' is a way to tell the command
"to print the listing to standard output", but what is expected to
follow that sentence is left unsaid (i.e. "you can give 'stdout' to
print to stdout, INSTEAD OF DOING X").

Also, 

> +--------------------------------------------------
> +# In Emacs, M-x grep and invoke "git jump stdout <mode>"
> +Run grep (like this): git jump stdout diff

the command line structure of "git jump" being

    git jump <mode> [<args>]

where <mode> is one of 'diff', 'merge', 'grep', it somehow feels
very strange to insert an optional new word, that is not a dashed
option, before the <mode>.  "git jump --stdout diff" might be less
surprising, but I dunno.

But I think this is a good idea.  In fact, it almost feels that the
interface to produce the list of "$file:$line: <blah>" that this
"stdout" mode gives should have been in the command as the lowest
level basic primitive, upon which the feature to drive a specific
editor using such an output file should have been built, and the
current code is backwards in that sense.  Exposing that lower level
primitive directly is a welcome addition.