Odpovědět na komentář

Plugin QIP Decoder pro Pidgin

Určitě jste se už setkali s problémem, kdy v přijatých zprávách od kontaktů použivajících QIP 2005 jsou nesmyslné diakritické znaky. Tyto problémy bylo možno dříve řešit přepnutím identifikace z QIP 2005 (UTF-8) na QIP 2005. V novějších verzích toto již nefunguje a ruští autoři tuhle chybu prý nehodlají opravit (doporučen je přechod na QIP Infium). Z tohoto důvodu byl vytvořen plugin QIP Decoder pro Pidgin.

Novinky

  • Verze 1.3 – je možné nastavit detailně znaková sada pro všechny kontakty.
  • Verze 1.2 – podporuje mnoho jazkyků, rychlostní optimalizace.
  • Verze 1.1 – opravuje nestabilitu pluginu, při příjmu delší zprávy.

Instalace a konfigurace

Zkopírujte rozbalenou knihovnu do adresáře Pidgina plugins na Windows, nebo do adresáře „/usr/lib/purple-2“ (pro všechny uživatele) případně „~/.purple/plugins“ (pouze pro aktuálního uživatele) na Linuxu. V nastavení pluginů „Nástroje/Zásuvné moduly“ (Ctrl+U) povolte plugin QIP Decoder.

Verze 1.3 umožňuje nastavit znakovou sadu zvlášť pro každý kontakt. K tomu musíte vytvořit soubor qips.xml v adresáři „C:\Documents and Settings\Uživatel\Data aplikací\.purple“ na Windows, nebo v adresáři „~/.purple“ na Linuxu.

Příklad: Většina vašich kontaktů má QIP a používá znakovou sadu 1250. Nicméně, váš kontakt 111222333 má QIP a používá sadu 1252. Další kontakt 222333444 má Pidgin a píše rusky (odpovídá sadě 1251). Tento kontakt bude vyžadovat zákaz QIP Decoderu, který by svou činností narušil azbuku.

<?xml version='1.0' encoding='UTF-8' ?>
<qips>
 <default enabled='1' codepage='1250' />
 <qip uin='111222333' enabled='1' codepage='1252' />
 <qip uin='222333444' enabled='0' />
</qips>

Čísla znakových sad

  • 1250 – Středoevropské jazyky
  • 1251 – Jazyky používající cyrilici
  • 1252 – Západní jazyky
  • 1253 – Řečtina
  • 1254 – Turečtina a příbuzné jazyky
  • 1255 – Hebrejština
  • 1256 – Arabské jazyky
  • 1257 – Baltské jazyky
  • 1258 – Vietnamština

Znakové sady na Wikipedii.

Předchystané balíčky

Prosím, nešiřte binární soubory bez přiložené LICENCE a doprovodné README informace s odkazem na zdrojový kód!

Plugin můžete použít ve stejné nebo novější verzi Pidgina (např. plugin pro verzi Pidgina 2.5.2 lze použít ve verzi 2.5.4). Plugin můžete použít pravděpodobně i v jiné verzi téhož Linuxu (např. plugin pro Ubuntu 8.04 lze použít ve verzi 8.10), pozor však na architekturu (x86 vs. x86–64). Verzi 1.0 nedoporučuji již dále používat.

Není v mých silách vytvořit build pro všechny distribuce. Pokud uděláte překlad, který zde není, můžete mi jej zaslat spolu s typem CPU, operačního systému a verze Pidgina, aby mohl posloužit ostatním.

Stáhnout QIP Decoder v1.3 přeložený pro

Stáhnout QIP Decoder v1.2 přeložený pro

Stáhnout QIP Decoder v1.1 přeložený pro

Stáhnout QIP Decoder v1.0 přeložený pro

Princip

Tento plugin opravuje nesprávnou příchozí diakritiku a ostatní lokální symboly z QIP 2005 pro mnoho světových jazyků (znakové sady WINDOWS-1250, 1251, 1252, …, 1258). Důležité je, že plugin opravuje veškeré příchozí ICQ zprávy bez ohledu na to, zda je odesílatelem QIP klient nebo ne. To znamená, že mohou nastat některé Unicode kolize a můžete přijít o Unicode podporu pro cyrilici (pokud si píšete s někým kdo ji na ICQ používá a není to QIP).

Process opravy kódování může být vysvětlen na následující sekvenci: „ANSI znaková sada (1250..1258) v QIP klientu“ ⇒ „QIP enkoder nesprávné-WINDOWS-1251-na-Unicode“ ⇒ „Internet“ ⇒ „Pidgin + QIP Decoder na ANSI znakovou sadu (1250..1258)“ ⇒ „Opravené UTF-8 v Pidginu“

Proto musíte mít nastavené stejné kódování jako je kódování ve Windows, kde je spuštěn QIP. QIP Decoder zjišťuje typ kódování z vaší aktuální ANSI znakové stránky. Na Unixu je toto napodobeno zjištěním odpovídající ANSI znakové sady z jazykového nastavení v proměnné prostředí LANG. Tuto automaticky zjištěnou sadu můžete přepsat nastavením čísla znakové sady (např. 1250) do proměnné prostředí QIPACP na obou systémech Windows i Unixu.

Netestoval jsem všechny jazyky, zvláště pak západní. Takže, dejte mi prosím vědět, jestli to funguje nebo ne (e-mail je dole). (Čeština je již otestovaná.)

Zdrojový kód

Pro překlad qip-decoderu postupujte podle oficiálních instrukcí pro překlad pluginů pro Pidgin a sekci „PLUGINS“ v „README“ souboru (ve zdrojových kódech Pidgin). Pro překlad, zjednodušeně řečeno, musíte

  • stáhnout a rozbalit zdrojové kódy k Pidginu, pak
  • ./configure,
  • nakopírovat zdrojový kód „qip-decoder.c“ do adresáře „/usr/src/pidgin-X.X.X/libpurple/plugins“ a
  • make qip-decoder.so.

Příklad kompilace QIP Decoderu na Linuxu

Stažení a rozbalení zdrojových kódů Pidgina

$ wget http://downloads.sourceforge.net/pidgin/pidgin-2.5.6.tar.bz2
$ tar -xjf pidgin-2.5.6.tar.bz2
$ cd pidgin-2.5.6

Konfigurace kompilace

$ ./configure

Pokud chybí některá z knihoven nebo hlavičkových souborů, bude nutno doinstalovat nebo zakázat, např.:

$ ./configure --disable-avahi --disable-dbus --disable-nm --disable-perl --disable-sm --disable-screensaver --disable-startup-notification

Stažení a rozbalení QIP Decoderu

$ cd libpurple/plugins
$ wget http://www.sedaha.cz/qip-decoder/qip-decoder-1.3.src.zip
$ unzip qip-decoder-1.3.src.zip qip-decoder.c

Kompilace QIP Decoderu

$ make qip-decoder.so

Dotazy, komentáře a hlášení chyb můžete směrovat případně na e-mail.

Odpovědět

Obsah tohoto pole je soukromý a nebude veřejně zobrazen.
CAPTCHA
Tato otázka slouží ke zjištění, zda jste člověk, opište prosím 4 znaky:
Image CAPTCHA
Copy the characters (respecting upper/lower case) from the image.