Я ищу библиотеку кода, которая преобразует escape-последовательности ANSI в цвет HTML с помощью простых тегов или CSS. Например, что-то, что преобразовало бы это:
ESC [00mESC [01; 34mbinESC [00m ESC [01; 34mcodeESC [00m ESC [01; 31mdropbox-lnx.x86-0.6.404.tar.gzESC [00m ESC [00mfooESC [00m
В это:
<span style="color:blue">bin</span>
<span style="color:blue">code</span>
<span style="color:red">dropbox-lnx.x86-0.6.404.tar.gz</span>
foo
Преобразовывать разрывы в <br/> не обязательно, я не знаю только escape-коды. Я мог бы собрать все вместе, но я, вероятно, пропустил бы что-то важное, например, подчеркивание, или испортил бы работу цветов фона. Я бы предпочел просто сесть поверх чужого кода.
Существует ли такой инструмент (командная строка linux) или библиотека (предпочтительно perl, python или ruby)?
html
terminal-color
ansi-escape
Мирддин Эмрис
источник
источник
Ответы:
Кажется, есть модуль HTML :: FromANSI Perl .
источник
ls --color | ansi2html -p > my_web_page.html
ls --color | ansi2html > my_snpipet_code-no_header-footer.html
НО я предпочитаю вывод по умолчанию из ansi2html.sh из pixelbeataha
это программа на языке C, доступная в пакете Ubuntu по адресу http://ziz.delphigl.com/tool_aha.php или на github https://github.com/theZiz/aha , которая принимает ввод с цветами терминала с помощью pipe или file и помещает HTML-файл (соответствующий w3c) в stdout. Пример:ls --color=always | aha > ls-output.htm
или же
ls --color=always | aha --black > ls-output.htm
для терминального вида с черным фоном.
Скомпилируйте его "make" и поместите куда хотите.
Было бы здорово получить обратную связь. ;-)
источник
brew update && brew install aha
на Mac будет простой задачей.Зрелая библиотека Python и инструмент командной строки, которые все еще поддерживаются: ralphbean / ansi2html
В качестве альтернативы для оболочки Борна: ansi2html.sh
источник