zaLinux.ru

Как цветной вывод консоли конвертировать в HTML код


Конвертировать вывод консоли в HTML код – это задача, которая может пригодиться при составлении документации, для вывода результатов облачных вычислений на страницы сайта и т.д. При этом если удастся сохранить цвета в том виде, как они есть в стандартном выводе – это значительно увеличит информативность текста.

Если перед вами стоит именно эта задача – сохранить цветной вывод консоли в HTML код и при этом сохранить исходные цвета, то вам очень пригодиться готовое решение – программа aha.

aha – это Ansi HTML адаптер.

aha принимает SGR-раскрашенный ввод и печатает W3C соответствующий HTML-код.

aha читает ввод из файла или стандартного ввода и записывает HTML-код в стандартный вывод.

Исходный код программы: https://github.com/theZiz/aha

Установка программы очень проста:

git clone https://github.com/theZiz/aha.git
cd aha/
make
sudo make install

использование:

aha <опции> [-f файл]

Справка по aha:


     aha (--help|-h|-?)
         --pink,       -p: Розовый фон
         --stylesheet, -s: Использовать таблицу стилей вместо встроенных стилей
         --iso X,    -i X: Использовать ISO 8859-X вместо of utf-8. X должна быть 1..16
         --title X,  -t X: Дать html выводу заголовок "X" вместо
                           "stdin" или имени файла
         --line-fix,   -l: Использовать фикс для ввода, использующего контролирующие последовательности
                           для изменения позиции курсора вроде htop. Это горячее исправление,
                           оно может не работать со программами вроде htop. Пример:
                           echo q | htop | aha -l > htop.htm
         --word-wrap,  -w: Заворачивать длинные строки в html файле. Это работает с
                           Браузерами поддерживающими CSS3 а также со многими старыми.
         --no-header,  -n: Не включать заголовок в генерируемый HTML,
                           полезно для вставки в полные HTML файлы.

Примеры:

aha --help | aha --black > aha-help.htm

Записывает текст этой справки в файл aha-help.htm

colordiff oldfile.c newfile.c | aha > colordiff.htm

Создаёт HTML файл с раскрашенным diff-выводом двух файлов "oldfile.c" и "newfile.c" с белым фоном.

ls --color=always | aha --pink > ls.htm

Создаёт HTML файл с раскрашенным ls-выводом и розовым фоном.

echo q | htop | aha --black --line-fix > htop.htm

Создаёт HTML файл с выводом htop. Вы должны использовать --line-fix поскольку htop использует другую команду новой строки.


Рекомендуемые статьи:

1 Комментарий

  1. Faiver

    Замечательная программа, но столкнулся с тем что в некоторых случаях цветной вывод не сохраняется.. 

    В частности не удалось сохранить цветной вывод для команды git log -p 

Добавить комментарий для Faiver Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *