Add PSQL_WATCH_PAGER for psql's \watch command.

Thomas Munro <tmunro@postgresql.org>

Commit: 7c09d2797ecdf779e5dc3289497be85675f3d134
Author: Thomas Munro <tmunro@postgresql.org>
Date: 2021-07-12T23:43:21Z
Releases: 15.0
Add PSQL_WATCH_PAGER for psql's \watch command.

Allow a pager to be used by the \watch command.  This works but isn't
very useful with traditional pagers like "less", so use a different
environment variable.  The popular open source tool "pspg" (also by
Pavel) knows how to display the output if you set PSQL_WATCH_PAGER="pspg
--stream".

To make \watch react quickly when the user quits the pager or presses
^C, and also to increase the accuracy of its timing and decrease the
rate of useless context switches, change the main loop of the \watch
command to use sigwait() rather than a sleeping/polling loop, on Unix.

Supported on Unix only for now (like pspg).

Author: Pavel Stehule <pavel.stehule@gmail.com>
Author: Thomas Munro <thomas.munro@gmail.com>
Discussion: https://postgr.es/m/CAFj8pRBfzUUPz-3gN5oAzto9SDuRSq-TQPfXU_P6h0L7hO%2BEhg%40mail.gmail.com

Files

PathChange+/−
doc/src/sgml/ref/psql-ref.sgml modified +28 −0
src/bin/psql/command.c modified +124 −9
src/bin/psql/common.c modified +7 −4
src/bin/psql/common.h modified +1 −1
src/bin/psql/help.c modified +5 −1
src/bin/psql/startup.c modified +19 −0

Documentation touched

Discussion