blob: c0cba55e68b3f79459c5267055df8d09a7405e86 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
# ansi2html terminal user feedback
* status: ongoing, in progress
* type: feature-request
* assigned: jgart
* priority: medium
* keywords: binderlite, notebooks, ansi2html
## Description
https://builds.sr.ht/~sircmpwn/job/610711
https://builds.sr.ht/~sircmpwn/job/611028
This issue proposes an alternative way to generate terminal output to the browser
from a process that does not dependent on js libraries but still looks great.
Drew Devault uses this method in builds.sr.ht, the continuous integration
system/app that is part of the SourceHut suite.
builds.sr.ht generates terminal output using jinja templates and a relatively
small python library called ansi2html. It is already packaged by guix upstream
as python-ansi2html (It could use an update).
https://github.com/pycontribs/ansi2html
https://pypi.org/project/ansi2html/
Here are two examples of it in action at builds.sr.ht:
https://builds.sr.ht/~sircmpwn/job/610711
https://builds.sr.ht/~sircmpwn/job/611028
And, the relevant places in builds.sr.ht code base:
https://git.sr.ht/~sircmpwn/builds.sr.ht/tree/master/item/buildsrht/templates/job.html#L117
https://git.sr.ht/~sircmpwn/builds.sr.ht/tree/master/item/buildsrht/blueprints/jobs.py#L333
I've added a diagram showing how it will integrate with binderlite.
|