Рендеринг вывода терминала в браузере - PullRequest
0 голосов
/ 08 апреля 2020

У меня есть файл с кучей журналов терминала, захваченных утилитой screen. Вот фрагмент:

[A[0m[27m[24m[J[34m~[39m


(base) [38;5;242mbase[39m [35m❯[39m ]133;B[K[?1l>[?2004l

[A[0m[27m[24m[J[34m~[39m

et c et c et c.

Вывод полон управляющих кодов ANSI, \ r, \ n, et c. Тем не менее, мой терминал умеет делать все это довольно хорошо, и я думаю, что я должен быть в состоянии это сделать. Я нашел несколько библиотек, которые преобразуют коды ANSI в HTML, но я не думаю, что они справляются с любым другим побегом.

Я все еще чувствую, что кто-то, должно быть, решил эту проблему каким-то образом до меня. Есть ли простой способ сделать это?

Ответы [ 2 ]

1 голос
/ 08 апреля 2020

Есть много хороших ответов на старый пост SE В зависимости от вашей среды, вы можете найти другие пакеты для

1 голос
/ 08 апреля 2020

У меня есть букмарклет, использующий такую ​​библиотеку для Rancher.

Вы можете найти эту библиотеку внутри: -)

javascript:var oReq = new XMLHttpRequest();oReq.open("GET", "https://raw.githubusercontent.com/drudru/ansi_up/master/ansi_up.js", true);oReq.onloadend = function (oEvent) {new Function(oReq.responseText)();var el=document.getElementsByTagName("PRE")[0];el.innerHTML=(new AnsiUp).ansi_to_html(el.innerText);};oReq.send();document.body.style="color:white;background-color:black";undefined
...