From d317e8f6df0e0e16445db606da1d683a6b35f531 Mon Sep 17 00:00:00 2001 From: Alexander Neonxp Kiryukhin Date: Tue, 30 Dec 2025 19:33:39 +0300 Subject: =?UTF-8?q?=D0=BD=D0=B0=D1=87=D0=B0=D0=BB=D1=8C=D0=BD=D1=8B=D0=B9?= =?UTF-8?q?=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B8=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/server/escapes.go | 49 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 internal/server/escapes.go (limited to 'internal/server/escapes.go') diff --git a/internal/server/escapes.go b/internal/server/escapes.go new file mode 100644 index 0000000..f495345 --- /dev/null +++ b/internal/server/escapes.go @@ -0,0 +1,49 @@ +package server + +const ( + keyEscape = 27 +) + +var escapeCodes = map[color][]byte{ + Black: {keyEscape, '[', '3', '0', 'm'}, + Red: {keyEscape, '[', '3', '1', 'm'}, + Green: {keyEscape, '[', '3', '2', 'm'}, + Yellow: {keyEscape, '[', '3', '3', 'm'}, + Blue: {keyEscape, '[', '3', '4', 'm'}, + Magenta: {keyEscape, '[', '3', '5', 'm'}, + Cyan: {keyEscape, '[', '3', '6', 'm'}, + White: {keyEscape, '[', '3', '7', 'm'}, + Reset: {keyEscape, '[', '0', 'm'}, + Bold: {keyEscape, '[', '1', 'm'}, + Faint: {keyEscape, '[', '2', 'm'}, + Italic: {keyEscape, '[', '3', 'm'}, + Underline: {keyEscape, '[', '4', 'm'}, + Blink: {keyEscape, '[', '5', 'm'}, + Rapid: {keyEscape, '[', '6', 'm'}, + Reverse: {keyEscape, '[', '7', 'm'}, + Conceal: {keyEscape, '[', '8', 'm'}, + Strike: {keyEscape, '[', '9', 'm'}, +} + +type color int + +const ( + Black color = iota + Red + Green + Yellow + Blue + Magenta + Cyan + White + Reset + Bold + Faint + Italic + Underline + Blink + Rapid + Reverse + Conceal + Strike +) -- cgit v1.2.3