Opmerking: Ik moet de oorzaak nog vinden waarom dit soms nodig is, maar dit zou het voor je moeten oplossen.
Er zijn twee tekens om start/stop aan te geven van niet-afdrukbare tekens in readline/libedit (?), 0x01 en 0x02.
Dus als u deze voor en na de niet-afdrukbare reeksen in uw PROMPT1 toevoegt, zou het moeten werken. Het resultaat in uw geval zou zijn:
\set PROMPT1 '%001%[%033[1;33;40m%]%002%[email protected]%/%R%001%[%033[0m%]%002%# '
Bijwerken: Het lijkt erop dat dit echter in psql moet worden afgehandeld, ergens moeten ze op de een of andere manier verdwalen. Misschien USE_READLINE
is niet gedefinieerd? Zie:Regel 286 in src/bin/psql/prompt.c