From: Dragan Simic Date: Sun, 02 Jun 2024 17:36:37 GMT Subject: Re: [PATCH v3 0/6] use the pager in 'add -p' Message-ID: <81d52b31ce4c287765a43d87d94f526b@manjaro.org> In-Reply-To: Hello Ruben, On 2024-06-02 17:38, Rubén Justo wrote: > This iteration, v3, introduces a new command: '|', suggested by Junio, > instead of the 'P' command proposed in the previous iteration. > > This allows us to use the pager: > > (1/2) Stage this hunk [y,n,q,a,d,j,J,g,/,s,e,p,|,?]? | > > But also to use other programs, like: > > (1/2) Stage this hunk [y,n,q,a,d,j,J,g,/,s,e,p,|,?]? | head > > Or: > > (1/2) Stage this hunk [y,n,q,a,d,j,J,g,/,s,e,p,|,?]? | grep term > > Hopefully, we'll find a way to avoid sending ANSI codes, on demand, > without disabling it entirely with color.ui=never or any other global > option. To make this usable: > > (1/2) Stage this hunk [y,n,q,a,d,j,J,g,/,s,e,p,|,?]? | vim - > > However, the current functionality meets my current needs, so I'm happy > with it. The way I see it, using "| " should follow the de facto rules already established by the "--color=auto" command-line option in multiple utilities. Thus, when piping to a custom program, the escape codes that perform the coloring should be stripped. > This, a new 'interactive.pipeCommand' setting, or a new switch: 'add > -P', > are left for discussing in, hopefully, a future series. > > One final note; I preferred to model the help text this way: > > y - stage this hunk > n - do not stage this hunk > q - quit; do not stage this hunk or any of the remaining ones > a - stage this hunk and all later hunks in the file > d - do not stage this hunk or any of the later hunks in the file > j - leave this hunk undecided, see next undecided hunk > J - leave this hunk undecided, see next hunk > g - select a hunk to go to > / - search for a hunk matching the given regex > s - split the current hunk into smaller hunks > e - manually edit the current hunk > p - print the current hunk > | - pipe the current hunk to the pager, or | to use a > program' > ? - print help I also like this form better, but I think wording could be improved. I'll think a bit more about it, maybe something like this: | - use pager to show the current hunk, or use | to customize Also, what's the single quote doing after "use a program"? > Instead of: > > y - stage this hunk > n - do not stage this hunk > q - quit; do not stage this hunk or any of the remaining ones > a - stage this hunk and all later hunks in the file > d - do not stage this hunk or any of the later hunks in the file > j - leave this hunk undecided, see next undecided hunk > J - leave this hunk undecided, see next hunk > g - select a hunk to go to > / - search for a hunk matching the given regex > s - split the current hunk into smaller hunks > e - manually edit the current hunk > p - print the current hunk > |[program] - pipe the current hunk to a program, the pager if > none... > ? - print help > > Because I believe it reads better by maintaining a single character > before the dash. But I am not opposed to the latter.