2009-02-07 91 views
2

我有一个程序,我通过命令行运行,我想打印出粗体或样式的文本,类似于手册页的粗体(我想不出一个样式化的示例) 。向终端打印样式文本

如何设置发送到终端的文本样式?

如果它有所作为,我正在运行一个MacOSX终端。

回答

3

我相信你想使用ncurses库来实现这一点。

1

你可以看看这太问题:Colored grep?其中显示了一个简单的方法来颜色VT100终端输出(适用于MacOSX的伟大)

1

您可以使用tput程序从任何shell脚本中输出terminfo代码。奇怪的是,有一个代码可以打开但不能关闭 - 你必须关掉所有的东西。可以使用tput smsotput rmso打开和关闭反向视频。

下面是大胆的一个例子(/bin/ksh):

print -n "This word is "; tput bold; print -n "bold"; tput sgr0; print "!" 

在大多数编程语言更容易创建一个进程,并呼吁tput比它与ncurses库(到tput是一个命令打扰线接口)。

-1

我还发现这个链接非常方便。

Info about escape codesscript to generate escape codes

+0

如果这对你的作品,伟大的,但在你遇到的所有命令终端知道这些可能无法正常工作。 ncurses和tputs的重点在于访问地球上所有可能终端的特殊代码数据库。这个X世界现在不那么重要,但仍然很好知道。 – 2009-02-09 04:50:44