Перевод QGIS на русский язык: сообщество и руководство для участника

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Эта страница опубликована в основном списке статей сайта
по адресу http://gis-lab.info/qa/qgis-trans.html


Материал посвящен процессу организованного перевода открытой ГИС QGIS на русский язык. Здесь вы найдёте общую информацию о том, как организован перевод, все необходимые ссылки, а также руководство по тому, как стать участником и полезные советы

Популярность QGIS на сегодняшний день впечатляет: эта открытая ГИС используется в индустриальных, научных и образовательных организациях по всему миру. Если вы как-то связаны с миром геоинформационных технологий, то, скорее всего, вам доводилось если не работать с QGIS, то по крайней мере сталкиваться с проектами и инфраструктурами пространственных данных на её основе.

Жизнь QGIS, как и любого другого открытого программного обеспечения, неразрывно связана с сообществом неравнодушных людей, которые помогают проекту развиваться. Одно из важнейших направлений такой помощи - это локализация (перевод интерфейса самой программы, докуменации, сайта). Во многих странах мира сложилось крепкое и хорошо организованное сообщество по переводу QGIS на местный язык, и мы бы хотели сделать подобное и для русскоязычного населения планеты.

На данный момент, к сожалению, перевод на русский язык очень фрагментарен, а также содержит немало противоречий и ошибок, что связано с хаотичностью процесса (разрозненная и эпизодическая работа независимых переводчиков). В этой статье мы попробуем предложить процесс, который систематизирует работу над локализацией QGIS. Сейчас мы сосредоточены на локализации интерфейса самой программы.

Перед тем, как приступить к переводу, просим вас полностью прочитать эту статью.


Как вообще организована локализация QGIS?

Перевод на разные языки осуществляется добровольцами (иногда спонсируемыми государственными или частными организациями). Стать таким добровольцем может любой человек, например вы. Для удобства процесса перевода разработчики предлагают использовать специализированное веб-приложение transifex.com, которое позволяет редактировать перевод непосредственно в интернет-браузере, без утомительных настроек окружения и установки дополнительных программ. Единственное, что вам нужно - подать заявку на перевод проекта QGIS в transifex, и дождаться её одобрения. Мы предлагаем вам не просто сразу начать перевод, но сделать это более организовано, так, как мы предлагаем в этой статье.

Вы можете познакомиться с описанием процесса локализации на сайте QGIS.


Кто организует систематизированный перевод на русский язык?

На данный момент перевод координируют:

  • Эдуард Казаков (ee.kazakov@gmail.com, t.me/kazakov_e)
  • Максим Дубинин (t.me/maxim_dubinin)

Если у вас есть предложения по процессу локализации, свяжитесь с нами по указанным контактам.

Хочу участовать, что мне понадобится и как подготовиться?

Если вы хотите просто сообщить об обнаруженном плохом/несуществующем переводе, но не хотите полноценно участовать в процессе, просто напишите на адрес электронной почты ee.kazakov@gmail.com или в Telegram @kazakov_e / https://t.me/qgis_translate_ru

Для того, чтобы начать работать с нами, вам потребуется:

  • Ночная или последняя (не LTR) версия QGIS на компьютере (дистрибутивы и инструкции для всех операционных систем здесь)
  • Telegram аккаунт
  • Аккаунт в системе transifex.com (регистрация бесплатная)

Если всё это у вас есть, действуйте по следующему алгоритму:

  1. Подайте заявку на перевод Russian на странице проекта QGIS в transifex: https://www.transifex.com/qgis/QGIS/ (при этом нужно быть авторизованным в transifex).
  2. Вступите в телеграм-чат https://t.me/qgis_translate_ru и представтесь.
  3. Напишите в телеграм-чате, что подали заявку в transifex.
  4. Вас оповестят, когда заявка будет одобрена.
  5. Переходите на страницу проекта https://www.transifex.com/qgis/QGIS/dashboard/ , выбирайте ветку "qgis-application", и можно приступать к работе!

Сейчас работа организована в формате спринтов, координируемых через Telegram-чат.

Как получить актуальную версию перевода и увидеть её в QGIS?

Во-первых, скачайте и установите последнюю (не LTR) версию QGIS, доступную на официальном сайте.

Затем на transifex проделайте следующие действия:

  1. Авторизуйтесь и перейдите на страницу проекта https://www.transifex.com/qgis/QGIS/dashboard/
  2. В списке языков найдите Russian, наведите на него мышь и нажмите "Обзор ресурсов"
  3. В появившемся списке нажимайте на qgis-application
  4. Во всплывшем окне выбирайте пункт "Скачать файл для использования" - загрузится файл формата .ts


Qgis translate resource download options.png


Далее загруженный файл нужно скомпилировать в формат .qm с помощью программ Qt Linguist. Она устанавливается для Win и Mac отсюда: https://github.com/lelegard/qtlinguist-installers/releases, в Linux устанавливается вместе с QGIS. Запустив Linguist, откройте в ней загруженный файл .ts и скомпилируйте через меню File - Release As: достаточно просто указать путь до выходного файла.

Выходной файл нужно назвать qgis_ru.qm и сохранить в папку i18n в ресурсах QGIS, например C:\Program Files\QGIS\apps\qgis\i18n

Перезапустив QGIS, актуальный перевод подхватится.

Процесс работы переводчика

Перед тем, как начать перевод, выберите часть интерфейса, которую хотите перевести. Мы не рекомендуем хаотично браться за перевод отдельно взятых фраз, гораздо продуктивнее целиком переводить раздел за разделом. Уведомите команду в телеграм-чате о том, что вы начали работать над определенной частью интерфейса. Когда начинается спринт, список разделов предлагается организаторами.

Зайдя на страницу проекта в transifex, начинайте перевод ветки "qgis-application": находите фразы, которые хотите перевести или исправить, в строке поиска, и вводите свою версию перевода (некоторые советы по поиску фраз приведены далее в разделе "Практические советы по работе с transifex и важные замечания").

Если вы хотите привлечь внимание проверяющих к определенным строкам (например, они давно хорошо переведены, но не помечены как "проверенные"), то напишите в чат номера таких строк. Номера копируются из текущего адреса в браузере. Например, у вас выделена хорошо переведенная фраза, и в адресной строке вы видите https://www.transifex.com/qgis/QGIS/translate/#ru/qgis-application/52740834, значит нужно скопировать число 52740834.

Строки, которые вы сами изменяли, копировать не нужно - их мы сможем найти по фильтрам с ником и датами. Числа нужны только чтобы пометить хорошие, но не помеченные "проверенными" переводы, которые вы не трогали (не изменяли).

Обсуждайте спорные или сложные моменты в телеграм-чате, не стеснятесь инициировать дискуссии - сообщество для этого и нужно. Также поизучайте возможности transifex, вы можете найти историю переводов для фразы, советы по переводу, словарь и другие возможности.


Практические советы по работе с transifex и важные замечания

Основное время вы будете проводить в интерфейсе transifex, он предоставляет инструменты по поиску фраз и редактированию/созданию переводов для них. Фраза - это отдельный текст в интерфейсе, он может быть как простейшим (из одного слова, например layer), так и огромным (например, текст помощи для инструмента в панели анализа). Вы можете искать фразы по:

  • Их оригинальному написанию (или фрагменту)
  • По их существующему переводу (или фрагменту)
  • По файлу с кодом, где они записаны
  • По контексту (именованной области программного интерфейса QGIS)
  • По множеству других метаданных

За поиск отвечает вот эта панель:

Qgis translate search panel.png

В выпадающих меню, видных на изображении выше, вы можете управлять, каким фильтром хотите воспользоваться сейчас. При этом имя фильтра попадёт в сам текст поиска, вот, к примеру, как будет выглядеть поиск по переводу:

Qgis translate translation search.png

По мере формулирования условий поиска будет формироваться набор фраз, доступных для перевода, в панели прямо под панелью условий поиска:

Qgis translate search result.png

Выбрав фразу кликом левой кнопки мыши, в правой части интерфейса вы увидите инструменты работы с фразой, в частности поле дял ввода перевода, а также раздел "подробности", в котором можно увидеть контекст текста и некоторые другие детали. По этим деталям обычно вы можете понять, является ли эта фраза той, которую вы ищете. Например в примере на скриншоте виден контекст AlgorithmClassification - по нему понятно, откуда фраза. Это важно, так как похожие или одинаковые фразы могут встречаться в разных частях интерфейса программы. Введя перевод, нажимайте кнопку "сохранить перевод".

Приступая к переводу конкретного раздела интерфейса, удобно, увидев название контекста на примере одной из фраз, настроить фильтр поиска на этот контекст: так вы будете видеть все связанные с этой частью интерфейса фразы (это работает не всегда - иногда контекст очень абстрактен). Для поиска по контексту вводите в строку поиска текст вида

context:<имя контекста>, например context:AlgorithmClassification

Qgis translate context search.png

Среди фраз вы можете встретить такие, которые содержат знак & между буквами - это ссылка на горячую клавишу. Если вы хотите, чтобы в переводном варианте также работала горячая клавиша, то можете поставить & перед нужной буквой.

Также среди фраз возможно встретить такую, в которой используются html-теги (выглядят, как номера на цветных бирках). Эти теги необходимо сохранять в переводной версии фразы. Самый простой способ это сделать, это скопировать оригинальный текст фразы с помощью кнопки "копировать исходную строку", а затем в копии, не трогая теги, перевести только текст.

Qgis translate tags.png

При возникновении любых вопросов пишите в телеграм-чат команды переводчиков.

Общие рекомендации

  • Буква ё. Мы стараемся использовать букву ё во всех словах русского языка, в которые она входит.

Перевод списков ключевых слов (тегов)

У инструментов панели анализа и редактора выражений есть теги - перечни ключевых слов, по которым их можно быстро искать. Выглядят, например, так:

export,add,information,measurements,areas,lengths,perimeters, latitudes,longitudes,x,y,z,extract,points,lines,polygons,sinuosity,fields

Мы бы хотели, чтобы искать инструменты и функции можно было по ключевым словам на обоих языках, поэтому для перевода таких списков используется следующая логика:

  • В поле перевода копируются все исходные англоязычные теги
  • К ним через запятую добавляются переводные версии всех тегов. Для примера выше перевод будет следующим:

export,add,information,measurements,areas,lengths,perimeters, latitudes,longitudes,x,y,z,extract,points,lines,polygons,sinuosity, fields,экспорт,добавить,информация,измерение,площадь,длина,периметр, широта,долгота,точки,линии,полигоны,поля

Переводы некоторых спорных ключевых терминов, которые необходимо соблюдать

Здесь будет пополняться список дискуссионных терминов, которые встречаются повсеместно, и нужна единая стратегия для их перевода.

Если вы не согласны, будем рады обсудить в Telegram-чате https://t.me/qgis_translate_ru и выработать общее решение.

  • Authentication - Аутентификация (мотивация: термин аутентификация закреплен в ГОСТ Р ИСО/МЭК 9594-8-98)
  • Extent - Охват. Отброшенные альтернативы: граница, экстент
  • Folder - Каталог. Не "папка" и не "директория".
  • Plugin - Модуль. Не "Плагин".
  • px (сокращенное название единицы измерения "пиксель") - пикс.
  • Script - Сценарий. Не "Скрипт".
  • Symbol - Символ / Symbology - символизация (мотивация: более общая терминология. Привычна ГИС-пользователям в РФ, т.к. используется в ArcGIS много лет). Отброшенные альтернативы: знак.
  • Tile - Тайл (мотивация: термин вошёл в полноценный обиход, даже в гос. контрактах значатся термины вида "тайловый кэш", "векторные тайлы" и подобные им). Отброшенные альтернативы: блок мозаики.
  • Snapping - Прилипание (мотивация: так всегда было в QGIS, и вся документация давно так описывает процесс. Привязка больше ассоциируется с привязкой растров/векторов). Отброшенные альтернативы: привязка.
  • URL - URL (мотивация: аббревиатура закреплена в ГОСТ Р 7.0.5-2008. Понятие URL шире чем адрес). Отброшенные альтернативы: адрес.
  • Editing mode - Режим редактирования, Edits - Изменения. Отброшенные альтернативы: режим правок, правки.
  • Merge - Слияние, не объединение
  • Union - Объединение
  • Data provider - провайдер данных, не источник данных, иначе возникает конфликт с также распространенным понятием data source

Разделы и термины, требующие уборки/внимания в данный момент

  • Блок про высоты в свойствах слоя
  • provider -> провайдер, везде

Все нужные ссылки