##// END OF EJS Templates
Fix ansispan() to ignore stray [0m
Mateusz Paprocki -
Show More
@@ -284,11 +284,19 b' define(['
284 284 function ansispan(str) {
285 285 // ansispan function adapted from github.com/mmalecki/ansispan (MIT License)
286 286 // regular ansi escapes (using the table above)
287 var is_open = false
287 288 return str.replace(/\033\[(0?[01]|22|39)?([;\d]+)?m/g, function(match, prefix, pattern) {
288 289 if (!pattern) {
289 290 // [(01|22|39|)m close spans
291 if (is_open) {
292 is_open = false;
290 293 return "</span>";
294 } else {
295 return "";
291 296 }
297 } else {
298 is_open = true;
299
292 300 // consume sequence of color escapes
293 301 var numbers = pattern.match(/\d+/g);
294 302 var attrs = {};
@@ -302,6 +310,7 b' define(['
302 310 span = span + " " + attr + '="' + attrs[attr] + '"';
303 311 }
304 312 return span + ">";
313 }
305 314 });
306 315 };
307 316
General Comments 0
You need to be logged in to leave comments. Login now