PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Cores no prompt do psql


Observação: Eu ainda tenho que encontrar a causa raiz de por que isso é necessário às vezes, no entanto, isso deve corrigi-lo para você.

Existem dois caracteres para indicar o início/parada de caracteres não imprimíveis em readline/libedit (?), 0x01 e 0x02.

Portanto, se você adicionar essas sequências antes e depois das sequências não imprimíveis em seu PROMPT1, deve funcionar. O resultado no seu caso seria:
\set PROMPT1 '%001%[%033[1;33;40m%]%002%[email protected]%/%R%001%[%033[0m%]%002%# '

Atualização: Parece que isso deve ser tratado no psql, em algum lugar eles devem se perder de alguma forma. Talvez USE_READLINE não está definido?Veja:Linha 286 em src/bin/psql/prompt.c