PSQL提示中的颜色[英] Colors in the psql prompt

本文是小编为大家收集整理的关于PSQL提示中的颜色的处理方法,想解了PSQL提示中的颜色的问题怎么解决?PSQL提示中的颜色问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

当我在提示中添加颜色时,我在提示后得到垃圾.

我尝试了 Postgres Doc :

\set PROMPT1 '%[%033[1;33;40m%]%n@%/%R%[%033[0m%]%# '

我还尝试了许多我在Google中发现但结果相同的其他及时示例.

因此,设置提示后,我有一个类似的黄色提示:

ulf@mydb=#

i然后运行查询:

ulf@mydb=# select * from country;

然后,我用 轻轻浏览历史记录.这会给我带来更多选择的人,但我得到了:

ulf@mydb=# \set PROMPT1 'select * from country;

在select之前请注意\set...,这是最初的Promt-Setting中的残余.

如果我将\set PROMPT1 -command放在.pslqrc

中,我也会获得类似的结果

我在xterm和gnome末端都获得了相同的结果.我的bash-prompt以类似的方式颜色,但我对那个提示没有任何问题.

我做错了什么?

推荐答案

注意:我还没有找到为什么有时需要这是必要的根本原因,但是,这应该为您解决.

有两个字符可以指示readline/libedit(?),0x01和0x02中的不可打印字符的开始/停止.

因此,如果您在提示中的不可打印序列之前和之后添加它们,则应起作用.在您的情况下的结果是:

\set PROMPT1 '%001%[%033[1;33;40m%]%002%n@%/%R%001%[%033[0m%]%002%# '

更新: 看来应该在PSQL中处理这一点,在某个地方,他们必须迷失一些方法.也许USE_READLINE未定义? 请参阅: src/bin/psql/stresm.c

其他推荐答案

\set PROMPT1 '%001%[%033[1;32;40m%][%`hostname -i`] %002%n@%/%R%001%[%033[0m%]%002%# '

image- psql提示中的颜色 - 颜色

本文地址:https://www.itbaoku.cn/post/1763777.html