
Bis vor kurzem habe ich noch den IM-Client Proteus genutzt. Proteus ist jedoch Shareware. Man kann
alle Funktionen nutzen, aber die Zahlungsaufforderung immer wegzuklicken führt auf Dauer dann schon zu einem schlechten Gewissen. Auf der Suche nach irgendwelchen
Wordpress-Sachen bin ich auf Alex King’s Homepage auf Adium X gestoßen. Adium X ist unter der GNU General Public Licence lizensiert und
kostenlos erhältlich.
Es hat allerhand praktische Features, wie z.B. das Auto-resize der Kontaktliste, mehrere tabbed-Chat-Fenster, Bilder für jeden Kontakt, Anzeige der Idle-Time und lässt sich über diverse Extras anpassen.
Natürlich wollte ich beim Wechsel der Clients die alten Daten (Kontaktliste und Logs) übernehmen. Für die Logs gibt es ein Perl-Script (proteus2adium.pl). Für die Kontaktliste gibt es nichts (soweit ich das beurteilen konnte).
Also habe ich mich daran gemacht, die Kontaktlisten von Proteus und Adium zu analsysieren. Beides sind XML-Dateien. Proteus benutzt eine Apple Property-List und Adium die Buddy-Liste von Gaim bzw. libgaim. Bei 2x XML kommt natürlich gleich XSLT in den Sinn. Ging aber irgendwie nicht, weil die Property-List intern sehr ungleichmäßig verteilt war – Soll heißen: per XPath auf ein bestimmtes Element bekommt man z.B. nicht alle UINs der Kontaktliste. Vielleicht habe ich auch die “plist” nicht richtig verstanden. Ich habe es jedoch irgendwann einfach aufgegeben.
Dann habe ich angefangen ein Python-Script zu erstellen, dass die plist durchgeht und alle UINs einsammelt, egal wie tief sie in “dict”- oder “array”-Elementen vergraben waren. Da ich hin und wieder auch für andere Sachen Python einsetze habe ich mir mal spontan pydev angeschaut. Vor allem die pylint-Integration ist sehr praktisch.
Letztendlich habe ich dann bemerkt, dass Proteus doch irgendwie die Server-side-Contact-List-Geschichte unterstützt und fast(!) alle Kontakte bereits in Adium drin waren. Aber eben nicht alle. Die fehlenden paar habe ich dann von Hand eingetragen. Ganz umsonst war das rumprogrammieren mit Python aber auch nicht. Nun weiß ich wenigstens (ein bißchen…), wie man XML-Dokumente mit Python erstellt und “parsed”.
Related Posts
- Really Adobe? Really? - Come on Adobe. It's 2008. This can't be true: You cannot install Photoshop on a case sensitive HFS filesystem
- Small differences that matter - Small things I like about Mac OS X that Windows doesn't have
- Vista Launch in Europa - Vista launches. Yaay. I like Mac OS X more.
- Apple iPhone - iPhone: I want one.
- MacBook Pro mit Core Duo 2 - Hier zuerst erfahren! MacBook Pro mit Core Duo 2 vor Weihnachten