New format string "%{progress-conemu}" to emit OSC 9;4 (ConEmu progress bar) codes (#202).

This commit is contained in:
Andrew Wood
2026-07-30 23:04:53 +01:00
parent 7c57fb08ad
commit 1422edeb6a
10 changed files with 145 additions and 17 deletions
+1
View File
@@ -119,6 +119,7 @@ is acknowledged and greatly appreciated:
* [oech3](https://codeberg.org/oech3) - suggested and tested performance improvements using `splice()` in more situations on Linux ([#188](https://codeberg.org/ivarch/pv/issues/188), [#191](https://codeberg.org/ivarch/pv/issues/191), [#192](https://codeberg.org/ivarch/pv/issues/192))
* [Barak A. Pearlmutter](https://codeberg.org/barak) - suggested that "**--rate-limit**" should accept non-integer values ([#193](https://codeberg.org/ivarch/pv/issues/193))
* [dirkmueller](https://codeberg.org/dirkmueller) - fixed the potential for stdout closure under a combination of error conditions in **--monitor** mode ([#201](https://codeberg.org/ivarch/pv/pulls/201))
* [InkstainTheBat](https://codeberg.org/InkstainTheBat) - suggested ConEmu OSC 9;4 support ([#202](https://codeberg.org/ivarch/pv/issues/202))
Translations provided through [Codeberg Weblate](https://translate.codeberg.org/projects/pv/):
+1
View File
@@ -1,5 +1,6 @@
### UNRELEASED
* *feature:* new **--format** string **%{progress-conemu}** to show progress in the terminal title tab on terminals with ConEmu OSC 9;4 support ([#202](https://codeberg.org/ivarch/pv/issues/202))
* *cleanup:* eliminate potential for closure of standard output under a combination of error conditions when using **--monitor** mode ([#201](https://codeberg.org/ivarch/pv/pulls/201))
### 1.11.0 - 11 June 2026
+10 -1
View File
@@ -1,4 +1,4 @@
.TH PV 1 2026-06-11 pv-1.11.0 "User Commands"
.TH PV 1 2026-07-30 pv-1.11.0 "User Commands"
.\"
.SH NAME
pv \- monitor and manage the progress of data through a pipe
@@ -505,6 +505,10 @@ Expands to fill the remaining space unless prefixed by a number.
The percentage completion (or maximum rate, with \*(lq\fB\-\-gauge\fR\*(rq
when the size is unknown).
.TP
.B %{progress-conemu}
Emit the ConEmu "progress bar" sequences (OSC 9;4) to show the progress
percentage in the terminal's title tab, on terminals which support it.
.TP
.B %{bar\-plain}
Progress bar in the standard plain format, without any sides, and without
any percentage displayed afterwards.
@@ -675,6 +679,11 @@ Show only the elapsed time - useful as a simple timer, such as
.B pv \-pterb
The default behaviour: progress bar, elapsed time, estimated completion
time, current rate, and byte counter.
.TP
.B pv \-\-format='%{progress-conemu}%{bytes} %{timer} %{rate} %{progress} %{eta}'
Show the byte counter, elapsed time, current rate, progress bar, and ETA,
and show the percentage progress in the terminal's tab bar, on terminals
that support ConEmu OSC 9;4 sequences.
.PP
On macOS, it may be useful to specify \*(lq\fB\-\-buffer\-size\~1024\fR\*(rq
in a pipeline, as this may improve performance.
+12
View File
@@ -519,6 +519,12 @@ contain the following sequences:
: The percentage completion (or maximum rate, with "**\--gauge**" when
the size is unknown).
**%{progress-conemu}**
: Emit the ConEmu \"progress bar\" sequences (OSC 9;4) to show the
progress percentage in the terminal\'s title tab, on terminals which
support it.
**%{bar-plain}**
: Progress bar in the standard plain format, without any sides, and
@@ -679,6 +685,12 @@ Some suggested common switch combinations:
: The default behaviour: progress bar, elapsed time, estimated
completion time, current rate, and byte counter.
**pv \--format=\'%{progress-conemu}%{bytes} %{timer} %{rate} %{progress} %{eta}\'**
: Show the byte counter, elapsed time, current rate, progress bar, and
ETA, and show the percentage progress in the terminal\'s tab bar, on
terminals that support ConEmu OSC 9;4 sequences.
On macOS, it may be useful to specify "**\--buffer-size 1024**" in a
pipeline, as this may improve performance.