Document the zsh 5.8 issue from #105 in the manual.

This commit is contained in:
Andrew Wood
2024-10-14 21:46:01 +01:00
parent 14a23268ad
commit 94f4a239cc
2 changed files with 51 additions and 0 deletions
+36
View File
@@ -779,6 +779,42 @@ one that owns the terminal. In these cases, use
.BR \-\-force .
.P
.IP \(bu 3
If
.B pv
is used in a pipeline in
.B zsh
version 5.8, and the last command in the pipeline is based on shell
builtins,
.B zsh
takes control of the terminal away from
.BR pv ,
preventing progress from being displayed. For example, this will produce no
progress bar:
.in +4n
.EX
pv InputFile | { while read -r line; do sleep 0.001; done; }
.EE
.in
.PP
.IP "" 3
To work around this, put the last commands of the pipeline in
normal brackets to force the use of a subshell:
.in +4n
.EX
pv InputFile | ( while read -r line; do sleep 0.001; done; )
.EE
.in
.PP
.IP "" 3
Refer to
.UR https://codeberg.org/a-j-wood/pv/issues/105
issue #105
.UE
for full details.
.P
.IP \(bu 3
The
.B -c
option does not work properly on Cygwin without
+15
View File
@@ -589,6 +589,21 @@ The following problems are known to exist in **pv**:
in a separate process group from the one that owns the terminal. In
these cases, use **\--force**.
- If **pv** is used in a pipeline in **zsh** version 5.8, and the last
command in the pipeline is based on shell builtins, **zsh** takes
control of the terminal away from **pv**, preventing progress from
being displayed. For example, this will produce no progress bar:
pv InputFile | { while read -r line; do sleep 0.001; done; }
: To work around this, put the last commands of the pipeline in normal
brackets to force the use of a subshell:
pv InputFile | ( while read -r line; do sleep 0.001; done; )
: Refer to [issue #105](https://codeberg.org/a-j-wood/pv/issues/105)
for full details.
- The **-c** option does not work properly on Cygwin without
**cygserver** running, if started near the bottom of the screen (IPC
is needed to handle the terminal scrolling). To fix this, start