当尝试拥有相同的视图时,我遇到了严重的问题 - 控制台的颜色完全相同,然后将它们移植到终端。
控制台使用linux
或screen
仅支持8
颜色,问题是终端对这些8
颜色的定义不同,并且显示与控制台不同。
例如,相同的颜色代码1
在控制台和终端上看起来不同。
我需要一种方法来解决这个问题,并让我感觉我根本没有从终端和控制台切换。
如果可能的话申请st-terminal。
编辑:
st 有这个颜色代码,如何使其看起来与终端相同?
static const char *colorname[] = {
> /* 8 normal colors */
> "black",
> "red3",
> "green3",
> "yellow3",
> "blue2",
> "magenta3",
> "cyan3",
> "gray90",
> /* 8 bright colors */
> "gray50",
> "red",
> "green",
> "yellow",
> "#5c5cff",
> "magenta",
> "cyan",
> "white",
> [255] = 0,
> /* more colors can be added after 255 to use with DefaultXX */
> "#cccccc",
> "#555555",
};
unsigned int defaultfg = 7;
unsigned int defaultbg = 0;
static unsigned int defaultcs = 256;
static unsigned int defaultrcs = 257;
答案1
对于 Linux 控制台控件,请参阅man console_codes
。颜色条目:
ESC ] OSC (Should be: Operating system command) ESC ] P nrrggbb: set palette, with parameter given in 7 hexadecimal digits after the final P :-(. Here n is the color (0–15), and rrggbb indicates the red/green/blue values (0–255). ESC ] R: reset palette
例如,
echo -e "\033]P7ffffff"
将颜色 7 设置为“亮白色”。