-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathANSI.as
More file actions
59 lines (46 loc) · 2.3 KB
/
ANSI.as
File metadata and controls
59 lines (46 loc) · 2.3 KB
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
package org.sixsided.scripting.SJS {
public class ANSI {
public static var ESC:String = "\x1B["; //String.fromCharCode(27) + '[';
public static var NORMAL: String = "\x1B[1;0m"; // 0 NORMAL
public static var BLACK : String = "\x1B[1;30m"; // 30 BLACK
public static var RED : String = "\x1B[1;31m"; // 31 RED
public static var GREEN : String = "\x1B[1;32m"; // 32 GREEN
public static var YELLOW : String = "\x1B[1;33m"; // 33 YELLOW
public static var BLUE : String = "\x1B[1;34m"; // 34 BLUE
public static var MAGENTA: String = "\x1B[1;35m"; // 35 MAGENTA
public static var CYAN : String = "\x1B[1;36m"; // 36 CYAN
public static var WHITE : String = "\x1B[1;37m"; // 37 WHITE
public static var BG_BLACK : String = "\x1B[1;40m"; // 30 BLACK
public static var BG_RED : String = "\x1B[1;41m"; // 31 RED
public static var BG_GREEN : String = "\x1B[1;42m"; // 32 GREEN
public static var BG_YELLOW : String = "\x1B[1;43m"; // 33 YELLOW
public static var BG_BLUE : String = "\x1B[1;44m"; // 34 BLUE
public static var BG_MAGENTA: String = "\x1B[1;45m"; // 35 MAGENTA
public static var BG_CYAN : String = "\x1B[1;46m"; // 36 CYAN
public static var BG_WHITE : String = "\x1B[1;47m"; // 37 WHITE
public static var UNDERLINE : String = "\x1B[4m"; // 31 RED
public static var INVERT : String = "\x1B[7m"; // 31 RED
public static var SAVE_CURSOR : String = "\x1B[s"; // 31 RED
public static var RESTORE_CURSOR : String = "\x1B[u"; // 31 RED
public static function wrap(fmt:String, ...rest) : String {
return fmt + rest.join(' ') + ANSI.NORMAL;
/*return ANSI.SAVE_CURSOR + fmt + rest.join(' ') + ANSI.NORMAL + ANSI.RESTORE_CURSOR; // TBD */
}
public function back(n:int) : String {
// FIXME
return ANSI.ESC + n + 'D';
}
public static function error(s:String) : String {
return ANSI.wrap(ANSI.BG_RED + ANSI.WHITE, s);
}
public static function green(s:String) : String {
return ANSI.wrap(ANSI.GREEN, s);
}
public static function red(s:String) : String {
return ANSI.wrap(ANSI.RED, s);
}
public static function cyan(s:String) : String {
return ANSI.wrap(ANSI.CYAN, s);
}
}
}