C 在 iTerm2 中以彩色打印宽字符
C print wide chars in colors in iTerm2
我有一个宽字符 wchar_t*
字符串,我想用 write(3)
彩色打印它
像这样:
write(1, L"\x1b[31m", 5 * sizeof(wchar_t));
write(1, L"BLA", 3 * sizeof(wchar_t));
write(1, L"\x1b[0m", 5 * sizeof(wchar_t));
无色打印 [31mBLA[0m
。
还有这样的东西:
write(1, "\x1b[31m", 5);
write(1, "BLA", 3);
write(1, "\x1b[0m", 5);
在 red
中正确打印 BLA
。
知道如何用彩色打印 wide char
字符串吗?
编辑:它似乎在 Terminal.app
中打印正确,但在 iTerm2
中打印不正确,知道为什么吗?
好吧,这还没有在 iTerm2 中实现,我在这里打开了一个问题:iTerm2 issue 3460。
已经设置了一个里程碑来实现这个我会在完成后更新答案。
我有一个宽字符 wchar_t*
字符串,我想用 write(3)
像这样:
write(1, L"\x1b[31m", 5 * sizeof(wchar_t));
write(1, L"BLA", 3 * sizeof(wchar_t));
write(1, L"\x1b[0m", 5 * sizeof(wchar_t));
无色打印 [31mBLA[0m
。
还有这样的东西:
write(1, "\x1b[31m", 5);
write(1, "BLA", 3);
write(1, "\x1b[0m", 5);
在 red
中正确打印 BLA
。
知道如何用彩色打印 wide char
字符串吗?
编辑:它似乎在 Terminal.app
中打印正确,但在 iTerm2
中打印不正确,知道为什么吗?
好吧,这还没有在 iTerm2 中实现,我在这里打开了一个问题:iTerm2 issue 3460。
已经设置了一个里程碑来实现这个我会在完成后更新答案。