Kiedyś szukałem na tym forum rozwiązania problemu z polskimi znakami. Nie znalazłem odpowiedzi (żadne nie działały). Więc musiałem w skrypcie nie używać polskich znaków, bo krzaczki były. Jednak teraz znalazłem rozwiązanie!
1. Tworzymy gdzieś plik tekstowy o dowolnej nazwie (np. "plchars" - /home/modry/ekg/plchars). Otwieramy go w programie do edycji tekstu (ja użyłem KWrite). Na samym początku zmieniamy kodowanie na iso-8859-2 (w KWrite jest to: Narzędzia>Kodowanie>¦rodkowoeuropejskie (iso-8859-2)). Następnie wpisujemy tam:
Kod: Zaznacz cały
ą¡ćÆęÊł£ńÑóÓś¦ź¬ż¯
Kod: Zaznacz cały
def p(x):
plik = open("/home/modry/ekg/plchars") #zmieńcie na własną ścieżkę
p = plik.read()
p = p.replace("\r", "")
l = ['a', 'A', 'c', 'C', 'e', 'E', 'l', 'L', 'n', 'N', 'o', 'O', 's', 'S', 'z,', 'Z,', 'z.', 'Z.']
if x in l:
i = l.index(x)
else:
i = 0
return p[i]
def msg(uin, s):
s = s.replace("ą", p("a"))
s = s.replace("¡", p("A"))
s = s.replace("ć", p("c"))
s = s.replace("Æ", p("C"))
s = s.replace("ę", p("e"))
s = s.replace("ę", p("E"))
s = s.replace("ł", p("l"))
s = s.replace("£", p("L"))
s = s.replace("ń", p("n"))
s = s.replace("Ñ", p("N"))
s = s.replace("ó", p("o"))
s = s.replace("Ó", p("O"))
s = s.replace("ś", p("s"))
s = s.replace("¦", p("S"))
s = s.replace("ź", p("z,"))
s = s.replace("¬", p("Z,"))
s = s.replace("ż", p("z."))
s = s.replace("¯", p("Z."))
ekg.command("msg %d %s" % (uin, s))
PS. W samym EKG można jeszcze wyłączyć polskie znaki wpisując:
Kod: Zaznacz cały
set display_pl_chars 0
save
Dziękuję za uwagę

Pozdrawiam,
Modry - Kedzik
EDIT:
Jeśli robisz instrukcję warunkową (if), to wyraz chrząszcz będzie taki:
Kod: Zaznacz cały
"chrz"+p(a)+"szcz"