2009-02-07 7 views
2

У меня есть программа, в которой я запускаю командную строку, и я хотел напечатать полужирный или стилизованный текст, похожий на то, как страницы man выделены жирным шрифтом (я не могу придумать пример, ,Печать текстового текста на терминал

Как стилизовать текст, отправленный на терминал?

Если это имеет значение, я запускаю терминал MacOSX.

ответ

3

Я считаю, что вы хотите использовать библиотеку ncurses для этого.

1

Вы можете посмотреть на это так, вопрос: Colored grep? который показывает простой способ окрашивать выход для VT100 терминалов (отлично работает на MacOSX)

1

Вы можете сделать это из любого сценария оболочки, используя программу tput для вывода terminfo кодов. Как ни странно, есть код, чтобы разворачивать, но не выключать --- вы должны отключить все. Обратное видео можно включить и выключить с помощью tput smso и tput rmso.

Вот пример для полужирный (/bin/ksh):

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

В большинстве языков программирования это проще раскошелиться процесс и вызвать tput, чем возиться с ncurses библиотеки (к которой tput является команда -линейный интерфейс).

-1

Я также нашел эту ссылку, которая была очень удобной.

Info about escape codes и script to generate escape codes

+0

Если это работает для вас, большой, но быть в курсе они не могут работать во всех командных терминалах, которые вы столкнетесь. Весь смысл ncurses и tputs - доступ к базе данных специальных кодов для всех возможных терминалов на планете. Менее важно сейчас в этом X мире, но все еще хорошо знать. –

+0

Ссылки не являются ответами. –

Смежные вопросы