mirror of
https://github.com/postgres/postgres.git
synced 2025-07-30 11:03:19 +03:00
In psql, use PSQL_PAGER in preference to PAGER, if it's set.
This allows the user's environment to set up a psql-specific choice of pager, in much the same way that we provide PSQL_EDITOR to allow a psql-specific override of the more widely known EDITOR variable. Pavel Stehule, reviewed by Thomas Munro Discussion: https://postgr.es/m/CAFj8pRD3RRk9S1eRbnGm_T6brc3Ss5mohraNzTSJquzx+pmtKA@mail.gmail.com
This commit is contained in:
@ -459,8 +459,6 @@ helpVariables(unsigned short int pager)
|
||||
|
||||
fprintf(output, _(" COLUMNS\n"
|
||||
" number of columns for wrapped format\n"));
|
||||
fprintf(output, _(" PAGER\n"
|
||||
" name of external pager program\n"));
|
||||
fprintf(output, _(" PGAPPNAME\n"
|
||||
" same as the application_name connection parameter\n"));
|
||||
fprintf(output, _(" PGDATABASE\n"
|
||||
@ -481,6 +479,8 @@ helpVariables(unsigned short int pager)
|
||||
" how to specify a line number when invoking the editor\n"));
|
||||
fprintf(output, _(" PSQL_HISTORY\n"
|
||||
" alternative location for the command history file\n"));
|
||||
fprintf(output, _(" PSQL_PAGER, PAGER\n"
|
||||
" name of external pager program\n"));
|
||||
fprintf(output, _(" PSQLRC\n"
|
||||
" alternative location for the user's .psqlrc file\n"));
|
||||
fprintf(output, _(" SHELL\n"
|
||||
|
@ -2870,7 +2870,9 @@ PageOutput(int lines, const printTableOpt *topt)
|
||||
const char *pagerprog;
|
||||
FILE *pagerpipe;
|
||||
|
||||
pagerprog = getenv("PAGER");
|
||||
pagerprog = getenv("PSQL_PAGER");
|
||||
if (!pagerprog)
|
||||
pagerprog = getenv("PAGER");
|
||||
if (!pagerprog)
|
||||
pagerprog = DEFAULT_PAGER;
|
||||
else
|
||||
|
@ -165,6 +165,13 @@ PQprint(FILE *fout, const PGresult *res, const PQprintOpt *po)
|
||||
screen_size.ws_row = 24;
|
||||
screen_size.ws_col = 80;
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Since this function is no longer used by psql, we don't examine
|
||||
* PSQL_PAGER. It's possible that the hypothetical external users
|
||||
* of the function would like that to happen, but in the name of
|
||||
* backwards compatibility, we'll stick to just examining PAGER.
|
||||
*/
|
||||
pagerenv = getenv("PAGER");
|
||||
/* if PAGER is unset, empty or all-white-space, don't use pager */
|
||||
if (pagerenv != NULL &&
|
||||
|
Reference in New Issue
Block a user