summaryrefslogtreecommitdiff
path: root/src/miinaharava/tui/ansi.py
blob: c25ff6c118e5bdc7e301648190c9f13a5286f469 (plain)
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
""" ansi.py - ansi ohjauskomentoja. värit jne """

class Ansi:
    """ Ansi - Luokallinen staattisia metodeja ansi komennoille """

    BLACK = 0
    RED = 1
    GREEN = 2
    YELLOW = 3
    BLUE = 4
    MAGENTA = 5
    CYAN = 6
    WHITE = 7
    GRAY = 8
    BRIGHT_RED = 9
    BRIGHT_GREEN = 0xA
    BRIGHT_YELLOW = 0xB
    BRIGHT_BLUE = 0xC
    BRIGHT_MAGENTA = 0xD
    BRIGHT_CYAN = 0xE
    BRIGHT_WHITE = 0xF

    @staticmethod
    def color(color):
        """ asettaa tekstin värin """
        if color in range(16):
            print(end=f"\033[{'1;' if color//8 else ''}3{color%8}m")


    @staticmethod
    def bg(color):
        """ asettaa tekstin taustan värin"""
        if color in range(8):
            print(end=f"\033[4{color}m")


    @staticmethod
    def cup(lines):
        """ liikuttaa kursoria ylöspäin"""
        print(end=f"\033[{lines}F")


    @staticmethod
    def reset():
        """ resetoi tekstin värin ja muut attribuutit perusarvoille """
        print(end="\033[0m")