367{
369 int nlcount;
371
372
373
374
375
377
378 HELP0(
"List of specially treated variables\n\n");
379
380 HELP0(
"psql variables:\n");
382 HELP0(
" psql --set=NAME=VALUE\n or \\set NAME VALUE inside psql\n\n");
383
384 HELP0(
" AUTOCOMMIT\n"
385 " if set, successful SQL commands are automatically committed\n");
386 HELP0(
" COMP_KEYWORD_CASE\n"
387 " determines the case used to complete SQL key words\n"
388 " [lower, upper, preserve-lower, preserve-upper]\n");
390 " the currently connected database name\n");
392 " controls what input is written to standard output\n"
393 " [all, errors, none, queries]\n");
394 HELP0(
" ECHO_HIDDEN\n"
395 " if set, display internal queries executed by backslash commands;\n"
396 " if set to \"noexec\", just show them without execution\n");
398 " current client character set encoding\n");
400 " \"true\" if last query failed, else \"false\"\n");
401 HELP0(
" FETCH_COUNT\n"
402 " the number of result rows to fetch and display at a time (0 = unlimited)\n");
403 HELP0(
" HIDE_TABLEAM\n"
404 " if set, table access methods are not displayed\n");
405 HELP0(
" HIDE_TOAST_COMPRESSION\n"
406 " if set, compression methods are not displayed\n");
407 HELP0(
" HISTCONTROL\n"
408 " controls command history [ignorespace, ignoredups, ignoreboth]\n");
410 " file name used to store the command history\n");
412 " maximum number of commands to store in the command history\n");
414 " the currently connected database server host\n");
416 " number of EOFs needed to terminate an interactive session\n");
418 " value of the last affected OID\n");
419 HELP0(
" LAST_ERROR_MESSAGE\n"
420 " LAST_ERROR_SQLSTATE\n"
421 " message and SQLSTATE of last error, or empty string and \"00000\" if none\n");
422 HELP0(
" ON_ERROR_ROLLBACK\n"
423 " if set, an error doesn't stop a transaction (uses implicit savepoints)\n");
424 HELP0(
" ON_ERROR_STOP\n"
425 " stop batch execution after error\n");
427 " server port of the current connection\n");
429 " specifies the standard psql prompt\n");
431 " specifies the prompt used when a statement continues from a previous line\n");
433 " specifies the prompt used during COPY ... FROM STDIN\n");
435 " run quietly (same as -q option)\n");
437 " number of rows returned or affected by last query, or 0\n");
438 HELP0(
" SERVER_VERSION_NAME\n"
439 " SERVER_VERSION_NUM\n"
440 " server's version (in short string or numeric format)\n");
441 HELP0(
" SHELL_ERROR\n"
442 " \"true\" if the last shell command failed, \"false\" if it succeeded\n");
443 HELP0(
" SHELL_EXIT_CODE\n"
444 " exit status of the last shell command\n");
445 HELP0(
" SHOW_ALL_RESULTS\n"
446 " show all results of a combined query (\\;) instead of only the last\n");
447 HELP0(
" SHOW_CONTEXT\n"
448 " controls display of message context fields [never, errors, always]\n");
449 HELP0(
" SINGLELINE\n"
450 " if set, end of line terminates SQL commands (same as -S option)\n");
451 HELP0(
" SINGLESTEP\n"
452 " single-step mode (same as -s option)\n");
454 " SQLSTATE of last query, or \"00000\" if no error\n");
456 " the currently connected database user\n");
458 " controls verbosity of error reports [default, verbose, terse, sqlstate]\n");
460 " VERSION_NAME\n"
461 " VERSION_NUM\n"
462 " psql's version (in verbose string, short string, or numeric format)\n");
463
464 HELP0(
"\nDisplay settings:\n");
466 HELP0(
" psql --pset=NAME[=VALUE]\n or \\pset NAME [VALUE] inside psql\n\n");
467
469 " border style (number)\n");
471 " target width for the wrapped format\n");
472 HELP0(
" expanded (or x)\n"
473 " expanded output [on, off, auto]\n");
475 " field separator for unaligned output (default \"%s\")\n",
477 HELP0(
" fieldsep_zero\n"
478 " set field separator for unaligned output to a zero byte\n");
480 " enable or disable display of the table footer [on, off]\n");
482 " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n");
484 " set the border line drawing style [ascii, old-ascii, unicode]\n");
486 " set the string to be printed in place of a null value\n");
487 HELP0(
" numericlocale\n"
488 " enable display of a locale-specific character to separate groups of digits\n");
490 " control when an external pager is used [yes, no, always]\n");
492 " record (line) separator for unaligned output\n");
493 HELP0(
" recordsep_zero\n"
494 " set record separator for unaligned output to a zero byte\n");
495 HELP0(
" tableattr (or T)\n"
496 " specify attributes for table tag in html format, or proportional\n"
497 " column widths for left-aligned data types in latex-longtable format\n");
499 " set the table title for subsequently printed tables\n");
500 HELP0(
" tuples_only\n"
501 " if set, only actual table data is shown\n");
502 HELP0(
" unicode_border_linestyle\n"
503 " unicode_column_linestyle\n"
504 " unicode_header_linestyle\n"
505 " set the style of Unicode line drawing [single, double]\n");
506 HELP0(
" xheader_width\n"
507 " set the maximum width of the header for expanded output\n"
508 " [full, column, page, integer value]\n");
509
510 HELP0(
"\nEnvironment variables:\n");
512
513#ifndef WIN32
514 HELP0(
" NAME=VALUE [NAME=VALUE] psql ...\n or \\setenv NAME [VALUE] inside psql\n\n");
515#else
516 HELP0(
" set NAME=VALUE\n psql ...\n or \\setenv NAME [VALUE] inside psql\n\n");
517#endif
518
520 " number of columns for wrapped format\n");
522 " same as the application_name connection parameter\n");
523 HELP0(
" PGDATABASE\n"
524 " same as the dbname connection parameter\n");
526 " same as the host connection parameter\n");
527 HELP0(
" PGPASSFILE\n"
528 " password file name\n");
529 HELP0(
" PGPASSWORD\n"
530 " connection password (not recommended)\n");
532 " same as the port connection parameter\n");
534 " same as the user connection parameter\n");
535 HELP0(
" PSQL_EDITOR, EDITOR, VISUAL\n"
536 " editor used by the \\e, \\ef, and \\ev commands\n");
537 HELP0(
" PSQL_EDITOR_LINENUMBER_ARG\n"
538 " how to specify a line number when invoking the editor\n");
539 HELP0(
" PSQL_HISTORY\n"
540 " alternative location for the command history file\n");
541 HELP0(
" PSQL_PAGER, PAGER\n"
542 " name of external pager program\n");
543#ifndef WIN32
544 HELP0(
" PSQL_WATCH_PAGER\n"
545 " name of external pager program used for \\watch\n");
546#endif
548 " alternative location for the user's .psqlrc file\n");
550 " shell used by the \\! command\n");
552 " directory for temporary files\n");
553
554
555 nlcount = 0;
556 for (
const char *ptr =
buf.data; *ptr; ptr++)
557 {
558 if (*ptr == '\n')
559 nlcount++;
560 }
561
562
564
566
568
570}
#define DEFAULT_FIELD_SEP