-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathttyplayer.js
41 lines (32 loc) · 1.16 KB
/
ttyplayer.js
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
41
var util = require('util');
var fileParser = require('./file-parser');
var ttyrecDecoder = require('./ttyrec-decoder');
module.exports = function (file) {
fileParser(file, function (err, parsed) {
ttyrecDecoder(parsed, function (err, ttyrec) {
var printFrame = function (index) {
console.log('\u001B[2J\u001B[0;0f');
var out = [];
var frame = ttyrec.frames[index];
for (var i = 0, il = frame.length; i < il; i++) {
var row = frame[i];
for (var j = 0, jl = row.length; j < jl; j++) {
var char = row[j];
if (typeof char === "number") {
char = ttyrec.frames[char][i][j];
}
out.push(char.char);
}
out.push("\n");
}
console.log(out.join(''));
};
var index = 0;
var blugh = function () {
printFrame(index++);
setTimeout(blugh, 100);
};
blugh();
});
});
};