Важно
Перевод - это работа сообщества : ссылка:Вы можете присоединиться. Эта страница в настоящее время переводится |прогресс перевода|.
4. Рекомендации по переводу
Это руководство призвано помочь переводчику. Сначала объясняется, как можно присоединиться к команде переводчиков. Затем объясняется общий процесс выполнения технического перевода. Затем объясняется перевод на примере реального английского документа .rst
, переведенного на голландский язык. В заключение приводится краткое изложение правил перевода.
Примечание
Хотя эти рекомендации посвящены документации QGIS, описанные ниже методы и правила также применимы к приложениям QGIS.
4.1. Стать переводчиком
Проект QGIS постоянно ищет людей, готовых потратить еще немного времени на перевод QGIS на иностранный язык - возможно, даже для координации работы по переводу.
Мы пытаемся улучшить процесс управления проектами и распределить нагрузку более равномерно между людьми, у каждого из которых есть своя зона ответственности, поэтому любой ваш вклад будет высоко оценен.
Если вы хотите выдвинуть свою кандидатуру в качестве координатора нового языка, пожалуйста, действуйте. Если несколько человек выдвигают себя в качестве координатора по одному и тому же языку, пожалуйста, свяжитесь друг с другом и решите, как вы будете управлять своими усилиями.
4.1.1. Transifex
Веб-платформа для перевода Transifex используется для всех переводов QGIS: самого настольного приложения (или графического интерфейса) и документации. Поэтому первое, что вам понадобится, - это учетная запись, чтобы войти в систему и начать работу.
4.1.2. Присоединиться к проекту
Перейти на сайт https://explore.transifex.com/qgis/
Вы можете изучить доступные проекты, которые мы переводим, определить их целевые языки и получить различную статистику:
QGIS Desktop для всех фрагментов текста, доступных в приложениях QGIS (QGIS Desktop и QGIS Server),
QGIS Документация для официальной документации LTR <https://docs.qgis.org/latest/>`_
Нажмите на проект, которому вы хотели бы помочь в переводе
Нажмите на ВСТУПИТЬ В ЭТОТ ПРОЕКТ с правой стороны. Вам будет предложено зарегистрироваться.
Создайте свою учетную запись или подключитесь с помощью учетной записи сторонней платформы. Подтвердите свою учетную запись по ссылке в полученном вами электронном письме.
Логин
Затем вам будет предложено выбрать язык, на который вы хотите помочь с переводом. Обратите внимание, что мы стараемся максимально упростить процесс и указываем только целевые языки, независимо от параметра страны (например,
французский (fr)
и NOTфранцузский (Франция) (fr_FR)
). Только если есть заметные различия в языках (например, португальский в Португалии и Бразилии), мы можем разрешить разные версии.Найдите целевой язык, то есть язык, на который вы хотите помочь перевести QGIS, но не обязательно все языки, которыми вы владеете:
Если он отмечен как
уже добавленный
, выберите его и нажмите :guilabel:Присоединиться к проекту
.Если он не отмечен как уже добавленный, выберите его и нажмите Запросить язык. Имейте в виду, что перевод всего проекта займет несколько дней работы, а то и недель! И снова, простите за повторение, речь не идет о том, чтобы выбрать ВСЕ языки, которыми вы владеете.
Теперь вам нужно подождать, пока координатор языка или сопровождающие проекта обработают ваш запрос. Вы получите уведомление по электронной почте, когда ваш запрос будет принят. Если на ваш запрос нет ответа в течение недели, пожалуйста, напишите вашему языковому координатору в Transifex или в список рассылки QGIS Translators.
Вы также можете присоединиться к любому из других проектов QGIS и помогать везде.
4.1.3. Перевод
Как только ваш запрос будет принят, вы сможете перевести любой текст в выбранном вами проекте (проектах). Просто нажмите на свой язык, выберите главу, которую хотите перевести, и нажмите «Перевести». Легко, правда?
Для того чтобы помочь вам сделать качественный перевод, ниже приведены некоторые инструкции. Мы настоятельно рекомендуем вам ознакомиться с ними.
Совет
Быстрый доступ к переводимым файлам в Transifex
Если вы обнаружили неправильный или отсутствующий перевод в текущей документации, вы можете воспользоваться ссылкой Перевести страницу
в левом нижнем выпадающем меню страницы, чтобы перейти к ее источникам в Transifex и выполнить любое обновление по своему усмотрению.
4.2. Процесс перевода
Документация QGIS написана на английском языке с использованием файлов .rst
. Для того чтобы обеспечить перевод:
Сценарий предварительной сборки создает файлы перевода с именем
.po
для английского языка в папке/QGIS-Documentation/locale/en
.Предложения в файлах
.po
размещаются на веб-платформе Transifex и становятся доступными для переводчиков, которые могут начать переводить с английского на свой язык с помощью редактора.Когда файл переведен на 100 %, переведенные строки автоматически возвращаются в хранилище документации под
/QGIS-Documentation/locale/<language>
.При следующей сборке документации (которая происходит не реже одного раза в день - см. время внизу страницы) скрипт использует предложения для создания переведенного вывода.
Для не полностью переведенных файлов скрипт каждые две недели извлекает переведенные строки из Transifex на Github, которые также публикуются в следующей сборке.
При обновлении файла
.rst
обновляется английский файл.po
и изменения переносятся в соответствующий файл в Transifex. Это означает, что при добавлении нового абзаца в уже переведенный документ.rst
, в переведенный файл.po
добавляются только новые/обновленные предложения, которые необходимо перевести.
Примечание
Перевод особенностей QGIS Desktop
Основное отличие перевода приложений QGIS заключается в том, что вместо файлов .po
все переводимые строки в файлах .py
, .cpp
, .yaml
, формирующих конкретную версию приложения, помещаются в Transifex и извлекаются из него в виде одного файла .ts
(например, qgis-application/qgis_en.ts (branch release-3_30)
). Переводы выкладываются на Github в ветке разработки (ежедневно) и в момент релиза (для каждой выпущенной версии).
На данный момент для перевода QGIS используются два различных инструмента:
Веб-платформа Transifex, самый простой и рекомендуемый способ перевода QGIS, прозрачно выполняет описанный выше процесс и собирает все переводимые тексты в одном месте для переводчика. Просто выберите нужные файлы и переведите. Переведенные файлы хранятся в платформе до выхода очередного релиза.
Qt Linguist, инструмент для разработки Qt, требует, чтобы переводчик извлекал локально файлы
.po
(или.ts
) из исходного кода, переводил их, а затем отправлял обратно.
Обратите внимание, что какой бы инструмент вы ни выбрали, правила перевода одинаковы.
4.3. Перевести файл
Для иллюстрирования процесса перевода мы возьмем описание модуля теплокарта. В этом примере мы выполним перевод с английского на голландский, но общие принципы будут одинаковы и для остальных языков и документов.
Источник документа можно найти здесь:
QGIS-Documentation/source/docs/user_manual/plugins/plugins_heatmap.rst
Почему мы выбрали именно этот файл?
Он включает в себя изображения, подписи, заголовки, ссылки и замены.
И кроме того, его автором являюсь я, так что мне проще его переводить ;-).
В процессе сборки был создан английский файл .po
, который можно найти здесь:
QGIS-Documentation/locale/en/LC_MESSAGES/docs/user_manual/plugins/plugins_heatmap.po
Эквивалентный голландский файл .po
(по сути, копия) можно найти здесь:
QGIS-Documentation/locale/nl/LC_MESSAGES/docs/user_manual/plugins/plugins_heatmap.po
В этом файле вы увидите крошечный файл .mo
, который указывает на то, что в нем еще нет ни одного перевода.
4.3.1. Перевод в Transifex
Для того чтобы переводить с помощью Transifex, вам необходимо:
создайте учетную запись на Transifex и присоединитесь к проекту QGIS.
Войдя в состав языковой команды, нажмите на соответствующий проект (в данном случае
QGIS Документация
). Отобразится список доступных языков с указанием коэффициента перевода.Рис. 4.22 Выберите язык для перевода в меню Transifex
Наведите курсор на свой язык и нажмите на любой из них:
Вид ресурсов: теперь отображаются переводимые файлы
.po
с указанием коэффициента перевода, количества строк и некоторых других метаданных.или Translate: открывает интерфейс перевода со всеми доступными файлами
.po
Определите файл, который вы хотите перевести (в нашем случае мы ищем
docs_user-manual_plugins_plugins-heatmap
, файл плагина heatmap) или любой незавершенный файл и нажмите на него: строки в файлах будут загружены, и вы сможете использовать интерфейс для фильтрации, перевода, предложения перевода…Совет
Нажав на ссылку
Перевести страницу
в левом нижнем выпадающем меню страницы, вы перейдете непосредственно на соответствующую страницу перевода в Transifex.Все, что вам нужно сделать, это выделить каждый текст и перевести его, следуя guidelines.
Дополнительную информацию об использовании Transifex Web Editor см. на сайте https://help.transifex.com/en/articles/6318216-translating-with-the-web-editor.
4.3.2. Перевод в Qt Linguist
С помощью Qt Linguist вам нужно:
Взять вручную файл(ы)
.po
или.ts
. Это можно сделать, загрузив файл(ы) либо с платформы Transifex, либо из папкиlocale/$language
исходного репозитория (на GitHub),перейдите к локальному переводу
загрузите измененные файлы в их источники (Transifex или GitHub).
Хотя загрузка и выгрузка переводимых файлов может осуществляться с помощью Transifex, не рекомендуется использовать этот процесс. Поскольку на Transifex нет системы версионирования, загруженный вами файл просто заменит существующий и, возможно, перезапишет все изменения, сделанные другими пользователями платформы за это время.
При первом открытии файла в Qt Linguist вы увидите следующее диалоговое окно:

Рис. 4.23 Выберите язык для перевода в меню лингвиста
Поле «Язык перевода» должно быть заполнено правильно. В поле «Исходный язык» можно оставить значение по умолчанию POSIX, аналогично и с полем «Страна/Регион» — там можно оставить «Любая страна».
Когда вы нажмете кнопку OK, Qt Linguist заполнится предложениями, и вы сможете начать перевод, см. Рис. 4.24.

Рис. 4.24 Переведите с помощью меню лингвиста
На панели инструментов находится ряд кнопок, облегчающих работу.
Кнопка «Перевод сделан дальше» - самая важная кнопка. Если элемент нуждается в переводе, вы вводите перевод в текстовое поле, а затем нажимаете эту кнопку. Если элемент не нуждается в переводе, просто оставьте текстовое поле для перевода пустым и также нажмите эту кнопку, что означает, что элемент выполнен и вы продолжаете работу со следующим элементом.
linguist_next_todo| Следующий незавершённый перевод — выполняет переход к первому непереведённому элементу. Полезна, когда исходный документ был изменён и только новые/одновлённые строки нуждаются в переводе.
Предыдущий незавершённый перевод, выполняет поиск в обратном направлении и переходит к первому найденному непереведённому элементу.
Дополнительную информацию об использовании Qt Linguist можно найти на сайте https://doc.qt.io/qt-5/linguist-translators.html
Предупреждение
Если вы хотите загрузить содержимое для перевода из исходного репозитория, никогда не делайте этого в ветке мастер
. Для переводов всегда доступны ветки переводов, как только документ полностью обновлен на английском языке для определенной версии. Например, чтобы перевести руководство по QGIS 2.8, нужно использовать ветку manual_en_v2.8.
4.3.3. Перевод руководства пользователя
Теперь можно начинать перевод файла plugin_heatmap!
Перевод большинства предложений не вызовет затруднений. Во время этого сеанса перевода я укажу, какие части (первые высказывания) нуждаются в особом переводе.
Ниже мы видим интересное предложение для перевода:
The |heatmap| :sup:`Heatmap` plugin allows to create a heatmap from a
point vector map. A heatmap is a raster map showing the density or
magnitude of point related information. From the result "hotspots" can
easily be identified.
Этот блок содержит два элемента разметки RST:
|heatmap|
слова между|
являются подстановками и никогда не переводятся! Они будут заменены другим текстом или изображением!:sup:`Heatmap
, оператор:sup:
является оператором суперпозиции и печатает следующий текст немного выше. Это используется для отображения всплывающих текстов, которые появляются при наведении курсора на элемент панели инструментов, и это может отличаться от того, что на самом деле переводится в приложении QGIS. В голландском случае это не так!
Весь остальной обычный текст можно переводить!
Следующий элемент перевода содержит утверждение :ref:
, которое обычно используется для ссылки на другой раздел в руководстве! Текст, следующий за утверждением :ref:
, никогда не должен быть изменен, поскольку он является уникальным идентификатором!
First this core plugin needs to be activated using the Plugin Manager
(see Section :ref:`load_core_plugin`). After activation the heatmap icon
|heatmap| can be found in the Raster Toolbar.
В данном случае load_core_plugin
- это уникальный идентификатор ссылки, размещенный перед rst-элементом, который имеет заголовок. Утверждение ref будет заменено текстом заголовка и превращено в гиперссылку. Когда заголовок, на который ссылается эта ссылка, будет переведен, все ссылки на этот заголовок также будут автоматически переведены.
Следующий блок текста содержит элемент :menuselection:
за которым следует текст пункта меню QGIS. Он должен быть переведён точно так же как и пункт меню в самом приложении.
Select from menu :menuselection:`View --> Toolbars --> Raster` to activate
the Raster Toolbar when it is not yet activated.
В нашем примере «View –>» будет переведено как «Beeld –>», так как именно такой перевод используется в голландской локализации QGIS.
Чуть позже мы встретим вот такой элемент:
The |heatmap| :sup:`Heatmap` tool button starts the Dialog of the Heatmap
plugin (see :numref:`figure_heatmap_settings`).
Она содержит ссылку на рисунок figure_heatmap_settings_
, и, как и ссылка на раздел, эта ссылка не должна быть изменена!!! Определение ссылки из rst-документа не включено в файл .po
и поэтому не может быть изменено. Это означает, что ссылки на рисунки не могут быть переведены. При создании HTML-документа вы увидите figure_heatmap_settings
. При создании PDF-документа figure_heatmap_settings_
заменяется номером рисунка.
Следующий блок содержит несколько элементов разметки:
**Input Point dialog**: Provides a selection of loaded point vector maps.
Не удаляйте звездочки в строке выше. Он напечатает текст, выделенный жирным шрифтом. Сам текст часто является текстом, включенным в диалог, и может быть переведен в приложении.
Следующий блок текста содержит элемент :guilabel:
.
When the |checkbox| :guilabel:`Advanced` checkbox is checked it will
give access to additional advanced options.
Текст Дополнительно
тега guilabel вполне может быть переведен в приложении QGIS и, вероятно, должен быть изменен!
Следующий элемент перевода содержит ``аэропорты``. Кавычки используются для того, чтобы придать тексту другой шрифт. В данном случае это буквальное значение, которое не нуждается в переводе.
For the following example, we will use the ``airports`` vector point
layer from the QGIS sample dataset (see :ref:`label_sampledata`).
Another excellent QGIS tutorial on making heatmaps can be found on
`https://www.qgistutorials.com
<https://www.qgistutorials.com/en/docs/creating_heatmaps.html>`_.
Этот элемент также включает гиперссылку с url и внешним представлением. url, конечно же, следует оставить нетронутым, но вы можете изменить внешний текст ``https://www.qgistutorials.com““, который будет виден читателю. Никогда не удаляйте подчеркивание в конце гиперссылки, которое является ее неотъемлемой частью!!!
4.3.4. Основные правила
Не изменяйте текст между двумя символами
|
, такими как|bronze|
,|checkbox|
,|labels|
,|selectString|
,|addLayer|
… Это специальные теги, используемые для замены изображенийНе изменяйте ссылки, начинающиеся с ролей типа
:ref:
,:file:
,:numref:
, если только они не содержат заголовок. В этом случае вы можете перевести заголовок, но оставить без изменений ссылку (т. е. текст между<
и>
)Совет
Когда название предоставляется для ссылки, Transifex может отобразить номер в английском исходном тексте вместо части ссылки. Щелкните по номеру в исходном тексте, чтобы добавить ссылку рядом с переводимым названием.
Не изменяйте ссылки, которые заканчиваются символом подчеркивания, например
figure_labels_1_
Не изменяйте url в гиперссылках, но вы можете изменить внешнее описание. Оставьте знак подчеркивания в конце гиперссылки без дополнительного интервала (
>`_
)Измените текст внутри кавычек, следующих за тегами
:index:
,:sup:
,:guilabel:
и:menuselection:
. Проверьте, переводится ли он в приложении QGIS. Не изменяйте сам тег.Текст между двойными звездочками и двойными кавычками часто указывает на значения или имена полей, иногда они требуют перевода, иногда нет.
Не забывайте использовать точно такие же (количество) специальные символы исходного текста, такие как
`
,``
,*
,**
,::
. Они способствуют косметичности предоставляемой информацииНе начинайте и не заканчивайте текст, содержащий специальные символы или теги, пробелом
Не заканчивайте переведенные строки новым абзацем, иначе текст не будет переведен при генерации html.
Следуйте этим простым правилам и ваш перевод будет выглядеть хорошо!
По всем вопросам обращайтесь в QGIS Community Team или QGIS Translation Team.