Pádraig Brady <p...@draigbrady.com> writes:

> Reading POSIX more closely I see there is also pause logic for the first page 
> only:
>   -f    [XSI] [Option Start] Use a <form-feed> for new pages, instead of the 
> default behavior that uses a sequence of <newline> characters.
>         Pause before beginning the first page if the standard output is 
> associated with a terminal. [Option End]

Thanks, I'll have a look.

> I presume you're waiting until the implementation solidifies,
> but just in case, a couple of basic tests to show
> that -p is accepted at least would be good.

Yep, I was going to add some simple tests afterwards.

Paul Eggert said:

> On 2025-07-28 09:23, Pádraig Brady wrote:
>> Yes it's a fair point.
>> We don't want existing scripts that use -f to start pausing unexpectedly.
>> I suppose this is a case for only pausing with -f if POSIXLY_CORRECT
>> env var is set.

> Although backward compatibility is an issue, the current behavior is
> clearly wrong for the intended use of -f, which is for logins via
> printing terminals so stdout is the printer. So a better way to think
> about it is that this is merely a longstanding obscure bug in GNU 'pr'
> that we can fix.
>
> The only reason we haven't noticed the bug before, is that nobody has
> seriously used those terminals in decades, so nobody has run into the
> bug and taken the time to report it.
>
> Other 'pr' implementations (e.g., FreeBSD) do the right thing here,
> and I see no significant reason (other than inertia) for us to be both
> wrong for the intended use and incompatible with the rest of the
> world.

I don't really like the idea of changing '-f' depending on whether
POSIXLY_CORRECT is defined. So I would prefer this as well.

I'll write another patch later today based on your other emails as well.

Collin



Reply via email to