Персональный комментируемый блог
30 Авг
К сожалению, в настоящее время не существует русскоязычной версии dotProject второй версии. Я сравнительно долго искал перевод, но так и не смог найти, поэтому пришлось переводить систему самостоятельно.
Если кому-то понадобится мой русский перевод системы dotProject 2.x, вы можете скачать его по адресу:
http://dl.vityasev.ru/public/work/web/dotproject/
dotProject-2.x-russian-translation.zip
Хочу заметить: у меня нет лингвистического образования и данный перевод является любительским.
Заявка на включение в общий список переводов на dotproject.net:
Howdy! I want to provide a russian translation of dP version 2.x.
Blogpost about this translation: http://firebox.ikernel.org/2007/08/30/dotproject-2-russian-translation/
Locales "ru" directory archive (with all of required files): http://dl.vityasev.ru/public/work/web/dotproject/
dotProject-2.x-russian-translation.zipWith best wishes,
Yaroslav M. Vityasev.
ReadMe, прикрепленный к архиву русской локали:
1. Использование файлов локали
Разместите данную папку "ru" рядом с папкой "en" в директории "locales" вашего dotProject.
2. Условия предоставления перевода
Перевод предоставляется "как есть" без каких-либо гарантий и является любительским
переводом, автор перевода не занимается его поддержкой и был бы очень рад, если
бы последователи данного перевода для русской версии dP 2.х переслали свои варианты
перевода на ящик yaroslav@vityasev.ru для ознакомления и улучшения данной версии.Автор не является профессиональным переводчиком. Возможны неточности.
Текущий статус перевода: альфа-версия (version 0.1-alpha).
Автор разрешает использование перевода в любых целях, не противоречащих действующему
законодательству РФ и лицензии, по которой предоставляется система dotProject.3. Автор перевода
Ярослав М. Витязев (Yaroslav M. Vityasev),
e-mail: yaroslav@vityasev.ru,
ICQ UIN: 280428,
homepage: http://vityasev.ru.
Перед тем как задать вопрос: внимательно читайте комментарии, там приведены ответы на популярные вопросы про перевод календаря, русский Гантт, про то, что нужно сбросить кэш браузера и очистить cookies, чтобы перевод вступил в силу.
Комментариев — 31 for "Русский перевод системы dotProject 2.x"
Спасибо огромное! Сократили мне работы. Жаль только не знаю как диаграммы Ганта перевести и календарь поправить.
Метод решения в лоб - использование транслита.
За перевод спасибо, друг!
Спасибо за перевод
А почему Вы его не выложите на офф сайте? там пока нет никакого
Не за что, Владимир. Я делал запрос на оф. e-mail, мне не ответили. Этот перевод сырой, требуется его существенная доработка. Некоторые части системы (в частности календарь) не переведены.
Более того, я не предоставляю поддержку по этому переводу и это может быть одной из причин, по которой данный перевод dP нельзя включить в список официальных.
Спасибо, отличный перевод.
Вот еще бы как-нибудь календарь перевести.
Или инструкцию, как это можно сделать.
Не за что, Сергей.
Календарь пока оставлен как есть, на английском языке.
СПАСИБО, ДРУЖИЩЕ!!!!!!!!!
Календарь на английском?? странно. видимо у меня что-то настроено не правильно. у меня календарь выглядит примерно так: названия месяцев ромбиками (при принудительной смене кодировки на 1251 начинают отображаться нормально) а вот названия дней никак не получается увидеть. где подправить?
Спасибо
Если хотите нормально работать с русским в диаграммах ганта и календаре, прежде всего следует ставить dotproject в UTF-8, далее …\lib\jpgraph\src\jpg-config.inc следует подсунуть реальные шрифты
Например так:
DEFINE(”TTF_DIR”,$_SERVER[’DOCUMENT_ROOT’].’/lib/fonts/’);
define(’FF_CUSTOM’, 15);
define(’BASE_FONT’, ‘arial’);
define(’CUSTOM_TTF_FONT’, BASE_FONT . ‘.ttf’);
define(’CUSTOM_TTF_FONT_BOLD’, BASE_FONT.’bd.ttf’);
define(’CUSTOM_TTF_FONT_ITALIC’, BASE_FONT.’i.ttf’);
define(’CUSTOM_TTF_FONT_BOLDITALIC’, BASE_FONT.’bi.ttf’);
DEFINE(”LANGUAGE_CYRILLIC”,false);
DEFINE(”CYRILLIC_FROM_WINDOWS”,false);
С календарем тоже все ни так сложно, нужно просто найти функции обрезающие имена месяцев и дней и умножить длинну на 2 (UTF на один символ приходится 2, а в cp1251 или Koi8-r 1. PHP substr и прочие строковые функции unicod обрабатывает, как обычные кодировки)
Ну в общем как то так.
Вот если бы у кого то была инструкция по внедрению данного продукта в веб студии, или готовые регламенты по использованию, был бы очень благодарен
Насчет русских букв в календаре. Мне помогло следующее.
В файле modules/calendar/calendar.class.php в строке
$s .= “\n\t\t” . htmlentities(utf8_encode($day), ENT_COMPAT, $locale_char_set) . “”;
нужно убрать вызов utf8_encode. А в файле lib/PEAR/Date/Calc.php для функции getWeekdayAbbrname последний параметр length установить по умолчанию в 6:
function getWeekdayAbbrname($day=”",$month=”",$year=”",$length=6)
Ярослав - спасибо за перевод! Установил, все ок, но почему то внутри админки все равно все по английски…в Translation Management установил ru…в System Configuration, Host Locale прописал ru…как же заставить админку стать русской? -). спасибо
Попробуйте удалить все cookies, сбросить кэш браузера.
не помогло…причем после логаута почему-то в Translation Management опять English…т.е. слетают языковые настройки.
Я правильно понимаю, что когда я для admin выбираю ru -> админка становится русской…и жму submit, ну или после submit…? Странно, что поля перевода пустые для admin модуля…т.е. English String заполнена, а вот String: ru пустая…для других модулей перевод есть, но русский все равно не подхватывается…
В принципе все должно нормально вставать? Может я какие то настройки на прописал…
о, нашел…забыл еще одну настройку…все теперь срослось, все ок - еще раз спасибо!
serega, подскажите пожалуйста, что за настройку вы забыли?
просто аналогичная ситуация, ставлю в настройках Host Locale = ru, но ничего не меняется, все на английском…
Так с русским разобрался, теперь решить бы проблему с квадратиками вместо месяцев в каледнаре
Vadim, пожалуйста, опишите для остальных, как вы разобрались с проблемой.
Проблему с календарем решил Сергей, см. http://blog.vityasev.ru/2007/08/30/dotproject-2-russian-translation/#comment-530
Ярослав, дело в том, что я сделал то, что писал Сергей, а это не помогло. Вернее строчки
$s .= “\n\t\t” . htmlentities(utf8_encode($day), ENT_COMPAT, $locale_char_set) . “”;
у меня нет как таковой. В файле lib/PEAR/Date/Calc.php все исправил - не помогло.
Настройка перевода на русский решается путем 2х настроек:
1я в конфигурации системы локаль = ru
2я в настройках пользователей по умолчанию локаль выбрать Russian.
Затем отчистить историю в браузере и кукисы.
Вопрос по квадратикам вместо месяцев остается открытым.
Спасибо Сергею за подсказку по поводу отображения дней в календаре. Помогло.
Проблему с отображением русского шрифта в диаграммах Ганта решил установкой шрифтов freefont
x-and не могли бы вы более подробно описать путь решения проблемы с диаграммой Ганта ? Спасибо.
Чета фихня получается, скачал FreeFont установил куда написанно в редми, прописал путь в jpg-config.inc.php , добавив строки
define(’TTF_DIR’, DP_BASE_DIR . ‘****’);
define(’FF_CUSTOM’, 18);
define(’BASE_FONT’, ‘FreeSans’);
define(’CUSTOM_TTF_FONT’, BASE_FONT . ‘.ttf’);
define(’CUSTOM_TTF_FONT_BOLD’, BASE_FONT.’Bold.ttf’);
define(’CUSTOM_TTF_FONT_ITALIC’, BASE_FONT.’Oblique.ttf’);
define(’CUSTOM_TTF_FONT_BOLDITALIC’, BASE_FONT.’BoldOblique.ttf’);
и все равно фих… подскажите что я не так делаю или что ещё нужно прописать и хде ? Спасибо
решение твоей проблемы
dotProject 2.1.2
lib\pear\date\calc.php
ищи эти функции
function getMonthNames()
{
global $Date_Calc_months;
if (!(isset($Date_Calc_months))) {
$Date_Calc_months = array();
for($i=1;$iutf-8
// та же самая хрень во второй функции которая
// берет дни
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
}
}
return($Date_Calc_months);
}
/**
* Returns an array of week days
*
* Used to take advantage of the setlocale function to
* return language specific week days
* XXX cache values to some global array to avoid preformace hits when called more than once.
*
* @returns array An array of week day names
*/
function getWeekDays()
{
global $Date_Calc_weekdays;
if (!(isset($Date_Calc_weekdays))) {
$Date_Calc_weekdays = array();
for($i=0;$i<7;$i++){
$Date_Calc_weekdays[$i] = strftime(’%A’, mktime(0, 0, 0, 1, $i, 2001));
$Date_Calc_weekdays[$i] = iconv ( ‘cp1251′,’UTF-8′, $Date_Calc_weekdays[$i]);
}
}
return($Date_Calc_weekdays);
}
блин че-то обрезалось
но суть в том что в каждую фунцию я добавил по строчке
$Date_Calc_months[$i] = iconv ( ‘cp1251′,’UTF-8′, $Date_Calc_months[$i]);
2-я
$Date_Calc_weekdays[$i] = iconv ( ‘cp1251′,’UTF-8′, $Date_Calc_weekdays[$i]);
Собираюсь использовать dotProjects в проектах поэтому локализацию в любом случае доработаю, как сделаю отпишусь о результатах
скачал FreeFont установил куда написанно в редми, прописал путь в jpg-config.inc.php , добавив строки
define(’TTF_DIR’, DP_BASE_DIR . ‘****’);
define(’FF_CUSTOM’, 18);
define(’BASE_FONT’, ‘FreeSans’);
define(’CUSTOM_TTF_FONT’, BASE_FONT . ‘.ttf’);
define(’CUSTOM_TTF_FONT_BOLD’, BASE_FONT.’Bold.ttf’);
define(’CUSTOM_TTF_FONT_ITALIC’, BASE_FONT.’Oblique.ttf’);
define(’CUSTOM_TTF_FONT_BOLDITALIC’, BASE_FONT.’BoldOblique.ttf’);
и все равно фих… подскажите что я не так делаю или что ещё нужно прописать и хде ? Спасибо
тоже такой же вопрос- плюс дополнительно, а где вообще можно скачать FreeFont ? я вот ариал из винды поставил- вообще диаграммы ганта исчезли
“С календарем тоже все ни так сложно, нужно просто найти функции обрезающие имена месяцев и дней и умножить длинну на 2 (UTF на один символ приходится 2, а в cp1251 или Koi8-r 1. PHP substr и прочие строковые функции unicod обрабатывает, как обычные кодировки)
Ну в общем как то так.”
Может кто подскажет что это за функция и где она живет? У меня и в календаре и в диграммах названия обрезваются ровно вдвое.
2 flex
не работает - ругается страшно на эти исправления.
версия 2.1.2, пускаю из под венды
V 2.1.3
Решение русификации календаря:
В файле lib/PEAR/Date/Calc.php исправить 2е функции. Заменить строки с if обозначеные OLD на строку по меткой NEW:
/**
* Retunrs an array of month names
*
* Used to take advantage of the setlocale function to return
* language specific month names.
* XXX cache values to some global array to avoid preformace hits when called more than once.
*
* @returns array An array of month names
*/
function getMonthNames() { // dotProject-modified function
global $Date_Calc_months;
global $locale_char_set;
if (!(isset($Date_Calc_months))) {
$Date_Calc_months = array();
for($i=1;$i<13;$i++){
$Date_Calc_months[$i] = strftime(’%B’, mktime(0, 0, 0, $i, 1, 2001));
/* NEW */
$Date_Calc_months[$i] = mb_convert_encoding($Date_Calc_months[$i], $locale_char_set, ‘windows-1251′);
/* OLD
if ($locale_char_set != ‘iso-8859-1′) {
$Date_Calc_months[$i] = mb_convert_encoding($Date_Calc_months[$i],
$locale_char_set, ‘iso-8859-1′);
}
*/
}
}
return($Date_Calc_months);
}
/**
* Returns an array of week days
*
* Used to take advantage of the setlocale function to
* return language specific week days
* XXX cache values to some global array to avoid preformace hits when called more than once.
*
* @returns array An array of week day names
*/
function getWeekDays()
{
global $Date_Calc_weekdays;
global $locale_char_set;
if (!(isset($Date_Calc_weekdays))) {
$Date_Calc_weekdays = array();
$now_date = strftime($format,time());
for($i=0;$i<7;$i++){
$Date_Calc_weekdays[$i] = strftime(’%A’, mktime(0, 0, 0, 1, $i, 2001));
/* NEW */
$Date_Calc_weekdays[$i] = mb_convert_encoding($Date_Calc_weekdays[$i], $locale_char_set, ‘windows-1251′);
/* OLD
if ($locale_char_set != ‘iso-8859-1′) {
$Date_Calc_weekdays[$i] = mb_convert_encoding($Date_Calc_weekdays[$i],
$locale_char_set, ‘iso-8859-1′);
}
*/
}
}
return($Date_Calc_weekdays);
}
Тоже не работает с Гантт-ом…
Названия месяцев и заголовки не отображаются корректно.
Попробовал предложенные выше варианты, и по прежнему не работает. Ни с dotProject, ни с его последователем - web2project.
Кстати, последний умеет импортировать из MS Project.
Оставить комментарий