~aleteoryx/muditaos

ref: sign_test muditaos/tools/print_characters.py -rwxr-xr-x 3.3 KiB
a217eeb3 — Dawid Wojtas [BH-2024] Fix lack of alarm directory after updating software 1 year, 5 months ago
                                                                                
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
#!/usr/bin/python3
# Copyright (c) 2017-2022, Mudita Sp. z.o.o. All rights reserved.
# For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md

import os
import sys

# https://pl.wikipedia.org/wiki/ASCII
ascii = " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~"
# https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)
latin1_supplement = " ¡¢£¤¥¦§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"
# https://en.wikipedia.org/wiki/Latin_Extended-A
latin_extended_a = "ĀāĂ㥹ĆćĈĉĊċČčĎďĐđĒēĔĕĖėĘęĚěĜĝĞğĠġĢģĤĥĦħĨĩĪīĬĭĮįİıIJijĴĵĶķĸĹĺĻļĽľĿŀŁłŃńŅņŇňʼnŊŋŌōŎŏŐőŒœŔŕŖŗŘřŚśŜŝŞşŠšŢţŤťŦŧŨũŪūŬŭŮůŰűŲųŴŵŶŷŸŹźŻżŽžſ"
# https://en.wikipedia.org/wiki/Latin_Extended-B
latin_extended_b = "ƀƁƂƃƄƅƆƇƈƉƊƋƌƍƎƏƐƑƒƓƔƕƖƗƘƙƚƛƜƝƞƟƠơƢƣƤƥƦƧƨƩƪƫƬƭƮƯưƱƲƳƴƵƶƷƸƹƺƻƼƽƾƿǀǁǂǃDŽDždžLJLjljNJNjnjǍǎǏǐǑǒǓǔǕǖǗǘǙǚǛǜǝǞǟǠǡǢǣǤǥǦǧǨǩǪǫǬǭǮǯǰDZDzdzǴǵǶǷǸǹǺǻǼǽǾǿȀȁȂȃȄȅȆȇȈȉȊȋȌȍȎȏȐȑȒȓȔȕȖȗȘșȚțȜȝȞȟȠȡȢȣȤȥȦȧȨȩȪȫȬȭȮȯȰȱȲȳȴȵȶȷȸȹȺȻȼȽȾȿɀɁɂɃɄɅɆɇɈɉɊɋɌɍɎɏ"
# https://en.wikipedia.org/wiki/Latin_Extended-C
latin_extended_c = "ⱠⱡⱢⱣⱤⱥⱦⱧⱨⱩⱪⱫⱬⱭⱮⱯⱰⱱⱲⱳⱴⱵⱶⱷⱸⱹⱺⱻⱼⱽⱾⱿ"

# https://www.gt-pressura.com/
gt_basic_latin = "ABCDEFGHIJKLMNNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
gt_extended_latin = "ÁĂÂÄẠÆǼÀĀĄÅÃĆČÇĈĊĎĐÉĔĚÊËĖẸÈĒĘẼĞǦĜĢĠĦĤÍĬÎÏİỊÌIJĪĮĨJĴĶĹĽĻĿŁŃŇŅƝÑŊÓŎÔÖỌŒÒŐŌǪØǾÕŔŘŖŚŠŞŜȘŦŤŢȚÞÚŬÛÜỤÙŰŪŲŮŨẂŴẄẀÝŶŸỲȲỸŹŽŻẞƏáăâäạæǽàāąåãćčçĉċďđéĕěêëėẹèēęẽğǧĝģġħĥíĭîïịıìijīįĩjĵȷķĸĺľļŀłńʼnňņɲñŋóŏôöọœòőōǫøǿõŕřŗśšşŝșŧťţțþúŭûüụùűūųůũẃŵẅẁýŷÿỳȳỹźžżßðə"
gt_symbols = "([{,;:.…-‘’“”‚„‹›·–—•«»)]}!¡?¿/'\"ʼ&@©℀℗℅®™¶§†‡*#№∅+−±×÷=°≈≠≥≤ℓ●○❶❷❸❹❺❻❼❽❾①②③④⑤⑥⑦⑧⑨$¢£¥€₿₩₫₮₴₸₹₺₽₿ƒ¤↑↗→↘↓↙←↖↔↕⇵↩↪↰↱↲↳↴⬐↺↻"

ignore = "\r\n\t"

if len(sys.argv) == 2 and sys.argv[1] == "--help":
    print("print_characters.py --help")
    print("    Prints help")
    print("print_characters.py")
    print("    Prints basic, latin and symbols characters from gt_pressura")
    print("print_characters.py FILES...")
    print("    FILES - e.g. directory/*.txt")
    exit()

chars = set()

if len(sys.argv) < 2:
    for c in (ascii + gt_basic_latin + gt_extended_latin + gt_symbols):
        chars.add(c)
else:
    for c in ascii:
        chars.add(c)

    for filename in sys.argv[1:]:
        f = open(filename)
        str = f.read()
        for i in range(len(str)):
            c = str[i]
            if ignore.find(c) == -1:
                chars.add(c)
        f.close()

for c in sorted(chars):
    print(c, end = '')
print("")