Jeśli jesteś właścicielem tej strony, możesz wyłączyć reklamę poniżej zmieniając pakiet na PRO lub VIP w panelu naszego hostingu już od 4zł!

Str. główna i mapa serwisu str. poświęcona aktualnej wersji programu

Konfiguracja programu Mozilla Thunderbird 2.0.0.x do prawidłowej obsługi języka polskiego i dostosowanie do pracy wielojęzycznej

Opis dotyczy poprzedniej wersji programu, która będzie wspierana przez producenta przez ograniczony czas. Opis konfiguracji aktualnej wersji znajduje się na stronie głównej działu link prowadzi do podstrony.

Opisane ustawienia powinny również działać z programem Seamonkey, ale nie mam jak ich przetestować. W szczególności opcje konfiguracyjne mogą być rozmieszczone w nieco inny sposób. Z tego powodu zamieściłem kompletne linie konfiguracyjne odpowiadające za każdą opcję wymagającą ustawienia. Z oczywistych powodów nie gwarantuję, że wszystko będzie działać w Seamonkey, chętnie przyjmę uwagi, poprawki i potwierdzenia.

Nazwa poprawnie pisana jest Thunderbird. Inny zapis, taki jak Thunder Bird, Thunder-Bird, czy ThunderBird, jest niepoprawny. Stąd „TB” jako skrót nazwy nie jest zgodny z zasadami tworzenia skrótów w polskim języku, a do tego tak pisany skrót jest od lat używany dla programu pocztowego The Bat link do str. zewnętrznej. Proponowane skróty: Tbird, Tb.

Spis treści:

  1. Wprowadzenie, czyli ogólnie o sposobie i metodach konfiguracji.
  2. Zmiana języka interfejsu.
  3. Kodowanie i czcionki – czyli jak ustawić, żeby nie wysyłać ani nie oglądać krzaków:
    1. Ustawienie czcionek, sposobu wyświetlania treści i charsetu – jak ustawić ISO-8859-2 i jak poprawnie widzieć, co inni piszą.
    2. Ustawienie kodowania transportowego i długości wysyłanych linii – jak ustawić wysyłanie 8-bit, nie Quoted-Printable, i jak nie wysyłać tasiemcowych linii wyjeżdżających u adresata za ekran.
    3. Przywrócenie prawidłowego deklarowania charsetu US-ASCII.
    4. Ustawienia programu używanego w środowisku wielojęzycznym: konfiguracja automatycznego doboru charsetu – jak sprawić, żeby program sam próbował wysłać list w jednym z pasujących charsetów.
    5. Ustawienia programu używanego w środowisku wielojęzycznym: pisanie w dwóch kierunkach – dla korespondujących również po arabsku, hebrajsku…
    6. Konfiguracja automatycznego użycia najwęższego możliwego kodowania – żeby program listy po polsku wysyłał w unikodzie tylko wtedy, gdy nie może wysłać w ISO-8859-2, a w ISO-8859-2 – gdy nie może wysłać w US-ASCII.
    7. Transliteracja – alternatywa dla unikodu, gdy odbiorca nie może odczytać listu kodowanego w UTF-8.
  4. Test ustawień – sprawdź, czy Twój program prawidłowo wyświetla prawidłowe technicznie listy.
  5. Wbudowana tablica znaków – jak wstawić w list jakiś znak, którego nie ma na klawiaturze.
  6. Konfiguracja i przełączanie podpisów.
  7. Konfiguracja tekstu wprowadzającego, czyli wrotki.
  8. Dodatek: Sprawdzanie pisowni w różnych językach.
  9. Dodatek: Bugi powodujące kłopoty z ogonkami (nie tylko polskimi).
  10. Dodatek: Niedogodności programu mające wpływ na obsługę znaków narodowych w czytanych i wysyłanych listach, ale nie będące bugami.
  11. Dodatek: Wyświetlenie dowolnego pola nagłówka czytanego listu.
  12. Dodatek: Usunięcie uciążliwości w postaci domyślnego wysyłania w formacie HTML (w tym uwagi o konfiguracji zachowania programu podczas korzystania z edytora HTML) i pseudowątkowania po temacie (łączenia listów o identycznym temacie w wątek mimo tego, że ani nagłówek References, ani nagłówek In-Reply-To nie wskazują na to, by dane listy miały ze sobą związek
  13. Gdzie i kiedy nie używać polskich liter (ani innych znaków narodowych lub specjalnych).
  14. Linki.

Taki znaczek: link do str. zewnętrznej przy odsyłaczu oznacza, że odsyłacz prowadzi do strony zewnętrznej.
A taki znaczek: link prowadzi do podstrony – że odsyłacz prowadzi do innej strony w tym serwisie.

1. Wprowadzenie, porady ogólne i ostrzeżenia

Dzięki podanym zmianom, opisanym w p-cie 3.4, w ramach jednego profilu można używać dowolnych kodowań (zdefiniowanych przez użytkownika), które program dobierze automatycznie w zależności od treści, oraz dowolnych podpisów. Dzięki tym ustawieniom nie trzeba zmieniać profilu przed napisaniem wiadomości w innym języku.

W związku z dopuszczeniem unikodu (w transformacji UTF-8) jako równorzędnego z ISO-8859-2 na grupach hierarchii pl.* (patrz strona poświecona usenetowi w Polsce link do str. zewnętrznej oraz posty: qvdjwrm4esfu.dlg@falcon.sloth.hell.pl link do str. zewnętrznejdlptqd$csg$1@news.pse.pl link do str. zewnętrznej, oraz wcześniejsze: wątek cmrv87$ltf$3@debi.pekin.net.pl link do str. zewnętrznej, podwątek zaczynający się od 3dT2dac3kIpn6N34%chopin@akson.sgh.waw.pl link do str. zewnętrznej i post 5kT2kao5eI1s9N34.chopin@akson.sgh.waw.pl link do str. zewnętrznej) przygotowane zostały instrukcje dostosowania programu tak, by prawidłowo wyświetlał i wysyłał maile i posty z uwzględnieniem możliwości stosowania unikodu.

Uwaga: Unikod jest w pełni legalny i dopuszczony do stosowania, ale nie należy słać w UTF-8 postów, które nie zawierają znaków spoza ISO-8859-2. Zgodnie z RFC2046 link do str. zewnętrznej p. 4.1.2 (ostatni akapit) i z opinią wyrażoną w poście qvdjwrm4esfu.dlg@falcon.sloth.hell.pl link do str. zewnętrznej

[...] należy się stosować do zasady najmniejszego
niezbędnego charsetu - pisząc czysto po angielsku należy używać US-ASCII,
pisząc po polsku (czesku, słowacku itd.) - 8859-2, pisząc w języku nie
mającym odpowiedniego ISO 8859-N (albo naraz w kilku językach używających
różnych N) należy używać UTF-8.

Poniżej opisana konfiguracja zapewnia automatyczne stosowanie tej zasady przez program dla wysyłanych maili i postów.

Wyżej wymienione posty zostały napisane przez administratorów najważniejszych serwerów news w Polsce.

Niektóre zmiany możliwe są wyłącznie drogą wpisów w pliku prefs.js. Wpisy te można wprowadzać lub zmieniać na różne sposoby:

  1. W Thunderbirdzie można wejść w Narzędzia ⇒ Opcje ⇒ Zaawansowane (ang. Tools ⇒ Options ⇒ Advanced), i tam na zakładce Ogólne otworzyć okno bezpośredniej konfiguracji pliku prefs.js klikając na przycisk Edytor ustawień (czerwona strzałka):

    Pamiętaj, że używając tej metody dodając nowe wpisy należy dodawać jedynie samą treść wpisu, bez poprzedzającego user_pref(", przecinka między nazwą wpisu i wartością, cudzysłowów ani kończącego );. Przyjrzyj się już istniejącym wpisom w tym oknie i na pewno zobaczysz, co wpisywać, a czego nie. Dla ułatwienia nazwy wpisów (do wprowadzenia tą metodą) mają tło żółte, zaś wartości łańcuchów – jasnozielone (lub inne w przypadku dyskusji tekstu wprowadzającego, czyli tzw. wrotki). Zwróć też uwagę, że wpisy mogą być trzech typów: • logiczne (Boolean, przybierające wartości true lub false), • przybierające jako wartość liczbę naturalną (Integer) lub • łańcuchy (String), czyli ciągi mające określone znaczenie, na przykład lista charsetów, kod języka, odpowiedni fragment tekstu wprowadzającego itp. Zmiany dokonywane tą metodą są stosowane w programie od razu.
  2. W przypadku programu Seamonkey można wpisać w pasek adresu przeglądarki about:config, a następnie edytować istniejące lub dodawać nowe wpisy. Patrz też ostrzeżenie w poprzednim punkcie.
  3. Bezpośrednia edycja pliku prefs.js. Należy zamknąć wszystkie okna programu i następnie otworzyć właściwy plik prefs.js w dowolnym edytorze tekstowym. Gdy korzysta się z większej ilości profili, należy znaleźć właściwy profil. Niektóre wpisy mogą już istnieć w tym pliku, należy wtedy jedynie wyedytować właściwy fragment wpisu. Innych wpisów (na przykład tych dotyczących opcji ustawionych w danym wypadku na domyślne) może w ogóle nie być – nowy wpis zmieniający daną opcję po prostu dodaje się gdzieś w tym pliku, najłatwiej na końcu. W przeciwieństwie do edycji sposobami opisanymi powyżej, należy dodawać kompletne linie, jak zamieszczone w poniższym tekście (można kopiować z tej strony i wstawiać bezpośrednio w plik). Należy pamiętać, że plik ten jest ładowany do pamięci w momencie uruchomienia programu i zapisywany na nowo po każdym zamknięciu programu, wtedy wszystkie linie są zapisywane alfabetycznie – więc nie należy się dziwić, że wpis, który został dodany na samym końcu, nagle z końca zniknął. Inną metodą jest utworzenie w katalogu profilu pliku tekstowego i zmiana jego nazwy na user.js, a następnie dodanie w nim wymaganych wpisów, jak w przypadku dodawania do prefs.js. Plik ten można edytować w dowolnym momencie (również gdy program jest uruchomiony), wpisy w nim zawarte zostaną wprowadzone do prefs.js w momencie kolejnego uruchomienia programu. Z tego wynika, że zmiany ustawień metodą edycji prefs.js lub user.js są stosowane od startu (lub restartu) programu. Należy też koniecznie pamiętać, że aby usunąć wpis dokonany tą metodą (przywrócić wartość domyślną wpisu), nie wystarczy go usunąć z user.js – należy go również usunąć z prefs.js (po zamknięciu wszystkich okien programu).

Uwaga: pliki prefs.js i user.js używają kodowania UTF-8. Należy o tym pamiętać, jeżeli wpisywane wyrażenia zawierają znaki spoza US-ASCII. Wyrażenia wprowadzane przez edytor ustawień będą od razu prawidłowo zakodowane z użyciem UTF-8 – litery z diakrytykami itp. wpisuje się normalnie z klawiatury lub wklejać z tablicy znaków. W przypadku bezpośredniej edycji plików prefs.js i user.js należy albo użyć edytora tekstowego posiadającego opcję zapisu w kodowaniu UTF-8 (przykładowo dla Windows istnieje UniRed link prowadzi do podstronyBabelPad link prowadzi do podstrony), albo użyć sekwencji w postaci ciągu odwrócony ukośnik, mała litera u i czterocyfrowy kod szesnastkowy danego znaku: przykładowo litera ą będzie zapisana jako \u0105. Sekwencje polskich liter i szeregu znaków specjalnych w tej postaci można znaleźć tu link prowadzi do podstrony (w kolumnie JavaScript). Dodatkowo znak \n oznacza nową linię (złamanie wiersza w tym miejscu). Sekwencje i znak nowego wiersza można stosować wyłącznie podczas bezpośredniej edycji plików prefs.js i user.js.

2. Zmiana języka interfejsu

Zmiana języka interfejsu: w miarę potrzeby można zmienić język interfejsu na polski w następujący sposób:

  1. Połącz się z następującym adresem: ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/ link do str. zewnętrznej
  2. Wybierz wersję programu – koniecznie taką samą, do jakiej chcesz doinstalować polski interfejs, następnie platformę, a następnie wejdź do katalogu xpi.
  3. Pobierz plik pl.xpi i zapisz go w łatwo dostępnym katalogu na dysku
  4. Zainstaluj jak każde inne rozszerzenie
  5. Otwórz edytor konfiguracji
  6. Znajdź wpis general.useragent.locale
  7. Zapamiętaj (najlepiej zapisz gdzieś) istniejącą wartość, a następnie zmień ją na pl
  8. Zrestartuj program
  9. Oryginalny język interfejsu przywraca się analogicznie, choć nie trzeba już instalować pliku językowego dla oryginalnego języka

Wspomniany wpis można też wprowadzić bezpośrednio w pliku konfiguracyjnym:

user_pref("general.useragent.locale", "pl");

3. Kodowanie, wyświetlanie treści i czcionki

Nie należy wybierać autodetekcji charsetu (Widok ⇒ Kodowanie ⇒ Autodetekcja; należy zaznaczyć Wyłączone), gdyż najczęściej pociaga to za sobą więcej problemów niż korzyści, w tym psucie prawidłowo zakodowanych i zadeklarowanych znaków narodowych, gdy logika programu zawiedzie.

Thunderbird potrafi wyświetlać listy w HTML na trzy sposoby: oryginalny HTML, uproszczony HTML i czysty tekst. Dwie pierwsze opcje powodują, że w przypadku listów wieloczęściowych z częścią HTML i częścią tekstową zostanie pokazana część HTML (w przypadku wyświetlania uproszczonego HTML wiele znaczników zostanie zignorowanych), jedynie gdy list jest wyłącznie w formacie tekstowym, zostanie pokazany czysty tekst. Wybór czystego tekstu w przypadku listów wieloczęściowych z częścią HTML i częścią tekstową powoduje, że zostanie pokazana część tekstowa, a w przypadku listów w formacie tylko HTML wszystkie znaczniki HTML zostaną zignorowane. Wybór jest kwestią osobistych preferencji, wyboru dokonuje się z menu Widok ⇒ Treść jako (ang. View ⇒ Message body as). Dla bezpieczeństwa i ochrony przed spamem zaleca się blokowanie ściągania obrazków z zewnętrznych serwerów i niewłączanie obsługi JavaScriptu – obie opcje domyślnie są wyłączone, a ustawia się je z użyciem następujacych linii konfiguracyjnych:

user_pref("mailnews.message_display.disable_remote_image", true);
user_pref("javascript.allow.mailnews", false);

Linią odpowiadającą za format wyświetlanych listów jest

user_pref("mailnews.display.html_as", 1);

(0 – HTML /ustawienie domyślne/, 1 – czysty tekst, 3 – uproszczony HTML; 2 – wyświetla źródło HTML, nie ma zastosowania w normalnym użytkowaniu)

3.1 Wybór domyślnego charsetu i ustawienia czcionek

Po wejściu w Narzędzia ⇒ Opcje ⇒ Wyświetlanie (po ang. Tools ⇒ Options ⇒ Display), na zakładce Formatowanie:


należy najpierw sprawdzić, czy do wyświetlania treści listów w formacie tekstowym została wybrana czcionka o stałej szerokości (strzałka nr 1). Niby wybór jest osobistą sprawą użytkownika, ale użycie czcionki proporcjonalnej spowoduje beznadziejne rozjechanie się ASCII-artów, zaznaczeń i podkreśleń oraz tekstu formatowanego spacjami. Domyślne ustawienie to czcionka o stałej szerokości. Odpowiednia linia konfiguracyjna:

user_pref("mail.fixed_width_messages", true);

Następnie w tym samym oknie kliknąć na przycisk „Fonty…” (ang. „Fonts…”) – strzałka nr 1. Otworzy się nowe okno konfiguracji:

na którym można wybrać domyślny charset dla odbieranych wiadomości nie zawierających deklaracji – strzałka numer 2 – oraz domyślny charset dla wiadomości wysyłanych – strzałka numer 2. Dla pracy w środowisku języka polskiego standardowo oba charsety będą ustawione jako ISO-8859-2.

Warto również zaznaczyć, by program używał domyślnie wybranego kodowania dla wszystkich listów wysyłanych (strzałka 4) – w przeciwnym wypadku program podczas odpowiadania wybierze charset listu, na który się odpowiada, co czasem stwarza problemy (w szczególności gdy odpowiada się na list z deklaracją US-ASCII, bo napisany jest po polskawemu, wówczas Thunderbird wybierze dla odpowiedzi kodowanie ISO-8859-1 – choć można temu zaradzić konfigurując mechanizm automatycznego doboru i substytucji kodowania dla charsetu ISO-8859-1). Nie należy natomiast zaznaczać opcji, by program zawsze stosował wybrane kodowanie do wiadomości odbieranych (strzałka nr 3) – bardzo rzadko zdarza się, że jakaś wiadomość jest w ISO-8859-2, lecz ma nieprawidłową deklarację charsetu (np. ISO-8859-1), natomiast dużo częściej zdarza się, że wiadomość jest prawidłowo zakodowana i zadeklarowana w kodowaniu innym niż ISO-8859-2 (np. UTF-8 albo Windows-1250 w polskich warunkach). Zaznaczenie tej klatki spowoduje psucie treści tych drugich wiadomości. Bez zaznaczenia tej opcji domyślny charset będzie stosowany tylko do wiadomości, które nie mają deklaracji charsetu (np. posty na grupy dyskusyjne wysyłane z nieskonfigurowanego OE).

Ustawieniom tym odpowiadają następujące linie konfiguracyjne:

user_pref("mailnews.send_default_charset", "ISO-8859-2");
user_pref("mailnews.view_default_charset", "ISO-8859-2");
user_pref("mailnews.force_charset_override", false);
user_pref("mailnews.reply_in_default_charset", true);

Linie podane w kolejności numerów strzałek na zrzucie ekranu, czyli: pierwsza linia to ustawienie domyślnego charsetu dla wysyłanych wiadomości, druga – ustawienie domyślnego charsetu dla przychodzących wiadomości, trzecia – opcja, by program stosował kodowanie zadeklarowane w nagłówku czytanej wiadomości (jest to ustawienie domyślne i ta linia w tym ustawieniu normalnie nie jest obecna w prefs.js), zaś ostatnia – opcja, by program zawsze odpowiadał w wybranym kodowaniu.

W powyższym oknie dokonuje się też konfiguracji czcionek dla różnych grup językowych. Dla języka polskiego najważniejsze grupy językowe to zachodnioeuropejska (używana do wyświetlania listów w US-ASCII i ISO-8859-1 – używanych, gdy list pisany jest po polskawemu), środkowoeuropejska (używana do wyświetlania listów w ISO-8859-2) i unikod myląco nazwany „Inne języki” (ang. „Other languages”). Oczywiście w przypadku pracy wielojęzycznej może też być konieczna konfiguracja czcionek z grup innych języków. Należy pamiętać, by dla każdej grupy ustawić czcionkę unikodową zawierającą znaki języków danej grupy. Pod Windows można sobie pomóc rozszerzeniem TTF font properties extension link do str. zewnętrznej – wybierać tylko te czcionki, które zawierają w sobie odpowiednie zakresy Unicode i obsługują odpowiednie strony kodowe.
UWAGA: Nie należy pod żadnym pozorem nigdzie wybierać czcionek nieunikodowych, z czasów Windows 3.x! Czcionki takie mają w nazwie końcówkę określającą skrypt (np. CE – środkowoeuropejski, Cyr – cyrylica, Tur – turecki itd.). Takie czcionki nie będą poprawnie działać, dla każdego kodowania należy wybrać czcionkę unikodową. Co prawda można użyć czcionki nieunikodowej w kodowaniu Windows-1252 lub ISO-8859-1 (zachodnioeuropejskim) do wyświetlania listów w kodowaniu zachodnioeuropejskim, ale nie jest to ani konieczne, ani specjalnie zasadne.
Należy tu wspomnieć, że Thunderbird posiada bardzo dobrze działający system substytucji fontów: jeżeli czcionka używana do wyświetlania treści nie zawiera jakiegoś znaku, program postara się znaleźć czcionkę zawierającą ten znak, i w przypadku powodzenia wyświetli ten znak z użyciem tej znalezionej czcionki. Jest to szczególnie użyteczne w przypadku listów w unikodzie, zawierających wiele znaków z różnych języków.

Jeżeli w oknie kompozycji wśród charsetów dostępnych dla wysyłanych listów (strzałka nr 1) nie ma potrzebnego charsetu, należy go dodać w oknie kompozycji do listy dostępnych charsetów. Należy otworzyć menu Opcje, a następnie otworzyć podmenu Kodowanie i kliknąć na Dostosuj… (ang. Options ⇒ Character encoding ⇒ Customise list …):

W nowo otwartym oknie w lewym panelu zaznacza się żądany charset, a następnie klika na Dodaj:

Za listę dostępnych charsetów odpowiada linia konfiguracyjna:

user_pref("intl.charsetmenu.mailedit", "ISO-8859-2, UTF-8, ISO-8859-1, ISO-8859-15");

W linii tej teoretycznie można również ręcznie dodać US-ASCII (będzie dostępny w menu wyboru charsetu jako Angielski (US-ASCII)), ale używanie go sprawia problemy w przypadku obecności w treści znaków spoza tego charsetu (wszelkich liter z ogonkami, bukw, znaków specjalnych itp.). Użycie okna dostosowywania listy dostępnych charsetów spowoduje usunięcie tego charsetu.

W przypadku pracy wielojęzycznej domyślny charset dla listów nie zawierających deklaracji kodowania można ustawić według własnych, indywidualnych potrzeb (niestety, nie ma możliwości ustawienia osobno dla każdego konta ani tym bardziej w oparciu o dane nadawcy listu, istnieje jedynie możliwość ustawienia domyślnego charsetu dla poszczególnych folderów – patrz poniżej), zaś charset używany domyślnie dla listów wychodzących musi być charsetem normalnie stosowanym dla co najmniej jednego z języków, w których pisujesz, i nie może zawierać znaków z języka wymagającego innego kodowania. Na przykład przy ustawianiu programu tak, by można było pisać jednocześnie po polsku i niemiecku, należy wybrać tam domyślny charset ISO-8859-1 (stosowany dla języka niemieckiego i nie zawierający polskich liter), a nie ISO-8859-2 (stosowany dla języka polskiego, ale zawierający niemieckie litery – Niemcy mogą mieć trudności po odebraniu wiadomości z deklaracją ISO-8859-2), podobnie jest dla języków polskiego i litewskiego – jako domyślne należy ustawić kodowanie ISO-8859-2 (używane dla języka polskiego i nie zawierające litewskich liter), a nie ISO-8859-13 (kodowanie używane dla litewskiego, ale zawierające polskie litery, choć normalnie kodowanie to nie jest stosowane dla języka polskiego). Szeroka dyskusja doboru charsetu w zależności od kombinacji języków zamieszczona została na osobnej stronie link prowadzi do podstrony.

Thunderbird daje również możliwość wybrania domyślnego charsetu w odbieranych listach, które nie zawierają deklaracji charsetu, osobno dla każdego serwera news, każdego katalogu pocztowego i dla każdej grupy news. Przydatne jest to szczególnie dla zagranicznych grup dyskusyjnych. Domyślny charset dla serwera ustawia się we właściwościach serwera, na pozycji Ustawienia serwera (ang. Server Settings):

Ustawieniu temu odpowiada wpis konfiguracyjny:

user_pref("mail.server.serverX.charset", "ISO-8859-2");

gdzie serverX to oznaczenie serwera (zamiast X będzie jakaś liczba).

Aby ustawić domyślny charset dla wiadomości z danej grupy dyskusyjnej, które nie zawierają deklaracji charsetu (np. zostały wysłane ze źle skonfigurowanego OE), należy kliknąć drugim przyciskiem myszy na nazwie grupy i wybrać z menu kontekstowego pozycji „Właściwości”

po czym pokaże się okienko, w którym można wybrać domyślne kodowanie dla wiadomości przychodzących na tę grupę, pozbawionych deklaracji charsetu:

Analogicznie można postąpić w przypadku katalogów poczty:

W obu wypadkach należy pamiętać, by nie zaznaczać klatki „Zastosuj domyślne kodowanie do wszystkich wiadomości” – zepsuje to ogonki (czy inne znaki) prawidłowo zakodowane i zadeklarowane, ale w kodowaniu innym niż domyślne (czerwona strzałka).

W przeciwieństwie do prawie wszystkich innych ustawień, ustawienia charsetu dla folderów poczty i grup dyskusyjnych trzymane są w plikach .msf.

3.2 Ustawienie kodowania transportowego i długości wysyłanych linii

Gdy treść listu zawiera znaki spoza US-ASCII (np. znaki polskie, francuskie, znak € itp.), istnieje możliwość wysyłania tych znaków albo zakodowanych z użyciem kodowania Quoted-Printable, albo w postaci 8-bitowej. Wybór należy do użytkownika, ale warto pamiętać, że kodowanie Quoted-Printable jest błędnie obsługiwane przez OE (cytowany tekst w takim wypadku nie jest poprzedzany znakami cytowania), i na grupach dyskusyjnych (przynajmniej w hierarchii pl.*) stosowanie go jest niezalecane (choć nie jest zabronione). Wyboru kodowania dokonuje się w oknie Kompozycja na zakładce Ogólne:

W przypadku klienta mailnews Mozilli należy wejść w opcje konfiguracyjne (Edit ⇒ Preferences), ewentualnie rozwinąć grupę opcji Mail & Newsgroups, zaznaczenie klatki obok „For messages that contain 8-bit characters use 'quoted printable' MIME encoding” oznacza stosowanie kodowania Quoted Printable dla treści, odznaczenie tej klatki powoduje, że znaki spoza US-ASCII w treści będą wysyłane w postaci 8-bitowej.

Za ustawienie wysyłania treści w kodowaniu Quoted-Printable albo bez kodowania odpowiada linia:

user_pref("mail.strictly_mime", false);

(ustawienie domyślne, powoduje wysyłanie treści bez kodowania, normalnie ta linia jest obecna w prefs.js tylko po wybraniu wysyłania w kodowaniu Quoted-Printable, wówczas ma wartość true)

Uwaga: Nie należy pomylić powyższej linii z innym wpisem, mianowicie mail.strictly_mime_headers – ten wpis, zawierający dodatkowe słowo headers i normalnie ustawiony na true, reguluje sprawę kodowania transportowego znaków 8-bitowych w nagłówkach (temat, nadawca, organizacja, różne X-nagłówki). Zmiana tej opcji na false spowoduje, że znaki te będą nieprawidłowo wysyłane jako 8-bitowe (norma internetowa RFC 2822 link do str. zewnętrznej w p. 2.2 wyraźnie zabrania stosowania znaków 8-bitowych w nagłówkach) i będą nieczytelne u innych (może z wyjątkiem użytkowników OE).

W tym samym miejscu można ustawić długość linii. Domyślna wartość (72 znaki) jest zwykle optymalna. Odpowiednia linia konfiguracyjna:

user_pref("mailnews.wraplength", 72);

Niestety, w samym programie nie ma możliwości wyboru kodowania transportowego osobno dla poczty (gdzie czasem zachodzi potrzeba użycia Quoted-Printable) i grup dyskusyjnych (mocno zalecane jest wysyłanie w postaci 8-bitowej, czyli bez kodowania), ani tym bardziej osobno dla poszczególnych kont. Aby móc wybrać kodowanie transportowe osobno dla każdego serwera, należy zainstalować rozszerzenie Mnenhy link do str. zewnętrznej (po polsku link do str. zewnętrznej):

  1. Po kliknięciu drugim klawiszem myszy na serwer lub grupę dyskusyjną należy otworzyć okno konfiguracji folderu:
  2. Kliknąć na przycisk „Dodaj” (ang. „Add”), w nowo otwartym oknie wpisać nazwę opcji konfiguracyjnej, czyli mail.strictly_mime, po czym kliknąć na OK:
  3. Zaznaczyć nowo dodany wpis, kliknąć na „Edytuj” (ang. „Edit”) i zmienić wartość na przeciwną (np. true na false):

3.3 Przywrócenie możliwości wysyłania wiadomości w US-ASCII

Od wersji 0.8 (20040913) program Thunderbird deklaruje wiadomości zawierające tylko litery łacińskie jako domyślne kodowanie, np. ISO-8859-2. Nie jest to wprawdzie niepoprawne, ale jest niezalecane. W przypadku niezaznaczenia używania domyślnego kodowania dla wszystkich wysyłanych listów, co powoduje domyślne stosowanie kodowania listu, na który się odpowiada, przy odpowiadaniu na wiadomość w US-ASCII deklaruje ISO-8859-1. Aby to zmienić, należy wstawić linię (lub w istniejącej zmienić wartość false na true):

user_pref("mail.label_ascii_only_mail_as_us_ascii", true);

Ta linia przywróci zachowanie programu pozwalające na deklarowanie kodowania US-ASCII, a nie ISO-8859-1 czy innego wybranego jako domyślne, gdy treść rzeczywiście zawiera tylko znaki z US-ASCII (zachowanie to jest zgodne z zaleceniem zawartym w normie internetowej RFC 2046 link do str. zewnętrznej p. 4.1.2). Zmianę tę powinny wprowadzić zwłaszcza te osoby, którym zdarza się pisać po polskawemu (czyli bez polskich liter), a także piszącym (również) w języku angielskim, używającym normalnie wyłącznie liter łacińskich.

3.4 Ustawienia programu używanego w środowisku wielojęzycznym: konfiguracja kolejności automatycznego wyboru charsetów

Thunderbird ma możliwość konfiguracji, w jakiej kolejności ma automatycznie próbować dobrać odpowiedni charset do zawartości treści pisanej wiadomości. Mechanizm działa tak, że jeżeli w jakimś kodowaniu nie można wysłać wiadomości, to program szuka, czy dla danego kodowania zdefiniowane zostały kodowania alternatywne. Dla danego kodowania można wybrać więcej niż jedno kodowanie alternatywne, program będzie sprawdzał je po kolei i użyje pierwszego pasującego z listy. Należy tu dodać, że mechanizm ten generalnie nie działa wstecz, czyli np. gdy w liście wybrany został UTF-8, a wystarczyłby ISO-8859-2, program nie zmieni UTF-8 na węższe kodowanie (wyjątkiem jest zejście z dowolnego kodowania na US-ASCII). Użycie tego mechanizmu dla ISO-8859-1 jest szczególnie polecane tym, którzy w opcjach wybrali odpowiadanie w charsecie oryginalnego listu. Kodowania alternatywne muszą być skonfigurowane osobno dla każdego kodowania (np. osobno dla ISO-8859-1, dla ISO-8859-2, ISO-8859-13 itd.). Ogólny format wpisu wygląda następująco:

user_pref("intl.fallbackCharsetList.[WYBRANE_KODOWANIE_WYSYLANIA]", "[ALTERNATYWNE_KODOWANIE_1], [ALTERNATYWNE_KODOWANIE_2], [...] , [ALTERNATYWNE_KODOWANIE_n]");

Jako WYBRANE_KODOWANIE_WYSYLANIA wstawiamy kodowanie wybrane jako domyślne dla listów wychodzących, np. ISO-8859-1, a jako ALTERNATYWNE_KODOWANIE_1 – kodowanie innego języka (np. ISO-8859-2). Jeżeli chcemy mieć możliwość samoczynnego wysyłania w unikodzie, bez ręcznego przestawiania charsetu ani oglądania komunikatu, że treść nie może być wysłana w wybranym kodowaniu, to jako ALTERNATYWNE_KODOWANIE_2 wstawiamy UTF-8. Ta sama konfiguracja jest zalecana dla tych, którzy wybrali wysyłanie w charsecie oryginału. Cała linia w naszym przykładzie wygląda tak:

user_pref("intl.fallbackCharsetList.ISO-8859-1", "ISO-8859-2, UTF-8");

Dzięki temu (i dzięki zmianie z punktu 3.3) program zachowuje się następująco:

  1. Gdy program został ustawiony, by wysyłane listy kodować w wybranym kodowaniu domyślnym (p. 3.1 trzeci zrzut – klatka nr 4 zaznaczona):
    1. Gdy treść zawiera tylko łacińskie litery i cyfry – list wysyłany jest z deklaracją US-ASCII,
    2. Gdy treść zawiera znaki spoza US-ASCII – program próbuje go zakodować w kodowaniu wybranym jako domyślne. Gdy treść zawiera polskie znaki, program nie mogąc zakodować treści w ISO-8859-1 sprawdzi po kolei inne kodowania zapisane w tej linii i w naszym przypadku użyje ISO-8859-2 bez konieczności ingerencji ze strony piszącego,
    3. Gdy ani ISO-8859-1, ani ISO-8859-2 nie będą odpowiednie, wiadomość bez pytania zostanie zakodowana w unikodzie.
  2. Gdy program został ustawiony, by odpowiedzi kodować w kodowaniu oryginału (p. 3.1 trzeci zrzut – klatka nr 4 niezaznaczona):
    1. Gdy treść zawiera tylko łacińskie litery i cyfry – odpowiedź wysyłana jest z deklaracją US-ASCII,
    2. W przypadku odpowiedzi na list pisany po polskawemu, z deklaracją charsetu US-ASCII lub ISO-8859-1, gdy treść odpowiedzi zawiera polskie litery (spoza US-ASCII), program próbuje ją zakodować w kodowaniu oryginału, czyli w obu wypadkach jako ISO-8859-1 (dla potrzeb użycia charsetu identycznego jak w przypadku oryginału US-ASCII jest traktowany jako ISO-8859-1). Z uwagi na obecność polskich liter, których nie ma w ISO-8859-1, program sprawdzi po kolei inne kodowania zapisane w tej linii i w naszym przypadku użyje ISO-8859-2 bez konieczności ingerencji ze strony piszącego,
    3. Jeżeli treść oprócz polskich liter będzie zawierała też inne znaki, których nie ma w ISO-8859-2 (cudzysłowy, litery używane w innych językach, znaki specjalne…), odpowiedź bez pytania zostanie zakodowana w unikodzie.

Przykłady zestawień języków:

Szeroka dyskusja doboru charsetu w zależności od kombinacji języków zamieszczona została na osobnej stronie link prowadzi do podstrony.

Ponieważ Thunderbird nie udostępnia żadnej sygnalizacji, w jakim charsecie wyśle dany list (o ile kodowanie nie zostało zmienione ręcznie z menu), świadomie pominąłem UTF-8 jako ostatnią pozycję. W pewnych wypadkach wysyłanie listu kodowanego w UTF-8 może być niewłaściwe i lepiej mieć nad tym kontrolę – w przypadku ww. wpisów (z wyjątkiem zestawienia dla polskiego i kaszubskiego) program zapyta, czy ma wysłać w UTF-8. Jeżeli takie ostrzeżenie nie jest Ci potrzebne, możesz śmiało dodać na końcu odpowiedniej linii UTF-8.

3.5 Ustawienia programu używanego w środowisku wielojęzycznym: pisanie dwukierunkowe (od lewej do prawej i od prawej do lewej)

Niektóre języki pisane są od prawej do lewej, na przykład arabski i hebrajski. Dla Thunderbirda i Mozilli zostało przygotowane rozszerzenie BiDi UI link do str. zewnętrznej znacznie ułatwiające pisanie w dwóch kierunkach i czytanie wiadomości pisanych w różnych kierunkach, a zwłaszcza dwukierunkowo na raz.

Uwaga: w przypadku wiadomości zawierających tekst mieszany (pisany częściowo od lewej do prawej, a częściowo od prawej do lewej) może być konieczne użycie formatu HTML, by odpowiednie fragmenty tekstu były pokazane we właściwym kierunku u odbiorcy korzystającego z mniej inteligentnego programu. Gdy na co dzień używamy edytora zwykłego tekstu, edytor HTML możemy uruchomić klikając na Write lub Reply z wciśniętym klawiszem Shift. Wspomniane rozszerzenie działa tylko w oknie kompozycji HTML i pozwala na zmianę kierunku dla wybranego akapitu (wstawiając znacznik HTML „dir="rtl"”, gdy akapit ma być pisany od prawej do lewej, lub „dir="ltr"”, gdy akapit ma być pisany od lewej do prawej). Rozszerzenie działa w połączeniu z wewnętrzną logiką Thunderbirda używającą informacji o zakresie Unicode, z którego pochodzą dane znaki, do ustalania kierunku wyświetlenia danego tekstu.

W przypadku korespondencji z osobami, którzy do czytania używają programów nie posiadających logiki doboru kierunku wyświetlania tekstu w zależności od użytych znaków, ale obsługujących atrybut HTML „dir” (mówiący programowi, w którym kierunku ma być wyświetlany tekst), doraźnie można sobie radzić bez instalowania BiDi UI pisząc w edytorze HTML i wstawiając właściwą deklarację kierunku: z menu Format wybiera się Kolory i tło strony...

i w nowo otwartym oknie (na zrzucie ekranu poniżej okno po lewej stronie) klika się na Edycja zaawansowana:

Jak widać w oknie po prawej stronie można wybrać atrybut „dir” i nadać mu wartość „rtl”. W ten sposób można jedynie wybrać kierunek wyświetlania całości treści.

Należy pamiętać, że wszystkie znaczniki HTML, w tym i ten dotyczący kierunkowości, zostają bezpowrotnie stracone, gdy w momencie wysyłki wiadomość zostaje przekonwertowana do formatu plain-text. W Narzędzia ⇒ Opcje ⇒ Komponowanie ⇒ Opcje wysyłania należy ustawić, by w przypadku wysyłania maila w formacie HTML program pytał, co zrobić, a nie konwertował samoczynnie do formatu zwykłego tekstu.

Rozszerzenie to dodaje również opcję pozwalającą na przełączanie widoku wiadomości czytanej (a właściwie ustawienie wyrównania tekstu do prawej strony) – Widok ⇒ Przełącz kierunek wiadomości (ang. View ⇒ Switch message direction) oraz w menu kontekstowym treści wiadomości, a także przez skrót klawiaturowy Ctrl+Shift+X. Wygląda, że opcja ta działa wyłącznie z wiadomościami pisanymi w HTML i wyświetlanymi jako HTML.

Więcej informacji link do str. zewnętrznej, tekst tylko po hebrajsku, ale obrazki chyba pozwolą się dość dobrze zorientować w temacie.

Uwaga: Autor niniejszego poradnika nie jest w stanie udzielić żadnych dodatkowych informacji na temat wymienności listów pisanych od prawej do lewej między różnymi programami z uwagi na całkowitą nieznajomość żadnego z języków pisanych od prawej do lewej.

3.6 Wykorzystanie mechanizmu automatycznego wyboru charsetów do prawidłowej obsługi unikodu jako jednego z dopuszczonych kodowań

Mechanizm ten można również wykorzystać w środowisku polskojęzycznym. Z kodowaniami obowiązuje zasada, by używać najmniejszego kodowania wystarczającego dla danej treści. Czyli na przykład jeżeli treść zawiera tylko litery łacińskie i cyfry (bo ktoś pisze po polskawemu), to należy zadeklarować kodowanie US-ASCII. Jeżeli treść wiadomości w języku polskim może być zakodowana w ISO-8859-2 (nie zawiera znaków spoza ISO-8859-2), to powinna być wysłana właśnie w ISO-8859-2, nie w UTF-8. Zalecane ustawienia dla języka polskiego zapewniające zgodność z tą zasadą to opisane w p-cie 3.1 ustawienie kodowania domyślnego dla wiadomości wychodzących na ISO-8859-2 i zaznaczenie, by program używał tego kodowania domyślnie dla wszystkich wysyłanych wiadomości (strzałki 1 i 4), a następnie wpisanie następujących linii w prefs.js:

user_pref("intl.fallbackCharsetList.ISO-8859-2", "UTF-8");
user_pref("intl.fallbackCharsetList.ISO-8859-1", "ISO-8859-2, UTF-8");

(oczywiście w dalszym ciągu należy wpisać też linijkę przywracającą możliwość wysyłania w US-ASCII – patrz p. 3.3)

Te ustawienia spowodują następujące zachowanie programu:

  1. Gdy treść zawiera tylko łacińskie litery i cyfry – list wysyłany jest z deklaracją US-ASCII,
  2. Gdy treść zawiera znaki spoza US-ASCII – program próbuje go zakodować w kodowaniu ISO-8859-2. Jeżeli treść da się zakodować w tym kodowaniu, zostanie ono użyte w danej wiadomości. Nastąpi to również wtedy, gdy będziemy odpowiadać na wiadomość kodowaną UTF-8, ale w treści nie będzie znaków spoza ISO-8859-2 (bo np. zostały usunięte wraz ze zbędnym fragmentem cytatu lub wiadomość była zbędnie kodowana w UTF-8, choć ISO-8859-2 wystarczyłoby),
  3. Gdy treść będzie zawierała znaki, których nie da się zakodować w ISO-8859-2, program bez pytania wyśle wiadomość w unikodzie.

Geneza drugiej linijki (tej z substytutami dla kodowania ISO-8859-1) jest następująca: kiedyś przy odpowiadaniu na pewien list Thunderbird uznał, że musi zastosować kodowanie ISO-8859-1. Oczywiście przy próbie wysłania odpowiedzi wyświetlił znajomy komunikat o niemożności wysłania wiadomości w wybranym kodowaniu. Ta linijka sprawia, że więcej takich problemów nie będzie. Wydaje się, że linijka ta nie ma żadnych niepożądanych skutków ubocznych.

Gdy używa się mechanizmu automatycznego doboru optymalnego charsetu, warto rozważyć wyłączenie mechanizmu transliteracji (patrz następny punkt).

3.7 Transliteracja – alternatywa dla unikodu

Gdy w treści pisanego listu zostaną użyte znaki, których nie można zakodować w wybranej stronie kodowej ani ewentualnie w żadnej z alternatywnych stron skonfigurowanych wg wskazówek z p-tu 3.4, podczas wysyłki zostanie wyświetlone następujące okno dialogowe:

Dwie pierwsze możliwości, czyli wysłanie w UTF-8 oraz Anuluj, są oczywiste i znane z poprzednich wersji. Od wersji 1.5 doszła trzecia możliwość: wysyłki w wybranym charsecie. Wbrew ostrzeżeniu zawartym w tym oknie Thunderbird potrafi dokonać transliteracji wielu łacińskich liter ze znakami diakrytycznymi oraz wielu znaków specjalnych na symboliczny zapis używający wyłącznie znaków z US-ASCII. Znaki specjalne są konwertowane w sposób zwykle bardzo zrozumiały (np. ® to (R), € to EUR itd.) Litery z diakrytykami są konwertowane zgodnie z konwencją przedstawioną w RFC 1345 link do str. zewnętrznej i są przedstawiane jako litery łacińskie, za którymi stoi znak symbolizujący diakrytyk. Na przykład polski ogonek to średnik, kropka (nad ż) to kropka, kreska (nad o itp.) to apostrof, zaś skośna kreska w ł to ukośnik. Oto polskie litery w zapisie symbolicznym: a; c' e; l/ n' o' s' z' z..

Funkcję tę można wykorzystać, gdy wiadomo jest, że program odbiorcy nie byłby w stanie odczytać unikodu ani żadnego kodowania 8-bitowego, które umożliwia zakodowanie tych znaków.

Uwaga: tablica przekodowań Thunderbirda nie zawiera znaków alfabetów niełacińskich, np. cyrylicy, arabskiego. Stąd użyteczność tego rozwiązania nie jest wysoka – znaki, których nie ma w tablicy przekodowań programu, zostaną zamienione na znaki zapytania.

Stosowanie tej opcji, gdy zostały zdefiniowane alternatywne charsety (wg p-tu 2.6), daje nieprzewidziane rezultaty – trudno przewidzieć, w jakim kodowaniu zostanie wysłany list. Niekoniecznie będzie to kodowanie domyślne ani kodowanie ustawione w opcjach dla danego listu!

Można wyłączyć mechanizm transliteracji przez usunięcie pliku transliterate.properties znajdującego się w podkatalogu res\entityTables katalogu instalacyjnego Thunderbirda. W szczególności jest to zalecane, gdy używa się mechanizmu automatycznego doboru optymalnego charsetu.

4. Test ustawień

W celu sprawdzenia prawidłowości ustawień wyświetlania można ściągnąć dwa listy zamieszczone na tej stronie, otworzyć i porównać wyniki ze zrzutami ekranu poniżej:


E-mail testowy kodowany ISO-8859-2


E-mail testowy kodowany UTF-8

5. Wbudowana tablica znaków

W oknie kompozycji w trybie HTML dostępna jest tablica znaków, bardzo przydatna przy wstawianiu pojedynczych znaków, których nie mamy na klawiaturze. Dostępna ona jest przez menu Wstaw ⇒ Znaki i Symbole...

Pokaże się wówczas małe okno, w którym można wybrać jedną z kategorii, kolejno od góry: wielkie litery ze znakami diakrytycznymi, małe litery ze znakami diakrytycznymi, wielkie litery inne (np. Æ), małe litery inne i często używane znaki specjalne (znak €, £, ułamki, znaki copyrightu itp.):

6. Podpis

Podpis brany jest z pliku zewnętrznego. Znaki spoza ASCII w tym pliku mogą być kodowane w UTF-8 (z lub bez BOM) lub 8-bitowo w stronie kodowej właściwej dla ustawień regionalnych, program automatycznie rozpoznaje kodowanie. 8-bitowe kodowanie na przykład w polskim Windowsie to będzie Windows-1250, a w polskim Linuksie – ISO-8859-2, zaś w rosyjskim Windowsie będzie to kodowanie Windows-1251, a w rosyjskim Linuksie – ISO-8859-5, analogicznie w angielskim Windowsie będzie to kodowanie Windows-1252, a w angielskim Linuksie – ISO-8859-1 itp. Sam program umożliwia zdefiniowanie tylko jednego podpisu na serwer i nie umożliwia wyboru jednego spośród kilku podpisów (np. w zależności od odbiorcy), jest to jednak możliwe dzięki instalacji rozszerzenia Signature switch link do str. zewnętrznej. W opcjach rozszerzenia możliwe jest zdefiniowanie (na zakładce „Zaawansowane”, ang. „Advanced”) charsetu używanego w plikach z podpisami – domyślnie używany jest UTF-8, najbardziej przydatny w przypadku pracy wielojezycznej, ewentualnie można też zdefiniować jakieś kodowanie 8-bitowe (np. Windows-1250). Nazwa charsetu nie jest wybierana z menu rozwijanego, tylko wpisywana ręcznie. Należy użyć powszechnie przyjętych nazw charsetów tak, jak zostały zarejestrowane w IANA link do str. zewnętrznej, np. Windows-1250, ISO-8859-2 lub UTF-8. Wszystkie pliki z podpisami muszą używać tego samego charsetu. Gdy chce się użyć podpisów zdefiniowanych w dawnych czasach, przed instalacją tego rozszerzenia, można albo je przekonwertować do UTF-8, albo na wspomnianej zakładce wpisać odpowiednio Windows-1250 lub ISO-8859-2, w zależności od używanego systemu operacyjnego.

Podpisy można zmieniać i bez żadnego rozszerzenia, ale proces jest nieco skomplikowany i zmiana siga możliwa jest tylko przed otwarciem okna kompozycji. Sposób ten był przeze mnie używany jeszcze w czasach Netscape Communicatora pod Windows, prawdopodobnie od roku 1998 (oba programy obsługują w ten sam sposób podpisy). Sposób podaję jako ciekawostkę:
Podpis musi być brany z pliku tekstowego. W opcjach definiuje się, z jakiego pliku ma być brany podpis. Można przygotować kilka plików z różnymi podpisami (np. w różnych językach), a prosty plik wsadowy DOS załatwi sprawę podstawiania pliku z wybranym podpisem za ten plik ustawiony w opcjach. Robi się to tak:

7. Wrotka

Czyli tekst wprowadzający – w ramach jednego profilu można mieć tylko jedną wrotkę i z uwagi na to, że zapisana ona jest w pliku prefs.js, nie ma praktycznej możliwości zmieniania jej przed napisaniem wiadomości. Pozostaje przygotować wrotkę uniwersalną, zrozumiałą we wszystkich językach, w których się pisuje.

Program pozwala na dość dowolną konfigurację wrotki. Tekst składa się z czterech części i standardowo w wersji angielskiej wygląda tak:
On [data], [autor] wrote:
(oczywiście kolorowe tło dodałem tylko tutaj, dla lepszej ilustracji tego, który wpis odpowiada za którą część wrotki). Kolejne części nazywają się:
On [data] – ondate
, – separator
[autor] wrote – authorwrote
: – colon (czyli dwukropek)
Sama wrotka może przyjąć jedną z czterech możliwości wyglądu, możliwości te są ponumerowane. I tak:
0 – brak wrotki (sprzeczne z netykietą i bardzo niezalecane, bo mylące),
1 – wrotka [autor] wrote: (domyślna)
2 – wrotka w stylu On [data], [autor] wrote:, i
3 – wrotka w stylu [autor] wrote, On [data]: (odwrócona kolejność w porównaniu z wersją nr 2)
Teraz jedną z metod opisanych na początku należy po prostu dodać kilka linii definiujących wrotkę. Poniżej podane są wpisy domyślne (w wersji angielskiej) odpowiedzialne za wyświetlenie podanej powyżej standardowej wrotki:
user_pref("mailnews.reply_header_type", 1);
user_pref("mailnews.reply_header_ondate", "On %s");
user_pref("mailnews.reply_header_separator", ", ");
user_pref("mailnews.reply_header_authorwrote", "%s wrote");
user_pref("mailnews.reply_header_colon", ":");
Pierwsza linia ustala postać wrotki, zaś pozostałe – wygląd kolejnych części wrotki (dla ułatwienia kolory tła odpowiednich części wrotki są te same, co w przykładowej wrotce). Jak widać, zmienna %s jest odpowiedzialna za wstawienie w danym miejscu danej z listu, na który odpowiadamy (odpowiednio zawartość linii From: i Date:). Polskie litery (i inne znaki spoza US-ASCII) wstawiane w pliki .js muszą być zakodowane w UTF-8 lub (tylko w przypadku bezpośredniej edycji plików .js) używać tzw. sekwencji JS. Patrz uwaga o kodowaniu w plikach js we wstępie.

Uwaga: W Thunderbirdzie w oknie about:config widoczna też jest linia mailnews.reply_header_originalmessage (odpowiadająca za treść wrotki używanej przy forwardowaniu w trybie inline) – ale edycja tego wpisu nie ma wpływu na rzeczywistą treść tekstu, który znajdzie się w liście (Bug 224811 link do str. zewnętrznej). Można spróbować wyedytować w pliku mime.properties obecnym w spakowanym archiwum <katalog_programu>\chrome\>pl-PL.jar linię zaczynającą się od 1041= (w przypadku innej wersji językowej archiwum może mieć inną nazwę, np. en-US.jar).

8. Dodatek: Sprawdzanie pisowni w różnych językach

ThunderbirdSeamonkey korzystają z plików słownikowych w formacie Myspell (używanych również w Open Office link do str. zewnętrznej). Z serwera Mozilli można ściągnąć pliki słowników jako rozszerzenia link do str. zewnętrznej pozwalające na sprawdzanie ortografii w licznych językach – należy pamiętać, by korzystając z przeglądarki Mozilli zapisać je na dysk, gdyż po kliknięciu zainstalują się w przeglądarce, nie w kliencie pocztowym! Rozszerzenia te po ściągnięciu można automatycznie zainstalować np. przez okno instalacji rozszerzeń. Metoda ta powoduje, że każdy słownik instaluje się w profilu użytkownika, więc by umożliwić sprawdzanie pisowni w danym języku wszystkim użytkownikom, należałoby zainstalować (bez potrzeby) taką ilość kopii plików słowników, ile jest profili. Można tę niedogodność obejść instalując słowniki ręcznie:

  1. Okazuje się, że można też ręcznie umieścić pliki słowników w podkatalogu dictionaries katalogu instalacyjnego Thunderbirda, słowniki w tym katalogu będą dostępne w każdym profilu.
  2. Istnieje też pewna sztuczka: należy wszystkie pliki słowników umieścić w dowolnym miejscu na dysku w katalogu o nazwie dictionaries, program musi mieć dostęp do tego katalogu (wystarczy dostęp do odczytu). W katalogu profilu należy znaleźć plik extensions.ini i w nim w sekcji [ExtensionDirs] dopisać linię
    ExtensionX=Dysk:\ścieżka_do_katalogu_ze_słownikiem\nazwa_katalogu_z katalogiem_dictionaries_z_plikami_słownika
    Jeżeli np. pliki języka polskiego (pl.dic i pl.aff) znajdują się w katalogu c:\program files\open office\dictionaries i jest to ósmy wpis dotyczący rozszerzeń, powyższa linia będzie wyglądać tak:
    Extension8=c:\program files\open office
    Oczywiście należy podać odpowiednie ścieżki i nazwy katalogów, zamiast X wstawić kolejną liczbę (zaczynając od 0, gdy nie ma zainstalowanych żadnych rozszerzeń). Dzięki temu można też współdzielić słowniki między profilami i różnymi aplikacjami Mozilli (np. ThunderbirdFirefox). Niestety, po każdej aktualizacji (prawdopodobnie również po niektórych zmianach ustawień rozszerzeń) trzeba tę linię ponownie dodawać, gdyż w procesie sprawdzania zainstalowanych rozszerzeń program usuwa wpisy prowadzące do rozszerzeń zainstalowanych w miejscu innym niż podkatalog extensions katalogu z profilem użytkownika.
  3. W Linuksie możliwe jest rzecz jasna utworzenie symlinków (dowiązań symbolicznych) lub hardlinków (dowiązań twardych), zaawansowani użytkownicy Windowsa mogą zainstalować sobie rozszerzenie systemu operacyjnego Link Shell Extension link do str. zewnętrznej, dzięki któremu również będą mogli w prosty sposób utworzyć hardlinki i symlinki (w systemach wcześniejszych niż Vista możliwe jest tworzenie symlinków tylko do katalogów, zwanych junction point). Usunie to niedogodność związaną ze znikaniem słowników po aktualizacji i umożliwi współdzielenie wszystkich słowników między wszystkimi aplikacjami korzystającymi z tego formatu słowników (np. Firefox, Thunderbird, Nvu i OpenOffice.org). UWAGA: tworzenie hard- i symlinków w Windowsie możliwe jest wyłącznie na partycjach NTFS.

Symlinki pozwalają również na korzystanie z jednego słownika użytkownika (persdict.dat) w Thunderbirdzie i Firefoksie. Słownik użytkownika znajduje się w katalogu profilu użytkownika.

Pliki słownika do ręcznej instalacji można ściągnąć z serwera OpenOffice.org albo rozpakować rozszerzenie .xpi (jest to .zip o rozszerzeniu zmienionym na .xpi). Zawsze są po dwa pliki na język: .dic i .aff.

Gdy w nazwach plików słowników zastąpimy podkreślnik przez minus lub usuniemy minus i dwie litery identyfikujące kraj lub region (w zależności od języka – wiele ma wyłącznie jedną odmianę, np. polski, czeski, esperanto, w tych językach wystarczy jedynie nazwa składająca się z dwóch liter stanowiących kod języka, np. pl, cz, eo, inne mają wiele odmian regionalnych, np. angielski, hiszpański, w przypadku tych języków należy zostawić identyfikator kraju, np. en-GB, en-US, es-ES, es-MX), w oknie wyboru języka używanego do sprawdzania pisowni będzie pokazywać się nazwa języka (i ewentualnie kraju jego odmiany), a nie nazwa pliku. Przełączanie języka jest możliwe przez kliknięcie na strzałkę obok ikony sprawdzania pisowni na pasku okna kompozycji

Thunderbird ma również jakże przydatną funkcję sprawdzania pisowni w locie (znaną choćby z wielu edytorów tekstu) – funkcję tę uruchamia się w oknie kompozycji w menu Opcje, zaznaczając odpowiednią opcję:

Wybór słownika i włączenie sprawdzania pisowni w trakcie pisania możliwe też jest w opcjach kompozycji na zakładce Sprawdzanie pisowni (ang. Spelling) zaznaczając klatkę pokazaną czerwoną strzałką:

Należy pamiętać, że program zapamiętuje ostatni ustawiony język i dla nowego listu będzie użyty słownik użyty w poprzednim liście. Niestety nie ma możliwości konfiguracji domyślnego słownika w zależności od odbiorcy, grupy dyskusyjnej itp.

Za ustawienie języka sprawdzania pisowni odpowiada linia:

user_pref("spellchecker.dictionary", "pl");

gdzie pl to nazwa plików sprawdzania pisowni (bez rozszerzenia).

Za włączenie funkcji sprawdzania pisowni w locie odpowiada linia:

user_pref("mail.spellcheck.inline", true);

Należy pamiętać, że moduł sprawdzania pisowni używany w Thunderbirdzie nie ma funkcji proponowania słów bliskoznacznych ani dzielenia na sylaby.

Osoby, które wolą sprawdzać pisownię po napisaniu całości, a nie na bieżąco, mogą wyłączyć sprawdzanie pisowni w locie i sprawdzać pisownię naciskając klawisz F7 lub kombinację Ctrl+K, klikając na ikonę na pasku narzędziowym okna kompozycji lub wybierając z menu Opcje pozycję Sprawdź pisownię (ang. Options ⇒ Check spelling). Wyboru języka sprawdzania pisowni dokonuje się jak wyżej.

banner strony „Bykom stop!”
autor niniejszej strony popiera akcję „Bykom stop!” propagującą poprawne pisanie po polsku: z polskimi literami i bez błędów link do str. zewnętrznej

9. Dodatek: Bugi powodujące kłopoty z ogonkami (nie tylko polskimi)

1. Niepoprawne wysyłanie znaków spoza ASCII w nagłówkach zdefiniowanych przez użytkownika
Opis buga: Istnieje możliwość dodania do listy rozwijanych nagłówków (standardowo są to To: Cc: Bcc: Reply-To: Newsgroup: i Followup-To:) własnych nagłówków, na przykład X-No-Archive:, Keywords:, Summary: i dowolnych innych. Podczas pisania listu można wówczas dodać odpowiednią zawartość do każdego z tych nagłówków w miarę potrzeb. Znaki spoza ASCII wpisane w te dodatkowe nagłówki są wysyłane jako wielobajtowe sekwencje Unicode. W nagłówkach znaki spoza ASCII muszą być zakodowane Quoted-Printable lub Base64.
Metoda obejścia: Brak – zawartość nagłówka (nagłówków) trzeba zakodować przy użyciu jakiegoś zewnętrznego narzędzia (np. rozszerzenia Mnenhy link do str. zewnętrznej – działa tylko w oknie kompozycji – lub znajdującego się na tej stronie link do str. zewnętrznej i uzupełnić o wymagane znaczniki kodowania).
UWAGA: Ten błąd dotyczy wyłącznie nagłówków zdefiniowanych przez użytkownika i dodawanych jednorazowo w oknie kompozycji. Tekst przeznaczony do dodawania do każdego listu w dowolnym nagłówku, zdefiniowany w pliku prefs.js, będzie prawidłowo zakodowany.

2. Zbędna i nieprawidłowa opcja substytucji kodowania Windows-1252, gdy listu nie można wysłać w kodowaniu ISO-8859-1
Opis buga: Domyślnie program ma opcję, by w przypadku wysyłania listu kodowanego ISO-8859-1 zawierajacego znaki spoza tego charsetu próbować go wysłać jako Windows-1252. Kodowania Windows (tak jak Mac, Amiga, strony kodowe DOS i inne wewnątrzfirmowe rozwiązania) nie mają miejsca w internecie; przyjęte jest stosowanie ISO-8859-15 jako substytutu.
Metoda obejścia: Jeżeli nie korzysta się z mechanizmu automatycznego wyboru charsetu (patrz p. 3.4p. 3.6), należy otworzyć edytor ustawień, znaleźć linię intl.fallbackCharsetList.ISO-8859-1, i skasować wartość Windows-1252 lub zmienić ją na ISO-8859-15. Ponieważ wartości domyślne normalnie nie są wstawiane w plik prefs.js, w przypadku ręcznej konfiguracji tej opcji należy w prefs.js dodać linię:

user_pref("intl.fallbackCharsetList.ISO-8859-1", "");

(wyłącza substytucję dla ISO-8859-1) lub

user_pref("intl.fallbackCharsetList.ISO-8859-1", "ISO-8859-15");

10. Dodatek: Niedogodności programu nie będące bugami

1. We współpracy z niektórymi przeglądarkami litery ze znakami diakrytycznymi i znaki specjalne zawarte w linkach mailto: nie są obsługiwane poprawnie
Opis problemu: Standard HTML pozwala na konstruowanie odsyłaczy uruchamiających okno kompozycji domyślnego mailera z już wstawionym adresem odbiorcy oraz wypełnionymi innymi częściami: tematem, treścią i ewentualnie innymi nagłówkami. Odsyłacz taki wygląda następująco: mailto:adres@server?subject=tytuł_maila&body=początek_treści_maila. Znaki spoza ASCII zawarte w tych linkach mogą ulec zepsuciu, efekt zależny jest od używanej przeglądarki – efekty zawierają się między pełną obsługą, przez obsługę tylko znaków z kodowania odpowiadającego ustawieniu regionalnemu (mogą wystąpić różne efekty w zależności od sposobu zapisania znaków spoza US-ASCII – jako znaki 8-bitowe, encje numeryczne czy ciągi hex), po brak obsługi. Problem bierze się stąd, że z jakichś powodów sposób użycia znaków spoza US-ASCII w linkach mailto jest nieunormowany (patrz RFC 2368 link do str. zewnętrznej p.2). Więcej szczegółów: bug 169388 link do str. zewnętrznej.
Metoda obejścia: Wydaje się, że problem nie istnieje, gdy Thunderbird używany jest w parze z Firefoksem; współpraca z Operą daje najgorsze rezultaty.

2. Wysłane z Thunderbirda załączniki o bardzo długich nazwach (ponad ok. 65 znaków) lub nazwach zawierających polskie litery i inne znaki spoza US-ASCII w niektórych innych mailerach i czytnikach mogą mieć zmienione, przypadkowe nazwy
Opis problemu: Znaki narodowe w nazwach załączników mogą być kodowane na kilka sposobów. Thunderbird począwszy od wersji 2.0 domyślnie używa systemu hybrydowego: każdemu załącznikowi towarzyszy linia „name”, w której nazwa załącznika zakodowana jest zgodnie ze starszą i szerzej obsługiwaną normą RFC 2047 link do str. zewnętrznej, oraz linia „filename”, w której nazwa załącznika zakodowana jest zgodnie z nowszą normą RFC 2231 link do str. zewnętrznej z listopada 1997 r. Wg normy tej nie tylko w inny sposób kodowane są znaki narodowe, ale kodowane też są długie nazwy zawierające tylko znaki US-ASCII. Mimo użycia dwóch popularnych sposobów kodowania na raz niektóre programy mogą mieć z tym kłopot.
Metoda obejścia: Choć jest to problem odbiorcy, nie nadawcy (użytkownika Thunderbirda), pomóc może wprowadzenie następującej linii konfiguracyjnej:

user_pref("mail.strictly_mime.parm_folding", 1);

co spowoduje, że użyte będzie wyłącznie kodowanie zgodne z RFC 2047 (kodowanie hybrydowe to 3 – domyślne, 4 to inna wersja kodowania hybrydowego, kodowanie zgodne z RFC 2231 to 2, 0 to inna wersja kodowania zgodnego z RFC 2047, 5 i wyżej to brak przenoszenia nazw załączników).

Testy wykazały, że z kodowaniem hybrydowym nie ma problemu ani OE, ani Pegasus (jedyne znane mi mailery nieobsługujące kodowania RFC 2231). W przypadku zasygnalizowania problemów przez odbiorcę (np. używającego innego mailera) należy wypróbować jeden z niższych numerów. Należy tu zaznaczyć, że nawet jeżeli mailer czy czytnik odbiorcy obsługuje wybrany sposób kodowania nazw załączników, jego system operacyjny musi obsługiwać charset użyty do zakodowania znaków narodowych w nazwie załącznika. Istnieją też programy, które nie obsługują żadnego z podanych sposobów kodowania. Obecnie wciąż najbezpieczniej jest nie używać znaków narodowych w nazwach załączników.

11. Dodatek: Wyświetlenie dowolnego pola nagłówka czytanego listu

Istnieją dwie możliwości: gdy zależy nam na wyświetleniu zawartości pól nagłówka „Organization” lub „User-Agent”, można uaktywnić pokazywanie ich (lub jednego z nich) wstawiając w prefs.js jedną lub obie następujące linie (lub w istniejącej zmienić wartość false na true):

user_pref("mailnews.headers.showOrganization", true);
user_pref("mailnews.headers.showUserAgent", true);

Do wyświetlenia innych nagłówków używa się rozszerzenia Mnenhy (po angielsku) link do str. zewnętrznej lub Mnenhy (po polsku) link do str. zewnętrznej. Konfiguracja sprowadza się do zaznaczenia klatek przy odpowiednich polach nagłówków w opcjach rozszerzenia. Dzięki temu można na przykład wyświetlić deklarację kodowania czytanego listu.

12. Dodatek: Uciążliwości i ich usunięcie

Thunderbird, mimo wielu zalet, cechuje się dwoma ustawieniami, które domyślnie są sprzeczne z panującymi zwyczajami i netykietą (a jedno z nich – z ergonomią i zdrowym rozsądkiem).

12.1. Domyślne wysyłanie wszystkich listów w formacie HTML

Za globalne ustawienie (stosowane do wszystkich nowo tworzonych kont) odpowiada linia:

user_pref("mail.identity.default.compose_html", false);

(domyślnie ustawiona jest na true; istnieje też linia

user_pref("mail.html_compose", false);

również domyślnie ustawiona na true, która wydaje się nie mieć wpływu na żadne funkcje programu).

W przypadku już założonych kont ustawienie osobno dla każdego konta można zmieniać z poziomu interfejsu, w opcjach konta na pozycji „Kompozycja i adresowanie” (ang. „Composition & Addressing”):

W razie potrzeby można uruchomić edytor listu w formacie HTML naciskając klawisz Shift i klikając na ikonę „Napisz” lub „Odpowiedz”.

Za to ustawienie odpowiada linia:

user_pref("mail.identity.idX.compose_html", false);

gdzie idX to numer konta (opcja domyślnie jest ustawiona na true).

12.1.1. Ustawienia i uwagi dotyczące wysyłania HTML

Niektórzy użytkownicy wolą korzystać z edytora HTML z uwagi na jego nieco odmienne zachowanie. Thunderbird (i cała reszta programów pocztowych opartych o silnik Gecko) cechuje się bardzo dobrą jakością konwersji z HTML do zwykłego tekstu. Przy korzystaniu z edytora HTML do pisania listów, które mają być wysłane jako zwykły tekst, można sobie ułatwić życie następującymi ustawieniami:

  1. W książce adresowej zaznaczyć we właściwościach każdego odbiorcy, czy życzy sobie otrzymywać listy w formacie zwykłego tekstu, czy HTML. Niezależnie od innych ustawień list adresowany do takiego odbiorcy, tworzony w edytorze HTML, zostanie automatycznie wysłany w żądanym formacie (HTML, jeżeli zaznaczono HTML, skonwertowany do czystego tekstu, jeżeli zazanczono czysty tekst).
  2. Otworzyć okno opcji wysyłania (Kompozycja ⇒ zakładka Ogólne ⇒ przycisk Opcje wysyłania…; ang. Composition ⇒ zakładka General ⇒ przycisk Send Options…):

    i w nowo otwartym oknie na zakładce Domeny zwykłego tekstu (ang. „Plain Text Domains”) wpisać pełne domeny, do których na pewno nigdy nie należy wysyłać listów w formacie HTML. Niestety, nie ma możliwości zastosowania znaków wieloznacznych (np. gwiazdki: *.pl) ani dodawania serwerów news ani grup dyskusyjnych. Jeżeli odbiorcy z umieszczonej na tej liście nomeny nie zaznaczono w książce adresowej, że życzy sobie otrzymywać HTML (albo w ogóle nie ma go w książce adresowej), list tworzony w edytorze HTML zostanie automatycznie przekonwertowany na zwykły tekst.
  3. Jeżeli odbiorcy nie ma ani w książce adresowej (lub jest, ale nie wybrano dla niego preferowanego formatu listów), ani na liście domen, program postąpi zgodnie z ustawieniami w tym oknie. Możliwości to: zapytać się użytkownika, w jakim formacie wysłać (zachowanie domyślne), wysłać bez pytania jako zwykły tekst (dobra alternatywa), wysłać bez pytania jako HTML (zdecydowanie niezalecane) lub wysłać bez pytania jako przesyłkę wieloczęściową tekst plus HTML (również niezalecane. Wybór opcji wysyłania bez pytania jako zwykły tekst jest zalecany dla tych użytkowników, którzy lubią korzystać z edytora HTML, ale nigdy nie wysyłają listów w formacie HTML lub gdy wysyłają je tylko do osób, które książce adresowej są oznaczone jako odbiorcy w formacie HTML względnie ich pełne domeny znajdują się na zakładce „Domeny HTML” (ang. „HTML Domains”). Wybranie tej opcji spowoduje, że wysłanie listu w formacie HTML do odbiorcy, który nie został specjalnie oznaczony jako odbiorca formatu HTML lub którego domena nie jest na liście domen przyjmujących HTML, będzie niemożliwe bez zmiany ustawień.
  4. Jeżeli korzysta się z edytora HTML, ale w treści nie używa się absolutnie żadnego formatowania, list zostanie wysłany jako zwykły tekst.

Oczywiście nie ma żadnej możliwości konwersji zwykłego tekstu na HTML. List tworzony w edytorze tekstowym będzie wysłany jako zwykły tekst niezależnie od preferencji odbiorcy lub domeny.

Linie konfiguracyjne:

user_pref("mail.default_html_action", 0);

odpowiada za zachowanie w momencie próby wysłania listu w HTML do adresata, który nie został oznaczony jako odbiorca HTML ani jego adres nie jest na liście odbiorców HTML: 0 – zapytać użytkownika, w jakim formacie wysłać (zachowanie domyślne); 1 – wysłać bez pytania jako zwykły tekst, 2 – wysłać bez pytania jako HTML (stanowczo niezalecane); 3 – wysłać bez pytania jako przesyłkę wieloczęściową HTML + czysty tekst.

user_pref("mailnews.html_domains", "domena1,domena2,…,domenaN");
user_pref("mailnews.plaintext_domains", "domena1,domena2,…,domenaN");

domeny są rozdzielone przecinkami (bez spacji).

12.2. Domyślne pseudowątkowanie

Wskutek bardzo dyskusyjnych założeń program domyślnie łączy listy o identycznym temacie w wątek mimo tego, że ani nagłówek References, ani nagłówek In-Reply-To nie wskazuje na to, by dane listy miały ze sobą jakikolwiek związek. Nie ma możliwości wyłączenia tego z poziomu interfejsu graficznego. Zachowanie to powoduje, że np. na grupie testowej wszystkie posty o temacie „Test” (najpopularniejszy temat postów testowych) zostaną bezmyślnie zgrupowane jako wątek. Funkcja ta jest zbędna dla prawie wszystkich użytkowników i w prawie wszystkich sytuacjach, przydatna bywa jedynie w przypadku list mailingowych korzystających ze źle skonfigurowanego serwera, wycinającego nagłówki wskazujące na pozycję listu w wątku. Za wyłączenie tego zachowania odpowiadają linie:

user_pref("mail.strict_threading", true);
user_pref("mail.thread_without_re", false);

(domyślne wartości dla powyższych wpisów są przeciwne). W przypadku folderów, w których program już dokonał powątkowania, należy usunąć odpowiedni plik .msf (w przypadku grup dyskusyjnych straci się wszystkie artykuły z danej grupy).

13. Gdzie i kiedy nie używać polskich liter (ani innych znaków narodowych lub specjalnych)

Oprócz oczywistej sytuacji, gdy wiemy, że odbiorca nie będzie w stanie odczytać polskich (czy innych) liter – np. jest za granicą, korzysta z kafejek internetowych lub z uprzejmości gospodarzy i nie może skonfigurować komputera do wyświetlenia wszystkich znaków – bardzo zalecane jest nieużywanie żadnych takich znaków w nazwach załączników. Spowodowane jest to tym, że znaki spoza US-ASCII mogą być zakodowane na jeden z trzech sposobów:

Aby odbiorca mógł otworzyć załącznik, jego program musi obsługiwać użytą metodę kodowania. Brak obsługi danego sposobu kodowania u odbiorcy skutkuje zmianą nazwy załącznika – gdy list zawiera kilka załączników z opisem ich zawartości w treści, jest to bardzo uciążliwe. Innym problemem jest to, że oprócz zmiany nazwy pliku często zmieniane jest też rozszerzenie (na nic nie mówiące .dat, .att lub .bin), z czym mniej zaawansowany odbiorca sobie nie poradzi. Dodatkowo, nawet gdy program odbiorcy obsługuje metodę kodowania użytą przez nadawcę, w przypadku metod RFC dodatkowo jego system operacyjny i aplikacje używane do otwierania tego typu plików muszą obsługiwać znaki użyte w nazwie. Z kolei w przypadku załączników wysłanych bez kodowania nazwy (tryb Raw) znaki spoza US-ASCII w nazwie mogą zostać wyświetlone w przypadkowym kodowaniu (np. kodowaniu systemowym lub ISO-8859-1), skutkiem czego w nazwie będą krzaki. Nie istnieje proste, w pełni skuteczne rozwiązanie powyższych ograniczeń, jedyny sposób, który na 100% zadziała u wszystkich, to użycie wyłącznie znaków US-ASCII w nazwie załącznika w połączeniu ze zmianą opisaną w p-cie 10 podpunkcie 2.

Należy również pamiętać, że niektóre formaty plików co prawda pozwalają na umieszczenie w treści znaków narodowych, ale nie przenoszą informacji o użytym kodowaniu, przez co w wypadku przesłania takiego pliku jako załącznik u odbiorcy znaki narodowe mogą się nie wyświetlić prawidłowo. Najbardziej powszechny przykład to pliki tekstowe (o rozszerzeniu .txt). W typowym systemie Windows plik taki otwierany jest w systemowym Notatniku, w którym zawsze używane jest kodowanie systemowe i nie ma żadnej możliwości zmiany kodowania treści. Znaki narodowe będą pokazane prawidłowo tylko w sytuacji, gdy komputer odbiorcy używa tego samego kodowania systemowego, którego używa komputer nadawcy. Kodowanie systemowe zależy od locale systemowego (w przypadku korespondencji z osobami przebywającymi w innych krajach należy założyć, że locale nadawcy i odbiorcy będzie się różnić) oraz używanego systemu operacyjnego. Przed przesłaniem takiego załącznika należy się upewnić, że odbiorca będzie mógł zobaczyć znaki narodowe w treści.

14. Linki

Rozwiązania przetestowane na programie Mozilla Thunderbird w wersji 2.0.0.0 – 2.0.0.18 pod Windows 2000 SP4 English. Zgodnie z moją wiedzą wszystkie rozwiązania powinny też działać z odpowiednią wersją modułu obsługi poczty i grup dyskusyjnych programu Seamonkey (który używa tego samego silnika), ale nie testowałem ich i nie mogę gwarantować, że wszystkie zadziałają.

licznik