如何使用ANSI 256色转义序列同时设置终端前景与背景色?
256色同时设置前景与背景的ANSI转义序列方案
当然有可行方案,你只需要把前景色和背景色的256色转义参数组合起来使用即可:
- 前景256色格式:
\033[38;5;[前景色值]m - 背景256色格式:
\033[48;5;[背景色值]m
将两者与样式参数(比如粗体1)拼接,就能实现带样式的256色前景+背景效果,完整格式示例:
\033[1;38;5;[前景色号];48;5;[背景色号]m 文本内容 \u001b[0m
举个实际例子,设置粗体橙色前景(色号208)+蓝色背景(色号21):
\033[1;38;5;208;48;5;21m 橙色粗体文本在蓝色背景上 \u001b[0m
参数顺序不影响效果,也可以写成\033[38;5;208;48;5;21;1m ...,只要把需要的参数用分号分隔,最后以m结尾即可。
注:部分老旧终端可能不支持256色背景设置,但主流终端(如xterm、iTerm2、GNOME Terminal等)均可正常识别该格式。
内容的提问来源于stack exchange,提问作者Marcel Burdon Księżak
相关产品推荐
相关产品推荐

