1 // =================================
 2 // Copyright (c) 2025 Seppo Laakko
 3 // Distributed under the MIT license
 4 // =================================
 5 
 6 namespace System
 7 {
 8     public static class Color
 9     {
10         public enum Constant : sbyte
11         {
12             black, darkRed, darkGreen, darkYellow, darkBlue, darkGray, darkCyan, gray, red, green, yellow, blue, magenta, cyan, white
13         }
14         static Color() : reset("\U0000001B[0m")
15         {
16         }
17         public static string reset;
18     }
19 
20     public static class TextColor
21     {
22         static TextColor() : 
23             black("\U0000001B[30m"), 
24             darkRed("\U0000001B[31m"), 
25             darkGreen("\U0000001B[32m"), 
26             darkYellow("\U0000001B[33m"), 
27             darkBlue("\U0000001B[34m"), 
28             darkMagenta("\U0000001B[35m"), 
29             darkCyan("\U0000001B[36m"), 
30             gray("\U0000001B[37m"), 
31             red("\U0000001B[91m"), 
32             green("\U0000001B[92m"), 
33             yellow("\U0000001B[93m"), 
34             blue("\U0000001B[94m"), 
35             magenta("\U0000001B[95m"), 
36             cyan("\U0000001B[96m"), 
37             white("\U0000001B[97m")
38         {
39         }
40         public static string black;
41         public static string darkRed;
42         public static string darkGreen;
43         public static string darkYellow;
44         public static string darkBlue;
45         public static string darkMagenta;
46         public static string darkCyan;
47         public static string gray;
48         public static string red;
49         public static string green;
50         public static string yellow;
51         public static string blue;
52         public static string magenta;
53         public static string cyan;
54         public static string white;
55     }
56 
57     public static class BackColor
58     {
59         static BackColor() : 
60             black("\U0000001B[40m"), 
61             darkRed("\U0000001B[41m"), 
62             darkGreen("\U0000001B[42m"), 
63             darkYellow("\U0000001B[43m"), 
64             darkBlue("\U0000001B[44m"), 
65             darkMagenta("\U0000001B[45m"), 
66             darkCyan("\U0000001B[46m"), 
67             gray("\U0000001B[47m"), 
68             red("\U0000001B[101m"), 
69             green("\U0000001B[102m"), 
70             yellow("\U0000001B[103m"), 
71             blue("\U0000001B[104m"), 
72             magenta("\U0000001B[105m"), 
73             cyan("\U0000001B[106m"), 
74             white("\U0000001B[107m")
75         {
76         }
77         public static string black;
78         public static string darkRed;
79         public static string darkGreen;
80         public static string darkYellow;
81         public static string darkBlue;
82         public static string darkMagenta;
83         public static string darkCyan;
84         public static string gray;
85         public static string red;
86         public static string green;
87         public static string yellow;
88         public static string blue;
89         public static string magenta;
90         public static string cyan;
91         public static string white;
92     }