-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsysmsg.py
More file actions
99 lines (87 loc) · 4.2 KB
/
sysmsg.py
File metadata and controls
99 lines (87 loc) · 4.2 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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#!/usr/bin/python3
# (c)2023 Frank Kosanke <[email protected]>
# This Script writes console messages with a big font
# build by utf8 special characters
#
# utf8 character table
# KEY DESCR HEX
# ALT + 219 FULL BLOCK 2588
# ALT + 220 LOWER HALF BLOCK 2584
# ALT + 221 LEFT HALF BLOCK 258C
# ALT + 222 RIGHT HALF BLOCK 2590
# ALT + 223 UPPER HALF BLOCK 2580
import sys
# letter definition
# each letter has 6 lines and different width between 2 and 6 columns
abc = {
'a': ['\u2584\u2580\u2580\u2584 ', '\u2588\u2580\u2580\u2588 ', '\u2580 \u2580 '],
'b': ['\u2588\u2580\u2580\u2584 ', '\u2588\u2580\u2580\u2584 ', '\u2580\u2580\u2580 '],
'c': ['\u2584\u2580\u2580\u2580 ', '\u2588 ', ' \u2580\u2580\u2580 '],
'd': ['\u2588\u2580\u2580\u2584 ', '\u2588 \u2588 ', '\u2580\u2580\u2580 '],
'e': ['\u2588\u2580\u2580\u2580 ', '\u2588\u2580\u2580 ', '\u2580\u2580\u2580\u2580 '],
'f': ['\u2588\u2580\u2580\u2580 ', '\u2588\u2580\u2580 ', '\u2580 '],
'g': ['\u2584\u2580\u2580\u2580 ', '\u2588 \u2580\u2588 ', ' \u2580\u2580\u2580 '],
'h': ['\u2588 \u2588 ', '\u2588\u2580\u2580\u2588 ', '\u2580 \u2580 '],
'i': ['\u2580\u2588\u2580 ', ' \u2588 ', '\u2580\u2580\u2580 '],
'j': [' \u2588 ', '\u2584 \u2588 ', ' \u2580\u2580 '],
'k': ['\u2588 \u2584\u2580 ', '\u2588\u2580\u2584 ', '\u2580 \u2580 '],
'l': ['\u2588 ', '\u2588 ', '\u2580\u2580\u2580\u2580 '],
'm': ['\u2588\u2584 \u2584\u2588 ', '\u2588 \u2580 \u2588 ', '\u2580 \u2580 '],
'n': ['\u2588\u2584 \u2588 ', '\u2588 \u2580\u2584\u2588 ', '\u2580 \u2580 '],
'o': ['\u2584\u2580\u2580\u2584 ', '\u2588 \u2588 ', ' \u2580\u2580 '],
'p': ['\u2588\u2580\u2580\u2584 ', '\u2588\u2580\u2580 ', '\u2580 '],
'q': ['\u2584\u2580\u2580\u2584 ', '\u2588 \u2584\u2580 ', ' \u2580 \u2580 '],
'r': ['\u2588\u2580\u2580\u2584 ', '\u2588\u2580\u2580\u2584 ', '\u2580 \u2580 '],
's': ['\u2584\u2580\u2580\u2580 ', ' \u2580\u2580\u2584 ', '\u2580\u2580\u2580 '],
't': ['\u2580\u2588\u2580 ', ' \u2588 ', ' \u2580 '],
'u': ['\u2588 \u2588 ', '\u2588 \u2588 ', ' \u2580\u2580 '],
'v': ['\u2588 \u2588 ', ' \u2588 \u2588 ', ' \u2580 '],
'w': ['\u2588 \u2588 ', '\u2588\u2584\u2580\u2584\u2588 ', '\u2580 \u2580 '],
'x': ['\u2588 \u2588 ', '\u2584\u2580\u2580\u2584 ', '\u2580 \u2580 '],
'y': ['\u2588 \u2588 ', ' \u2588 ', ' \u2580 '],
'z': ['\u2580\u2580\u2580\u2588 ', '\u2584\u2580\u2580 ', '\u2580\u2580\u2580\u2580 '],
':': [' ', '\u2580 ', '\u2580 '],
'.': [' ', ' ', '\u2580 '],
';': [' ', ' \u2580 ', '\u2584\u2580 '],
',': [' ', ' ', '\u2584\u2580 '],
'-': [' ', '\u2580\u2580\u2580 ', ' '],
'_': [' ', ' ', '\u2580\u2580\u2580\u2580'],
' ': [' ', ' ', ' '],
'/': [' \u2588 ', ' \u2588 ', '\u2588 '],
'\\': ['\u2588 ', ' \u2588 ', ' \u2588 '],
'(': [' \u2584\u2580 ', '\u2588 ', ' \u2580\u2584 '],
')': ['\u2580\u2584 ', ' \u2588 ', '\u2584\u2580 '],
'[': ['\u2588\u2580\u2580 ', '\u2588 ', '\u2588\u2584\u2584 '],
']': ['\u2580\u2580\u2588 ', ' \u2588 ', '\u2584\u2584\u2588 '],
'0': ['\u2584\u2580\u2580\u2584 ', '\u2588\u2584\u2580\u2588 ', ' \u2580\u2580 '],
'1': [' \u2584\u2588 ', ' \u2588 ', ' \u2580\u2580\u2580 '],
'2': ['\u2580\u2580\u2580\u2584 ', '\u2584\u2580\u2580 ', '\u2580\u2580\u2580\u2580 '],
'3': ['\u2580\u2580\u2580\u2584 ', ' \u2580\u2580\u2584 ', '\u2580\u2580\u2580 '],
'4': ['\u2588 \u2584 ', '\u2580\u2580\u2588\u2580 ', ' \u2580 '],
'5': ['\u2588\u2580\u2580\u2580 ', '\u2580\u2580\u2580\u2584 ', '\u2580\u2580\u2580 '],
'6': ['\u2584\u2580\u2580 ', '\u2588\u2580\u2580\u2584 ', ' \u2580\u2580 '],
'7': ['\u2580\u2580\u2580\u2588 ', ' \u2584\u2580 ', ' \u2580 '],
'8': ['\u2584\u2580\u2580\u2584 ', '\u2584\u2580\u2580\u2584 ', ' \u2580\u2580 '],
'9': ['\u2584\u2580\u2580\u2584 ', ' \u2580\u2580\u2588 ', ' \u2580\u2580 ']
}
# read cmd parameter
if len(sys.argv) > 1:
message = str(sys.argv[1])
else:
sys.exit('Aufruf: figlet.py "beispieltext"')
# init vars
line1 = line2 = line3 = ''
# create text lines for each letter
for i in message:
i = i.lower()
if i in abc:
line1 = line1 + abc[i][0]
line2 = line2 + abc[i][1]
line3 = line3 + abc[i][2]
#output text lines
print()
print(line1)
print(line2)
print(line3)
print()
exit()