tools: Added color to git_log output.
- Added a simple parser for termcodes to termstr. - Added missing 'italic' conversion in termstr. - Simplified termcode for 'normal'.
This commit is contained in:
parent
ee064f00af
commit
f6cb615c97
16 changed files with 178 additions and 100 deletions
|
|
@ -11,33 +11,33 @@ import sys
|
|||
|
||||
|
||||
ESC = "\x1b"
|
||||
normal = ESC + "(B\x1b[m"
|
||||
bold = ESC + "[1m"
|
||||
italic = ESC + "[3m"
|
||||
standout = ESC + "[7m"
|
||||
underline = ESC + "[4m"
|
||||
normal = "[m"
|
||||
bold = "[1m"
|
||||
italic = "[3m"
|
||||
standout = "[7m"
|
||||
underline = "[4m"
|
||||
enter_fullscreen = ESC + "[?1049h"
|
||||
exit_fullscreen = ESC + "[?1049l"
|
||||
hide_cursor = ESC + "[?25l"
|
||||
normal_cursor = ESC + "[?25l\x1b[?25h"
|
||||
clear = ESC + "[H\x1b[2J"
|
||||
normal_cursor = ESC + "[?25l" + ESC + "[?25h"
|
||||
clear = ESC + "[H" + ESC + "[2J"
|
||||
save = ESC + "7"
|
||||
restore = ESC + "8"
|
||||
|
||||
|
||||
def color(color_number, is_foreground):
|
||||
"""Set the color of text."""
|
||||
return f"\x1b[{'38' if is_foreground else '48'};5;{color_number:d}m"
|
||||
return f"[{'38' if is_foreground else '48'};5;{color_number:d}m"
|
||||
|
||||
|
||||
def rgb_color(rgb, is_foreground):
|
||||
"""Set the color of text using an rgb tuple."""
|
||||
return f"\x1b[{'38' if is_foreground else '48'};2;" + "%i;%i;%im" % rgb
|
||||
return f"[{'38' if is_foreground else '48'};2;" + "%i;%i;%im" % rgb
|
||||
|
||||
|
||||
def move(x, y):
|
||||
"""Move the cursor to column x, row y."""
|
||||
return f"\x1b[{y + 1:d};{x + 1:d}H"
|
||||
return ESC + f"[{y + 1:d};{x + 1:d}H"
|
||||
|
||||
|
||||
@contextlib.contextmanager
|
||||
|
|
|
|||
|
|
@ -122,13 +122,13 @@ class CharStyle:
|
|||
|
||||
@_cache_first_result
|
||||
def code_for_term(self):
|
||||
fg_termcode = self.termcode_of_color(self.fg_color, True)
|
||||
bg_termcode = self.termcode_of_color(self.bg_color, False)
|
||||
bold_code = terminal.bold if self.is_bold else ""
|
||||
italic_code = terminal.italic if self.is_italic else ""
|
||||
underline_code = terminal.underline if self.is_underlined else ""
|
||||
return "".join([terminal.normal, fg_termcode, bg_termcode, bold_code,
|
||||
italic_code, underline_code])
|
||||
fg_termcode = terminal.ESC + self.termcode_of_color(self.fg_color, True)
|
||||
bg_termcode = terminal.ESC + self.termcode_of_color(self.bg_color, False)
|
||||
bold_code = (terminal.ESC + terminal.bold) if self.is_bold else ""
|
||||
italic_code = (terminal.ESC + terminal.italic) if self.is_italic else ""
|
||||
underline_code = (terminal.ESC + terminal.underline) if self.is_underlined else ""
|
||||
return "".join([terminal.ESC, terminal.normal, fg_termcode, bg_termcode,
|
||||
bold_code, italic_code, underline_code])
|
||||
|
||||
def as_html(self):
|
||||
bold_code = "font-weight:bold; " if self.is_bold else ""
|
||||
|
|
@ -158,6 +158,45 @@ class TermStr(collections.UserString):
|
|||
self.style = (style if isinstance(style, tuple)
|
||||
else (style,) * len(data))
|
||||
|
||||
@classmethod
|
||||
def from_term(cls, data):
|
||||
parts = data.split(terminal.ESC)
|
||||
fg_color, bg_color = None, None
|
||||
is_bold, is_italic, is_underlined = False, False, False
|
||||
result_parts = []
|
||||
for part in parts:
|
||||
try:
|
||||
end_index = part.index("m")
|
||||
except ValueError:
|
||||
end_index = 0
|
||||
if part[:2] == "[m": # Normal
|
||||
is_bold, is_italic, is_underlined = False, False, False
|
||||
fg_color, bg_color = None, None
|
||||
elif part[:3] == terminal.bold:
|
||||
is_bold = True
|
||||
elif part[:3] == terminal.italic:
|
||||
is_italic = True
|
||||
elif part[:3] == terminal.underline:
|
||||
is_underlined = True
|
||||
elif end_index == 3 and part.startswith("[3"): # 8 foreground color
|
||||
fg_color = int(part[2])
|
||||
elif end_index == 3 and part.startswith("[4"): # 8 background color
|
||||
bg_color = int(part[2])
|
||||
elif part[:6] == "[38;5;": # simple foreground color
|
||||
fg_color = int(part[6:end_index])
|
||||
elif part[:6] == "[48;5;": # simple background color
|
||||
bg_color = int(part[6:end_index])
|
||||
elif part[:6] == "[38;2;": # rgb foreground color
|
||||
fg_color = tuple(int(component)
|
||||
for component in part[6:end_index].split(";"))
|
||||
elif part[:6] == "[48;2;": # rgb background color
|
||||
bg_color = tuple(int(component)
|
||||
for component in part[6:end_index].split(";"))
|
||||
result_parts.append(cls(part[end_index+1:],
|
||||
CharStyle(fg_color, bg_color, is_bold,
|
||||
is_italic, is_underlined)))
|
||||
return cls("").join(result_parts)
|
||||
|
||||
def __eq__(self, other):
|
||||
return (self is other or
|
||||
(isinstance(other, self.__class__) and
|
||||
|
|
@ -189,7 +228,7 @@ class TermStr(collections.UserString):
|
|||
return "".join(_join_lists(
|
||||
[style.code_for_term(), str_]
|
||||
for style, str_, position in self._partition_style()) +
|
||||
[terminal.normal])
|
||||
[terminal.ESC + terminal.normal])
|
||||
|
||||
def __repr__(self):
|
||||
return f"<TermStr: {self.data!r}>"
|
||||
|
|
@ -282,24 +321,35 @@ class TermStr(collections.UserString):
|
|||
def bold(self):
|
||||
def make_bold(style):
|
||||
return CharStyle(style.fg_color, style.bg_color, is_bold=True,
|
||||
is_italic=style.is_italic,
|
||||
is_underlined=style.is_underlined)
|
||||
return self.transform_style(make_bold)
|
||||
|
||||
def underline(self):
|
||||
def make_underlined(style):
|
||||
return CharStyle(style.fg_color, style.bg_color,
|
||||
is_bold=style.is_bold, is_underlined=True)
|
||||
is_bold=style.is_bold, is_italic=style.is_italic,
|
||||
is_underlined=True)
|
||||
return self.transform_style(make_underlined)
|
||||
|
||||
def italic(self):
|
||||
def make_italic(style):
|
||||
return CharStyle(style.fg_color, style.bg_color,
|
||||
is_bold=style.is_bold, is_italic=True,
|
||||
is_underlined=style.is_underlined)
|
||||
return self.transform_style(make_italic)
|
||||
|
||||
def fg_color(self, fg_color):
|
||||
def set_fgcolor(style):
|
||||
return CharStyle(fg_color, style.bg_color, is_bold=style.is_bold,
|
||||
is_italic=style.is_italic,
|
||||
is_underlined=style.is_underlined)
|
||||
return self.transform_style(set_fgcolor)
|
||||
|
||||
def bg_color(self, bg_color):
|
||||
def set_bgcolor(style):
|
||||
return CharStyle(style.fg_color, bg_color, is_bold=style.is_bold,
|
||||
is_italic=style.is_italic,
|
||||
is_underlined=style.is_underlined)
|
||||
return self.transform_style(set_bgcolor)
|
||||
|
||||
|
|
|
|||
|
|
@ -416,6 +416,18 @@ def perltidy(path):
|
|||
# perl6_syntax.deps={"rakudo"}
|
||||
|
||||
|
||||
@deps(deps={"git"}, url="https://git-scm.com/docs/git-log",
|
||||
executables={"git"})
|
||||
def git_log(path):
|
||||
process = subprocess.run(["git", "log", "--find-renames", "--follow",
|
||||
"--stat", "--color", path], text=True,
|
||||
capture_output=True)
|
||||
status = (Status.normal if process.returncode == 0
|
||||
else Status.not_applicable)
|
||||
return status, fill3.Fixed(termstr.TermStr.from_term(
|
||||
process.stdout + process.stderr). splitlines())
|
||||
|
||||
|
||||
@deps(deps={"tidy"}, url="tidy", executables={"tidy"})
|
||||
def html_syntax(path):
|
||||
# Maybe only show errors
|
||||
|
|
|
|||
|
|
@ -85,13 +85,6 @@ tools_for_extensions = [
|
|||
success_status = "normal"
|
||||
error_status = "not_applicable"
|
||||
|
||||
[git_log]
|
||||
dependencies = ["git"]
|
||||
url = "https://git-scm.com/docs/git-log"
|
||||
command = "git log --find-renames --follow --stat"
|
||||
success_status = "normal"
|
||||
error_status = "not_applicable"
|
||||
|
||||
[objdump_headers]
|
||||
dependencies = ["binutils"]
|
||||
url = "https://en.wikipedia.org/wiki/Objdump"
|
||||
|
|
|
|||
|
|
@ -1,2 +1,2 @@
|
|||
(B[m[38;2;106;184;37m[48;2;32;32;32m[1mdef(B[m[38;2;208;208;208m[48;2;32;32;32m (B[m[38;2;68;127;207m[48;2;32;32;32mhi(B[m[38;2;208;208;208m[48;2;32;32;32m():(B[m[38;2;255;255;255m[48;2;32;32;32m (B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;208;208;208m[48;2;32;32;32m (B[m[38;2;106;184;37m[48;2;32;32;32m[1mprint(B[m[38;2;208;208;208m[48;2;32;32;32m((B[m[38;2;237;157;19m[48;2;32;32;32m"hi"(B[m[38;2;208;208;208m[48;2;32;32;32m)(B[m
|
||||
[m[38;2;106;184;37m[48;2;32;32;32m[1mdef[m[38;2;208;208;208m[48;2;32;32;32m [m[38;2;68;127;207m[48;2;32;32;32mhi[m[38;2;208;208;208m[48;2;32;32;32m():[m[38;2;255;255;255m[48;2;32;32;32m [m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;208;208;208m[48;2;32;32;32m [m[38;2;106;184;37m[48;2;32;32;32m[1mprint[m[38;2;208;208;208m[48;2;32;32;32m([m[38;2;237;157;19m[48;2;32;32;32m"hi"[m[38;2;208;208;208m[48;2;32;32;32m)[m
|
||||
|
|
@ -1,15 +1,15 @@
|
|||
(B[m[38;2;0;135;189m[48;2;0;0;0msize:(B[m[38;2;255;255;255m[48;2;0;0;0m 12.0 B(B[m[38;2;100;100;100m[48;2;0;0;0m (12 bytes)(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;135;189m[48;2;0;0;0mpermissions:(B[m[38;2;255;255;255m[48;2;0;0;0m ?rwxr-xr-x(B[m[38;2;100;100;100m[48;2;0;0;0m (755)(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;135;189m[48;2;0;0;0msize:[m[38;2;255;255;255m[48;2;0;0;0m 12.0 B[m[38;2;100;100;100m[48;2;0;0;0m (12 bytes)[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;135;189m[48;2;0;0;0mpermissions:[m[38;2;255;255;255m[48;2;0;0;0m ?rwxr-xr-x[m[38;2;100;100;100m[48;2;0;0;0m (755)[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
|
||||
(B[m[38;2;0;135;189m[48;2;0;0;0mmodified time:(B[m[38;2;255;255;255m[48;2;0;0;0m Sun Jan 31 23:14:05 2016(B[m[38;2;100;100;100m[48;2;0;0;0m (1454282045 secs)(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;135;189m[48;2;0;0;0mcreation time:(B[m[38;2;255;255;255m[48;2;0;0;0m Sun Jan 31 23:14:05 2016(B[m[38;2;100;100;100m[48;2;0;0;0m (1454282045 secs)(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;135;189m[48;2;0;0;0maccess time:(B[m[38;2;255;255;255m[48;2;0;0;0m Sun Jan 31 23:14:07 2016(B[m[38;2;100;100;100m[48;2;0;0;0m (1454282047 secs)(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;135;189m[48;2;0;0;0mmodified time:[m[38;2;255;255;255m[48;2;0;0;0m Sun Jan 31 23:14:05 2016[m[38;2;100;100;100m[48;2;0;0;0m (1454282045 secs)[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;135;189m[48;2;0;0;0mcreation time:[m[38;2;255;255;255m[48;2;0;0;0m Sun Jan 31 23:14:05 2016[m[38;2;100;100;100m[48;2;0;0;0m (1454282045 secs)[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;135;189m[48;2;0;0;0maccess time:[m[38;2;255;255;255m[48;2;0;0;0m Sun Jan 31 23:14:07 2016[m[38;2;100;100;100m[48;2;0;0;0m (1454282047 secs)[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
|
||||
(B[m[38;2;0;135;189m[48;2;0;0;0mowner:(B[m[38;2;255;255;255m[48;2;0;0;0m foo(B[m[38;2;100;100;100m[48;2;0;0;0m (1111 uid)(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;135;189m[48;2;0;0;0mgroup:(B[m[38;2;255;255;255m[48;2;0;0;0m foo(B[m[38;2;100;100;100m[48;2;0;0;0m (1111 gid)(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;135;189m[48;2;0;0;0mowner:[m[38;2;255;255;255m[48;2;0;0;0m foo[m[38;2;100;100;100m[48;2;0;0;0m (1111 uid)[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;135;189m[48;2;0;0;0mgroup:[m[38;2;255;255;255m[48;2;0;0;0m foo[m[38;2;100;100;100m[48;2;0;0;0m (1111 gid)[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
|
||||
(B[m[38;2;0;135;189m[48;2;0;0;0mhardlinks:(B[m[38;2;255;255;255m[48;2;0;0;0m 2
|
||||
(B[m[38;2;0;135;189m[48;2;0;0;0msymlink:(B[m[38;2;255;255;255m[48;2;0;0;0m no
|
||||
[m[38;2;0;135;189m[48;2;0;0;0mhardlinks:[m[38;2;255;255;255m[48;2;0;0;0m 2
|
||||
[m[38;2;0;135;189m[48;2;0;0;0msymlink:[m[38;2;255;255;255m[48;2;0;0;0m no
|
||||
|
||||
(B[m[38;2;0;135;189m[48;2;0;0;0mmime type:(B[m[38;2;255;255;255m[48;2;0;0;0m text/x-python; charset=us-ascii
|
||||
(B[m[38;2;0;135;189m[48;2;0;0;0mfile type:(B[m[38;2;255;255;255m[48;2;0;0;0m Python script, ASCII text executable (B[m
|
||||
[m[38;2;0;135;189m[48;2;0;0;0mmime type:[m[38;2;255;255;255m[48;2;0;0;0m text/x-python; charset=us-ascii
|
||||
[m[38;2;0;135;189m[48;2;0;0;0mfile type:[m[38;2;255;255;255m[48;2;0;0;0m Python script, ASCII text executable [m
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀▀(B[m[38;2;0;0;0m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀(B[m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;255;255;255m▀▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀[m[38;2;254;254;254m[48;2;255;255;255m▀▀[m[38;2;0;0;0m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀[m
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀▀(B[m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀▀[m
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
(B[m[38;2;0;0;0m[48;2;7;7;7m▀(B[m[38;2;7;7;7m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;1;1;1m[48;2;0;0;0m▀(B[m[38;2;1;1;1m[48;2;1;1;1m▀(B[m[38;2;1;1;1m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;251;251;251m▀(B[m[38;2;2;2;2m[48;2;253;253;253m▀(B[m[38;2;1;1;1m[48;2;254;254;254m▀(B[m[38;2;1;1;1m[48;2;255;255;255m▀(B[m[38;2;1;1;1m[48;2;0;0;0m▀▀(B[m[38;2;3;3;3m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;1;1;1m▀(B[m[38;2;0;0;0m[48;2;2;2;2m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;4;4;4m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;2;2;2m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;251;251;251m▀(B[m[38;2;255;255;255m[48;2;249;249;249m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀(B[m[38;2;247;247;247m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;249;249;249m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;1;1;1m[48;2;249;249;249m▀(B[m[38;2;0;0;0m[48;2;1;1;1m▀(B[m[38;2;2;2;2m[48;2;0;0;0m▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;2;2;2m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;2;2;2m▀(B[m[38;2;253;253;253m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;252;252;252m▀(B[m[38;2;248;248;248m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;247;247;247m▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;254;254;254m[48;2;253;253;253m▀(B[m[38;2;253;253;253m[48;2;255;255;255m▀(B[m[38;2;252;252;252m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;251;251;251m▀(B[m[38;2;255;255;255m[48;2;248;248;248m▀(B[m[38;2;1;1;1m[48;2;255;255;255m▀(B[m[38;2;2;2;2m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;4;4;4m[48;2;0;0;0m▀(B[m[38;2;253;253;253m[48;2;253;253;253m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;253;253;253m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀(B[m[38;2;251;251;251m[48;2;255;255;255m▀(B[m[38;2;253;253;253m[48;2;255;255;255m▀(B[m[38;2;252;252;252m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;2;2;2m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;4;4;4m[48;2;0;0;0m▀(B[m[38;2;249;249;249m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;251;251;251m▀(B[m[38;2;252;252;252m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;253;253;253m[48;2;253;253;253m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀(B[m[38;2;250;250;250m[48;2;253;253;253m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;248;248;248m▀(B[m[38;2;252;252;252m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;252;252;252m▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;1;1;1m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;2;2;2m[48;2;1;1;1m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;253;253;253m[48;2;255;255;255m▀(B[m[38;2;250;250;250m[48;2;253;253;253m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀(B[m[38;2;249;249;249m[48;2;253;253;253m▀(B[m[38;2;252;252;252m[48;2;255;255;255m▀(B[m[38;2;253;253;253m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;246;246;246m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;253;253;253m[48;2;0;0;0m▀(B[m[38;2;2;2;2m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;1;1;1m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;6;6;6m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;252;252;252m▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;253;253;253m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;252;252;252m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀(B[m[38;2;253;253;253m[48;2;255;255;255m▀(B[m[38;2;249;249;249m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;252;252;252m▀(B[m[38;2;251;251;251m[48;2;1;1;1m▀(B[m[38;2;7;7;7m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;2;2;2m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;5;5;5m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;2;2;2m[48;2;1;1;1m▀(B[m[38;2;0;0;0m[48;2;2;2;2m▀(B[m[38;2;254;254;254m[48;2;1;1;1m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;248;248;248m[48;2;4;4;4m▀(B[m[38;2;252;252;252m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;251;251;251m[48;2;1;1;1m▀(B[m[38;2;0;0;0m[48;2;1;1;1m▀(B[m[38;2;1;1;1m[48;2;1;1;1m▀(B[m[38;2;0;0;0m[48;2;2;2;2m▀(B[m[38;2;1;1;1m[48;2;0;0;0m▀(B[m[38;2;3;3;3m[48;2;0;0;0m▀(B[m
|
||||
[m[38;2;0;0;0m[48;2;7;7;7m▀[m[38;2;7;7;7m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;1;1;1m[48;2;0;0;0m▀[m[38;2;1;1;1m[48;2;1;1;1m▀[m[38;2;1;1;1m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;251;251;251m▀[m[38;2;2;2;2m[48;2;253;253;253m▀[m[38;2;1;1;1m[48;2;254;254;254m▀[m[38;2;1;1;1m[48;2;255;255;255m▀[m[38;2;1;1;1m[48;2;0;0;0m▀▀[m[38;2;3;3;3m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;1;1;1m▀[m[38;2;0;0;0m[48;2;2;2;2m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;4;4;4m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;2;2;2m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;251;251;251m▀[m[38;2;255;255;255m[48;2;249;249;249m▀[m[38;2;255;255;255m[48;2;255;255;255m▀[m[38;2;247;247;247m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;249;249;249m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;1;1;1m[48;2;249;249;249m▀[m[38;2;0;0;0m[48;2;1;1;1m▀[m[38;2;2;2;2m[48;2;0;0;0m▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;2;2;2m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;2;2;2m▀[m[38;2;253;253;253m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;252;252;252m▀[m[38;2;248;248;248m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;247;247;247m▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;254;254;254m[48;2;253;253;253m▀[m[38;2;253;253;253m[48;2;255;255;255m▀[m[38;2;252;252;252m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;251;251;251m▀[m[38;2;255;255;255m[48;2;248;248;248m▀[m[38;2;1;1;1m[48;2;255;255;255m▀[m[38;2;2;2;2m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;4;4;4m[48;2;0;0;0m▀[m[38;2;253;253;253m[48;2;253;253;253m▀[m[38;2;255;255;255m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;255;255;255m▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;253;253;253m▀[m[38;2;255;255;255m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀[m[38;2;251;251;251m[48;2;255;255;255m▀[m[38;2;253;253;253m[48;2;255;255;255m▀[m[38;2;252;252;252m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;2;2;2m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;4;4;4m[48;2;0;0;0m▀[m[38;2;249;249;249m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;251;251;251m▀[m[38;2;252;252;252m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;253;253;253m[48;2;253;253;253m▀[m[38;2;255;255;255m[48;2;255;255;255m▀[m[38;2;250;250;250m[48;2;253;253;253m▀[m[38;2;255;255;255m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;248;248;248m▀[m[38;2;252;252;252m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;252;252;252m▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;1;1;1m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;2;2;2m[48;2;1;1;1m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;253;253;253m[48;2;255;255;255m▀[m[38;2;250;250;250m[48;2;253;253;253m▀[m[38;2;255;255;255m[48;2;255;255;255m▀[m[38;2;249;249;249m[48;2;253;253;253m▀[m[38;2;252;252;252m[48;2;255;255;255m▀[m[38;2;253;253;253m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;246;246;246m▀[m[38;2;255;255;255m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;255;255;255m▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;253;253;253m[48;2;0;0;0m▀[m[38;2;2;2;2m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;1;1;1m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;6;6;6m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;252;252;252m▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;253;253;253m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;252;252;252m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;255;255;255m▀[m[38;2;253;253;253m[48;2;255;255;255m▀[m[38;2;249;249;249m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;252;252;252m▀[m[38;2;251;251;251m[48;2;1;1;1m▀[m[38;2;7;7;7m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;2;2;2m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;5;5;5m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;2;2;2m[48;2;1;1;1m▀[m[38;2;0;0;0m[48;2;2;2;2m▀[m[38;2;254;254;254m[48;2;1;1;1m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;248;248;248m[48;2;4;4;4m▀[m[38;2;252;252;252m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;251;251;251m[48;2;1;1;1m▀[m[38;2;0;0;0m[48;2;1;1;1m▀[m[38;2;1;1;1m[48;2;1;1;1m▀[m[38;2;0;0;0m[48;2;2;2;2m▀[m[38;2;1;1;1m[48;2;0;0;0m▀[m[38;2;3;3;3m[48;2;0;0;0m▀[m
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀▀(B[m[38;2;0;0;0m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀(B[m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;255;255;255m▀▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀[m[38;2;254;254;254m[48;2;255;255;255m▀▀[m[38;2;0;0;0m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀[m
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀▀(B[m[38;2;0;0;0m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀(B[m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;255;255;255m▀▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀[m[38;2;254;254;254m[48;2;255;255;255m▀▀[m[38;2;0;0;0m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀[m
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀▀(B[m[38;2;0;0;0m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀(B[m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;255;255;255m▀▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀[m[38;2;254;254;254m[48;2;255;255;255m▀▀[m[38;2;0;0;0m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀[m
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀▀(B[m[38;2;0;0;0m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;255;255;255m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;254;254;254m▀(B[m[38;2;254;254;254m[48;2;255;255;255m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀(B[m[38;2;254;254;254m[48;2;0;0;0m▀(B[m[38;2;255;255;255m[48;2;0;0;0m▀▀▀▀(B[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀(B[m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;254;254;254m[48;2;255;255;255m▀▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀[m[38;2;254;254;254m[48;2;255;255;255m▀▀[m[38;2;0;0;0m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;255;255;255m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;255;255;255m[48;2;255;255;255m▀▀▀▀▀▀[m[38;2;255;255;255m[48;2;254;254;254m▀[m[38;2;254;254;254m[48;2;255;255;255m▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀[m[38;2;255;255;255m[48;2;0;0;0m▀[m[38;2;254;254;254m[48;2;0;0;0m▀[m[38;2;255;255;255m[48;2;0;0;0m▀▀▀▀[m[38;2;0;0;0m[48;2;0;0;0m▀▀▀▀▀[m
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
|
||||
(B[m[38;2;0;159;107m[48;2;0;0;0m> def hi():(B[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
(B[m[38;2;0;159;107m[48;2;0;0;0m> print("hi")(B[m
|
||||
[m[38;2;0;159;107m[48;2;0;0;0m> def hi():[m[38;2;255;255;255m[48;2;0;0;0m
|
||||
[m[38;2;0;159;107m[48;2;0;0;0m> print("hi")[m
|
||||
|
|
@ -1 +1 @@
|
|||
(B[m[38;2;106;184;37m[48;2;32;32;32m[1mdef(B[m[38;2;208;208;208m[48;2;32;32;32m (B[m[38;2;68;127;207m[48;2;32;32;32mhi(B[m[38;2;208;208;208m[48;2;32;32;32m():(B[m
|
||||
[m[38;2;106;184;37m[48;2;32;32;32m[1mdef[m[38;2;208;208;208m[48;2;32;32;32m [m[38;2;68;127;207m[48;2;32;32;32mhi[m[38;2;208;208;208m[48;2;32;32;32m():[m
|
||||
|
|
@ -9,6 +9,7 @@ import unittest
|
|||
|
||||
os.environ["TERM"] = "xterm-256color"
|
||||
|
||||
import eris.terminal
|
||||
from eris.termstr import TermStr, CharStyle
|
||||
import eris.termstr as termstr
|
||||
|
||||
|
|
@ -55,7 +56,7 @@ class CharStyleTests(unittest.TestCase):
|
|||
|
||||
def test_code_for_term(self):
|
||||
self.assertEqual(self.style.code_for_term(),
|
||||
"\x1b(B\x1b[m\x1b[38;2;255;255;255m\x1b[48;2;0;0;0m")
|
||||
"\x1b[m\x1b[38;2;255;255;255m\x1b[48;2;0;0;0m")
|
||||
|
||||
|
||||
class TermStrTests(unittest.TestCase):
|
||||
|
|
@ -122,6 +123,28 @@ class TermStrTests(unittest.TestCase):
|
|||
self.assertEqual(foo_bold.rjust(0), foo_bold)
|
||||
self.assertEqual(foo_bold.rjust(5), TermStr(" ") + foo_bold)
|
||||
|
||||
def test_from_term(self):
|
||||
def test_round_trip(term_str):
|
||||
self.assertEqual(TermStr.from_term(str(term_str)), term_str)
|
||||
|
||||
test_round_trip(TermStr("foo"))
|
||||
test_round_trip(TermStr("foo").bold())
|
||||
test_round_trip(TermStr("foo").underline())
|
||||
test_round_trip(TermStr("foo").italic())
|
||||
test_round_trip(termstr.TermStr("foo").fg_color(termstr.Color.red))
|
||||
test_round_trip(termstr.TermStr("foo").fg_color(termstr.Color.red).\
|
||||
bg_color(termstr.Color.green))
|
||||
test_round_trip(termstr.TermStr("foo").fg_color(1))
|
||||
test_round_trip(termstr.TermStr("foo").bg_color(10))
|
||||
self.assertEqual(TermStr.from_term(eris.terminal.ESC + "[33mfoo"),
|
||||
termstr.TermStr("foo").fg_color(3))
|
||||
self.assertEqual(TermStr.from_term(eris.terminal.ESC + "[45mfoo"),
|
||||
termstr.TermStr("foo").bg_color(5))
|
||||
self.assertEqual(TermStr.from_term(eris.terminal.ESC + "[45mfoo" +
|
||||
eris.terminal.ESC + "[mbar"),
|
||||
termstr.TermStr("foo").bg_color(5) +
|
||||
termstr.TermStr("bar"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue