Здравствуйте, Алексей On Wed, Jul 22, 2020 at 10:43 PM Алексей Куновский <skyblad...@gmail.com> wrote: > > Здравствуйте. Я никогда ничего не сопровождал ранее и не участвовал в > свободных проектах, но очень хотелось бы попробовать. И тут очень кстати > подвернулась программа для учёта времени Gtimelog, которая не переведена на > русский язык > https://i18n.debian.org/l10n-pkg-status/g/gtimelog.html
Сначала надо узнать не сделан ли уже перевод, особенное если перевод большой: * Проверить в актуальной версии в официальном [2] репозитории проекта [2] * Иногда переводы делают на различных web-платформах (transifex.com, pootle) это должно быть указано на официальном сайте проекта * Проверить в трекере ошибок (официальном проекта и пакета в Debian/Ubuntu) не был ли предложен перевод * Спросить разработчиков предлагали ли им перевод проекта Понять какая система используется для перевода (локализации), это может быть gettext, Qt QTranslator и пр. * Система gettext, судя по файлам в пакете /usr/share/locale/en/LC_MESSAGES/gtimelog.mo /usr/share/locale/lt/LC_MESSAGES/gtimelog.mo Кратко ознакомьтесь с gettext, какие инструменты есть для работы с ним. Приступить к переводу. Переводить лучше текущий разрабатываемый выпуск программы, чтобы перевод был включён в будущий выпуск. Но при этом лучше собрать разрабатываемую версию программы чтобы видеть контекст перевода в интерфейсе. Для gettext в результате надо создать файл gtimelog.po из файла шаблона .pot (src/gtimelog/po/gtimelog.pot в репозитории проекта gtimelog), чтобы получить /usr/share/locale/ru/LC_MESSAGES/gtimelog.mo Перед началом перевода разрабатываемой версии следует обновить файл шаблона .pot, чтобы он соответствовал текущим исходным текстам. Также перевести некоторые строки для значка программы в меню и на рабочем столе и, при желании, документацию (man и пр.). Отправить перевод в систему отслеживания ошибок [3] или список рассылки официального проекта и следить за его включением, исправлять замечания. Поддерживать перевод в актуальном состоянии для новых выпусков программы. > Есть ли какая-нибудь инструкция для новичков в этом деле? Также на мой взгляд > строк в файле локализации несколько больше, чем в интерфейсе видно, а > контекст употребления их явно важен. > Возможно ли без чтения всех исходников получить информацию о том, где и как > увидеть те строки, которые я переводить собрался? Зачастую можно без исходных текстов. В файле перевода .po есть информация о файле (или файлах) и строке исходного текста, где используется данная строка. Чтобы увидеть результат самый "простой" способ -- собрать разрабатываемую версию программы. Для текущей версии в вашей системе надо добавить файл /usr/share/locale/ru/LC_MESSAGES/gtimelog.mo. Учтите, что в зависимости от версии программы оригинальные строки, а следовательно и перевод отличаются, поэтому ваш перевод для текущей версии программы не обязательно на 100% подойдёт к новой выпускаемой версии. Но так можно сделать для своего обучения процессу. [1] https://gtimelog.org/ [2] https://github.com/gtimelog/gtimelog [3] https://github.com/gtimelog/gtimelog/issues