Bug 8603 - Неверно перекодирует текстовую часть при составлении письма в HTML
: Неверно перекодирует текстовую часть при составлении письма в HTML
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/kdepim-kmail)
: unstable
: all Linux
: P2 critical
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2005-12-06 16:17 by
Modified: 2007-09-16 21:56 (History)


Attachments
kmail: MultiPart message plain/text body encoding patch (1.04 KB, patch)
2007-04-28 10:56, Andriy Stepanov
no flags Details | Diff


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2005-12-06 16:18:06
Составляемое в HTML письмо выглядит так: 
 
--Boundary-00=_ldYlDviI9mwCevd 
Content-Type: text/plain; 
  charset="koi8-r" 
Content-Transfer-Encoding: 8bit 
 
÷?? ????? ???? 
 
--  
Lav 
÷?????? ??????? 
??????, ?????-?????????. www.etersoft.ru 
GNU! ALT Linux Team! WINE! WIKI! LaTeX! LyX! 
 
--Boundary-00=_ldYlDviI9mwCevd 
Content-Type: text/html; 
  charset="koi8-r" 
Content-Transfer-Encoding: 8bit 
 
<html><head><meta name="qrichtext" content="1" /></head><body 
style="font-size:11pt;font-family:Arial"> 
<p>Вот ка<span style="font-weight:600">кие дела</span></p> 
<p></p> 
<p>-- </p> 
<p>Lav</p> 
<p>Виталий Липатов</p> 
<p>Россия, Санкт-Петербург. www.etersoft.ru</p> 
<p>GNU! ALT Linux Team! WINE! WIKI! LaTeX! LyX!</p> 
<p></p> 
</body></html> 
--Boundary-00=_ldYlDviI9mwCevd--
------- Comment #1 From 2006-01-02 12:45:11 -------
kdepim-kmail-3.5.0-alt1: то же самое. 
Поэтому при ответе на такое письмо видим 
> ???????? 
вместо исходного текста. 
 
------- Comment #2 From 2007-04-24 11:44:31 -------
rpmquery -f /usr/bin/kmail
kdepim-kmail-3.5.6-alt3

Действительно, это потому что в:
в Настройка->Настроить Kmail...->Редактор писем->Кодировка
(Settings->Configure Kmail...->Редактор писем->Charset)
на первом месте стоит:us-ascii

Решение: поставить на первое место кодировку системную кодировку. Например: utf8
(locale).

В руководстве для этого пункта сказано:

Charset

Here you can manage the default charsets used for your own messages. Every
message you send will be checked if it is written in one of the listed charsets,
starting at the top of the list. If it is, this charset will be used. If it is
not, a dialog will show up and tell you that you manually have to choose a
charset using Options->Set Encoding.

If you select Keep original charset when replying or forwarding (if possible),
the original message's charset will be kept, unless there are now characters
that cannot be represented using that charset.

Как вариант, можно установить по умолчанию локальную кодировку для самой kmail.
Для этого _наверно_ нужно перекомпилировать пакет kmail заменив в:
~/RPM/kdepim/BUILD/kdepim-3.5.6/kmail

--- kmkernel.cpp-orig   2007-04-24 10:42:08 +0400
+++ kmkernel.cpp        2007-04-24 10:42:44 +0400
@@ -1492,7 +1492,7 @@
     KConfigGroupSaver saver(cfg, "Composer");
     if (cfg->readListEntry("pref-charsets").isEmpty())
     {
-      cfg->writeEntry("pref-charsets", "us-ascii,iso-8859-1,locale,utf-8");
+      cfg->writeEntry("pref-charsets", "locale,us-ascii,iso-8859-1,utf-8");
     }
   }
   readConfig();
------- Comment #3 From 2007-04-28 10:56:33 -------
Created an attachment (id=1931) [details]
kmail: MultiPart message plain/text body encoding patch

Если письмо составлять в HTML тогда: kmail создает письмо из двух частей:
1-я часть : письмо в HTML
2-я часть : тоже самое письмо но в plain text

Вот вторая часть и не правильно составляется. А именно: кодирует не правильно
текст.

Вот патч который поправляет эту ошибку.
------- Comment #4 From 2007-04-28 12:15:53 -------
Отрепортил на багзиллу кде:
http://bugs.kde.org/show_bug.cgi?id=144779
------- Comment #5 From 2007-05-31 19:57:02 -------
*** Bug 8464 has been marked as a duplicate of this bug. ***
------- Comment #6 From 2007-08-14 17:54:33 -------
kdepim-kmail-3.5.6-alt4
------- Comment #7 From 2007-09-16 21:56:04 -------
Проверил, всё отлично.