diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml index 264cfe65852bc1bd3dcb94a7d9cc9abcdbff98ce..c666f714c3b449329cec36e684e47ee22925c2c9 100644 --- a/doc/src/sgml/ref/psql-ref.sgml +++ b/doc/src/sgml/ref/psql-ref.sgml @@ -3513,42 +3513,53 @@ PSQL_EDITOR_LINENUMBER_ARG='--line ' <refsect1> <title>Files</title> - <itemizedlist> + <variablelist> + <varlistentry> + <term><filename>psqlrc</filename> and <filename>~/.psqlrc</filename></term> <listitem> <para> - Unless it is passed an <option>-X</option> - or <option>-c</option> option, - <application>psql</application> attempts to - read and execute commands from the system-wide - <filename>psqlrc</filename> file and the user's - <filename>~/.psqlrc</filename> file before starting up. - (On Windows, the user's startup file is named - <filename>%APPDATA%\postgresql\psqlrc.conf</filename>.) - See <filename><replaceable>PREFIX</>/share/psqlrc.sample</> - for information on setting up the system-wide file. It could be used - to set up the client or the server to taste (using the <command>\set - </command> and <command>SET</command> commands). + Unless it is passed an <option>-X</option> or <option>-c</option> option, + <application>psql</application> attempts to read and execute commands + from the system-wide startup file (<filename>psqlrc</filename>) and then + the user's personal startup file (<filename>~/.psqlrc</filename>), after + connecting to the database but before accepting normal commands. + These files can be used to set up the client and/or the server to taste, + typically with <command>\set</command> and <command>SET</command> + commands. </para> <para> - The location of the user's <filename>~/.psqlrc</filename> file can - also be set explicitly via the <envar>PSQLRC</envar> environment - setting. + The system-wide startup file is named <filename>psqlrc</filename> and is + sought in the installation's <quote>system configuration</> directory, + which is most reliably identified by running <literal>pg_config + --sysconfdir</>. By default this directory will be <filename>../etc/</> + relative to the directory containing + the <productname>PostgreSQL</productname> executables. The name of this + directory can be set explicitly via the <envar>PGSYSCONFDIR</envar> + environment variable. + </para> + <para> + The user's personal startup file is named <filename>.psqlrc</filename> + and is sought in the invoking user's home directory. On Windows, which + lacks such a concept, the personal startup file is named + <filename>%APPDATA%\postgresql\psqlrc.conf</filename>. + The location of the user's startup file can be set explicitly via + the <envar>PSQLRC</envar> environment variable. </para> - </listitem> - - <listitem> <para> - Both the system-wide <filename>psqlrc</filename> file and the user's - <filename>~/.psqlrc</filename> file can be made <application>psql</application>-version-specific + Both the system-wide startup file and the user's personal startup file + can be made <application>psql</application>-version-specific by appending a dash and the <productname>PostgreSQL</productname> - major or minor <application>psql</application> release number, + major or minor release number to the file name, for example <filename>~/.psqlrc-9.2</filename> or <filename>~/.psqlrc-9.2.5</filename>. The most specific version-matching file will be read in preference to a non-version-specific file. </para> </listitem> + </varlistentry> + <varlistentry> + <term><filename>.psql_history</filename></term> <listitem> <para> The command-line history is stored in the file @@ -3556,12 +3567,12 @@ PSQL_EDITOR_LINENUMBER_ARG='--line ' <filename>%APPDATA%\postgresql\psql_history</filename> on Windows. </para> <para> - The location of the history file can - also be set explicitly via the <envar>PSQL_HISTORY</envar> environment - setting. + The location of the history file can be set explicitly via + the <envar>PSQL_HISTORY</envar> environment variable. </para> </listitem> - </itemizedlist> + </varlistentry> + </variablelist> </refsect1> diff --git a/src/bin/psql/psqlrc.sample b/src/bin/psql/psqlrc.sample index 6054fabb380e5e2b0bb86206318331e1fd54ebfc..8152cace2b06f6982bd0b2c894bfc2ccfc342294 100644 --- a/src/bin/psql/psqlrc.sample +++ b/src/bin/psql/psqlrc.sample @@ -1,7 +1,8 @@ -- --- psql configuration file +-- system-wide psql configuration file -- -- This file is read before the .psqlrc file in the user's home directory. -- --- Copy this to your sysconf directory (typically /usr/local/pgsql/etc) and --- rename it psqlrc. +-- Copy this to your installation's sysconf directory and rename it psqlrc. +-- The sysconf directory can be identified via "pg_config --sysconfdir". +--