Xchat Umlaute
Aus Gentoo Linux Wiki
| Terminals / Shells • X • Portage • System • Dateisysteme • Kernel • Netzwerk• Sonstiges • alphabetischer Tipp Index |
Wer nicht auf UTF-8/Unicode wechseln möchte und in IRC-Channels das Problem hat, die Umlaute von UTF-8 Benutzern nicht lesen zu können, der kann sich folgendes Script hier herunterladen. Das sollte in ~/.xchat2 gespeichert werden, damit Xchat das Script automatisch lädt. Der Dateiname sollte auf .py enden. Natuerlich muss es vorher noch ausfuehrbar gemacht werden. Hier das Script:
__module_name__ = "utf8-iso8859-15"
__module_version__ = "1.01"
__module_description__ = "Decodes UTF8 sent by other people into iso-8859-15"
__module_author__ = "Gustavo Niemeyer <niemeyer@conectiva.com>"
# 20040507 Speuler (iso8859@hobbyist.de) trivial modifications:
# converting to ISO8859-15,
# parametrized install message
import xchat
def decode(word, word_eol, userdata):
event, pos = userdata
if type(pos) is int:
pos = (pos,)
changed = False
for i in pos:
try:
reencoded = word[i].decode('utf8').encode('iso-8859-15')
except (UnicodeError, IndexError):
continue
if reencoded != word[i]:
word[i] = reencoded
changed = True
if changed:
xchat.emit_print(event, *word)
return xchat.EAT_XCHAT
else:
return xchat.EAT_NONE
EVENTS = [
("Channel Action", 1),
("Channel Action Hilight", 1),
("Channel Message", 1),
("Channel Msg Hilight", 1),
("Channel Notice", 2),
("Generic Message", (0, 1)),
("Kick", 3),
("Killed", 1),
("Motd", 0),
("Notice", 1),
("Part with Reason", 3),
("Private Message", 1),
("Private Message to Dialog", 1),
("Quit", 1),
("Receive Wallops", 1),
("Server Notice", 0),
("Server Text", 0),
("Topic", 1),
("Topic Change", 1),
]
for event in EVENTS:
xchat.hook_print(event[0], decode, event)
print "%s %s loaded" % (__module_name__, __module_version__)
# vim:ts=4:sw=4:et
//edit: Link fuer das Script aktualisiert, da der alte tot war. Hinweise ueber das chmod +x des Scripts hinzugefuegt.
//edit2: Hinweis, dass Dateiname mit .py enden sollte.
