0

为了获得额外的学分,教授希望我们在当前项目的文本输出中使用粗体和/或下划线。

他给出的示例b\bb o\bo l\bl d\bd显示为粗体

按照那个例子,我标记SPACE
printf("\033[7mS\bSP\bPA\bAC\bCE\E- move forward one page\033[0m");

我还通过在\033[7m\033[0m字段中包含字符串来实现反向视频。反向视频适当地反转了线条的颜色,但似乎不会影响加粗,因为带有和不带反向视频的字符串都不是粗体。

会不会是 Ubuntu 10.10 中使用的标准 shell 出了问题?

4

2 回答 2

2

我同意使用诅咒,但考虑到你的出发点......

我认为您想将 VT100 的“明亮”功能用于粗体,ESC[1m

您可能可以在 VT100 代码上找到更好的文档,但使用此页面我找到了代码。ANSI/VT100 转义码

我希望这有帮助。

于 2011-04-08T00:11:16.937 回答
0

除非您只是想成为受虐狂,否则请尝试使用curses(或ncurses)。

// warning: Going from distant memory here...
curs_attron(A_INVERSE); // maybe A_REVERSE? I don't remember for sure.
curs_addstr("SPACE - move forward one page");
curs_attroff(A_INVERSE); 
于 2011-04-07T23:29:26.463 回答