i tend to use more (than standard) informative prompts.
whether it's shell, or psql i set it up to match my needs.
for the longest time i used psql prompt:
\set PROMPT1 '(%n@%M:%>) %`date +%H:%M:%S` [%/] %[%012%]%x%# '
(this line should be in .psqlrc).
it gives some information:
(depesz@[local]:5810) 15:26:06 [depesz] #
at a glance i know what user i am conencted as, to which machine, over which port, what database i'm connected to, and what's current time.
unfortunately this prompt had one issue – whenever i used history, and then something like <ctrl-a> (go to begining of line) something weird happened – cursor got distorted, and it looked like it was on second letter, while in fact it was on first (hard to explain, try it for yourself :).
it was painful, but since i couldn't do anything about it, i just learned to live with it.
now, due to some new environment setup, i decided that i've got enough of it. i tried to find any help in manual (i was looking for something like \[ and \] from bash prompting), but to no avail.
i did find out that the problem lies in %[012%]. i tried to give there literal <enter> (thus making \set statement multi-line), but it didn't work.
and then i simply gave there standard “\n". and it was it – now i have the prompt the way i like it, with no side effects on command line edition.
final prompt1, in case you're interested:
\set PROMPT1 '(%n@%M:%>) %`date +%H:%M:%S` [%/] \n%x%# '