Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: laskov в Apr 13, 2010, 17:11



Титла: MailScanner
Публикувано от: laskov в Apr 13, 2010, 17:11
MailScanner (основно Perl) изпраща e-mail-и с рапорти за открити проблеми в
Content-type: text/plain; charset=ISO-8859-1
Как да го накарам да ги праща в UTF-8 ? (Възможно е да ползва системна променлива.)


Титла: Re: MailScanner
Публикувано от: downware в Apr 13, 2010, 22:25
Я разгледай в lib/MailScanner/ConfigDefs.pl, на ред 546 "AttachmentCharset      ISO-8859-1", виж ако го промениш какво ще стане?


Титла: Re: MailScanner
Публикувано от: laskov в Apr 14, 2010, 09:30
Получи се! :) Но само за атачмънта. :) Основното писмо все още е в ISO-8859-1, но и това е нещо!
Преди много време преведох reports на български, но тази настройка ме спря. Получателят трябва да избере кодировката, за да прочете репорта.
Благодаря!  [_]3
Ще продължа да търся настройката за основното писмо..
edit 1:
Оказа се, че в основния конфиг файл тази настройка я има, но явно толкова съм гледал!
Цитат
# What character set do you want to use for the attachment that
# replaces viruses (VirusWarning.txt)?
# The default is ISO-8859-1 as even Americans have to talk to the
# rest of the world occasionally :-)
# This can also be the filename of a ruleset.
Attachment Encoding Charset = ISO-8859-1
edit 2:
Може и да съм намерил ключа към палатката. Ползвайки тези инструкции ($2) на Валентин Стойков:
Цитат
laskov@ns:/root$ export LANG=bg_BG
laskov@ns:/root$ locale charmap
CP1251
laskov@ns:/root$ exit
exit
root@ns:~# locale charmap
ISO-8859-1


Титла: Re: MailScanner
Публикувано от: laskov в Apr 14, 2010, 10:51
И това стана след
Цитат
export LANG=en_US.UTF-8
Ще прегледам отново българския превод и ще го постна тук като прикачен файл. Може някой да реши да го ползва :).


Титла: Re: MailScanner
Публикувано от: laskov в Apr 20, 2010, 13:38
В MailScanner има директории с репорти на различни езици. В конфиг файла се задава коя директория да се ползва.
Става една боза след като на подателя на блокирано (или друга намеса в) писмо в CP-1251, му се прати репорт в UTF-8. Трябва да се прави проверка на codepage на писмото и в зависимост от това да се праща съответно репорт в същия СР. Но тогава трябва за български да има репорти в utf-8, cp1251, koi8-r ... Другият вариант е MailScanner предварително да прекодира писмото в желания codepage (charset).
Как е направено това в web базираните пощи? Когато се праща писмо през web - ясно, но когато пристигне писмо, пратено от MS OE или от Thunderbird в koi8-r или в CP1251 например? Преди да влезе в базата данни ще трябва да се прекодира? Кое и как го прави?

Едит 1: Вероятно това (SpamAssassin/INSTALL) ще помогне:
Цитат
  - Encode::Detect (from CPAN)

    If you plan to use the normalize_charset config setting to detect charsets and convert them into Unicode, you will need to install this module.