Здравствуйте,
Хочу спросить , как можно изменить тело письма приходящего от Bugzilla 3,2.
В одной статье вычитала что можно в файле BugMail.pm просто заменить:
на
Но это не помогло - Данные которые берутся из базы или из темплайтов по-русски отображаются корректно, а все которые по -русски в файле BugMail.pm - абракозябрами. Может где-то что-то еще надо поправить?
Еще вроде есть способ использования языковых констант, но как их использовать и куда добавлять тоже не знаю.
Заранее спасибо.
Отредактировано Tuchka_84 (04-02-2009 17:08:00)
Отсутствует
Это место в Bugzilla фигово локализовано: https://bugzilla.mozilla.org/show_bug.cgi?id=215210
Как перевести именно заголовки -- придумано у польских коллег:
http://svn.aviary.pl/wsvn/Bugzilla/bran … l.txt.tmpl
Но по построению оно может задеть те же слова в теле изменений, не только в шапке таблицы
Отсутствует
Как перевести именно заголовки -- придумано у польских коллег:
Это описание очень помогло . Я таким образом заменила английские названия Состояний и Решений :
... [% PROCESS "global/variables.none.tmpl" %] [% diffsru = diffs | replace('UNCONFIRMED', 'Неподтвержденная') %] [% diffsru = diffsru | replace('NEW', 'Новая') %] [% diffsru = diffsru | replace('ASSIGNED', 'Назначена') %] [% diffsru = diffsru | replace('REOPENED', 'Повторная') %] [% diffsru = diffsru | replace('NOTCOMMITED', 'Исправлена, но не слита') %] [% diffsru = diffsru | replace('COMMITED', 'Исправлена, слита') %] [% diffsru = diffsru | replace('RESOLVED', 'Решена') %] [% diffsru = diffsru | replace('VERIFIED', 'Принята') %] [% diffsru = diffsru | replace('CLOSED', 'Закрыта') %] [% diffsru = diffsru | replace('FIXED', 'Исправлена') %] [% diffsru = diffsru | replace('INVALID', 'Аннулирована') %] [% diffsru = diffsru | replace('WONTFIX', 'Отказано') %] [% diffsru = diffsru | replace('DUPLICATE', 'Дублирующая') %] [% diffsru = diffsru | replace('WORKSFORME', 'Невоспроизводимая') %] [% diffsru = diffsru | replace('MOVED', 'Перемещена') %] [% diffsru = diffsru | replace('LATER', 'Отложена') %] [% diffsru = diffsru | replace('REMIND', 'Напоминать') %] [% diffsru = diffsru | replace('ASKED', 'Запрос на слив в Fix') %] [% diffsru = diffsru | replace('ALLOWED', 'Разрешено сливать в Fix') %] From ...
Если кому-то интересно , как реализовано у меня с переводом писем на русский могу привести полный текст BugMail.pm и newchangedmail.txt.tmpl, а также какие переводы были внесены в базу.
Отсутствует
Мне интересно.
если можно выложите в общедоступном месте, либо отправьте на ящик oman(а)list.ru
Можно связаться с разработчиками русской локализации на http://sourceforge.net/projects/bugzilla-ru/ и передать им Ваши наработки.
Заранее спасибо, большое
Отсутствует
Еще раз: это все же hack. Потому что заменит NEW на Новая в любом контексте, будь то аннотация или имя компонента.
Реальный патч для bug 466968 должен заполнять структуру данных и вызывать bug/activity/table.html.tmpl, где все уже локализуемо через global/field-descs.html.tmpl.
Отсутствует
если можно выложите в общедоступном месте, либо отправьте на ящик oman(а)list.ru
Здравствуйте,
Вот файл BugMail.pm :http://www.bugzilla.netunix.ru/BugMail.pm
Вот файл newchangedmail.txt.tmpl:http://www.bugzilla.netunix.ru/newchangedmail.txt.tmpl
Оба файла в кодировке utf8 (unicode)
Для русификации я также правила таблицу fielddefs - в столбец description я заносила описание полей на русском языке. Также как описано выше, в diffs я везде заменяю NEW на Новая и т.д. для переводов состояний ошибок. Также письма мне приходят в формате HTML (в стандартном шаблоне писем багзиллы text/plain), что удобнее для настройки шрифта, жирности и цвета и т.д. Также из-за формата HTML, как будет видно из приложенных файлов везде натыканы <BR>. Строку "What" "Removed" "Added" я заменила на таблицу <TABLE> </TABLE> с тремя столбцами.
Соответственно пришлось и править BugMail.pm
Но, конечно, я буду ждать исправления ошибок и пожеланий по локализации писем в самой багзиле. Это был бы наилучший вариант. Также хотелось бы иметь возможность выбора HTML формата для отправки писем.
Если кому-то пожет буду рада.
Отсутствует
Как перевести именно заголовки -- придумано у польских коллег: http://svn.aviary.pl/wsvn/Bugzilla/
Не получается в plain-text. Начинает вместо:
гнать
Отсутствует
Таблицу fielddefs лучше не трогать в плане русификации (по крайней мере в 3.2, utf8).
Иначе, в "истории изменений бага" появятся ваши "русификации" в виде
Отсутствует
Таблицу fielddefs лучше не трогать в плане русификации (по крайней мере в 3.2, utf8).
Иначе, в "истории изменений бага" появятся ваши "русификации" в виде
Насчет этой проблемы я знаю. Просто смотря, что Вам важнее получить полностью русифицированные письма или смотреть историю?
Конечно, лучше иметь настоящую русификацию.
Отсутствует
Таблицу fielddefs лучше не трогать в плане русификации (по крайней мере в 3.2, utf8).
Иначе, в "истории изменений бага" появятся ваши "русификации" в виде
Исправлено: https://bugzilla.mozilla.org/show_bug.cgi?id=493242
Отсутствует
Что-то большой какой-то патч. У меня вышло : в bug/activity/table.html.tmpl : примерно в 71 строке заменить
на
Само собой global/field-descs.none.tmpl д.б. уже русский.
ps. правда у меня первоначально было без FILTER. Подсмотрел по ссылке.
pps. Патч не прилагаю, т.к. у меня эти шаблоны давно уже в custom/
upd. и чтобы не ломались тесты:
--- filterexceptions.pl.original 2008-11-27 21:25:46.000000000 +0200 +++ filterexceptions.pl 2010-05-26 14:44:51.000000000 +0300 @@ -393,8 +393,7 @@ ], 'bug/activity/table.html.tmpl' => [ - 'change.attachid', - 'change.field', + 'change.attachid' ], 'attachment/create.html.tmpl' => [
upd После запуска checksetup.pl вся русификация fielddefs слетает. Так что имейте в виду. Я не полез в дебри, а накидал в конец :
$dbh->do('UPDATE fielddefs SET description=? WHERE name=?;', undef, ('Копия', 'cc'));
Отредактировано tim4dev (28-05-2010 10:45:02)
Отсутствует