diff options
author | Stephen Frost <sfrost@snowman.net> | 2017-03-07 09:31:52 -0500 |
---|---|---|
committer | Stephen Frost <sfrost@snowman.net> | 2017-03-07 09:31:52 -0500 |
commit | b2678efd43f17db7dfa04e0ca076ea01275cd9bc (patch) | |
tree | 286017423ffd724b3759be1141dc67df45484eae /src/bin/psql/common.c | |
parent | 9a83d56b38c870ce47b7651385ff2add583bf136 (diff) | |
download | postgresql-b2678efd43f17db7dfa04e0ca076ea01275cd9bc.tar.gz postgresql-b2678efd43f17db7dfa04e0ca076ea01275cd9bc.zip |
psql: Add \gx command
It can often be useful to use expanded mode output (\x) for just a
single query. Introduce a \gx which acts exactly like \g except that it
will force expanded output mode for that one \gx call. This is simpler
than having to use \x as a toggle and also means that the user doesn't
have to worry about the current state of the expanded variable, or
resetting it later, to ensure a given query is always returned in
expanded mode.
Primairly Christoph's patch, though I did tweak the documentation and help
text a bit, and re-indented the tab completion section.
Author: Christoph Berg
Reviewed By: Daniel Verite
Discussion: https://postgr.es/m/20170127132737.6skslelaf4txs6iw%40msg.credativ.de
Diffstat (limited to 'src/bin/psql/common.c')
-rw-r--r-- | src/bin/psql/common.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/bin/psql/common.c b/src/bin/psql/common.c index 5349c394115..1aa56ab3a2f 100644 --- a/src/bin/psql/common.c +++ b/src/bin/psql/common.c @@ -770,6 +770,10 @@ PrintQueryTuples(const PGresult *results) { printQueryOpt my_popt = pset.popt; + /* one-shot expanded output requested via \gx */ + if (pset.g_expanded) + my_popt.topt.expanded = 1; + /* write output to \g argument, if any */ if (pset.gfname) { @@ -1410,6 +1414,9 @@ sendquery_cleanup: pset.gfname = NULL; } + /* reset \gx's expanded-mode flag */ + pset.g_expanded = false; + /* reset \gset trigger */ if (pset.gset_prefix) { |