Provided by: po4a_0.69-1_all bug

НАЗВАНИЕ

       po4a - обновление PO-файлов и переведённой документации за один проход

СИНТАКСИС

       po4a [параметры] файл_настроек

ОПИСАНИЕ

       po4a (PO for anything, PO для всего) упрощает поддержку переводов документации, используя
       обычные инструменты gettext. Основная идея po4a состоит в том, что оно отделяет перевод
       содержимого от структуры документа. Пошаговое вводное руководство по работе с данным
       проектом можно посмотреть на странице po4a(7).

       Upon execution, po4a parses all documentation files specified in its configuration file.
       It updates the PO files (containing the translation) to reflect any change to the
       documentation, and produce a translated documentation by injecting the content's
       translation (found in the PO files) into the structure of the original master document.

       At first, the PO files only contain the strings to translate from the original
       documentation. This file format allows the translators to manually provide a translation
       for each paragraph extracted by po4a. If the documentation is modified after translation,
       po4a marks the corresponding translations as "fuzzy" in the PO file to request a manual
       review by the translators. The translators can also provide so-called "addendum", that are
       extra content stating for example who did the translation and how to report bugs.

        master documents ---+---->-------->---------+
         (doc authoring)    |                       |
                            V   (po4a executions)   >-----+--> translated
                            |                       |     |     documents
        existing PO files -->--> updated PO files >-+     |
             ^                            |               |
             |                            V               |
             +----------<---------<-------+               ^
              (manual translation process)                |
                                                          |
        addendum -->--------------------------------------+

       The workflow of po4a is asynchronous, as suited to open-source projects. The documentation
       writers author the master documents at their own pace. The translators review and update
       the translations in the PO files. The maintainers rerun po4a on need, to reflect any
       change to the original documentation to the PO files, and to produce updated documentation
       translations, by injecting the latest translation into the latest document structure.

       By default, a given translated document is produced when at least 80% of its content is
       translated. The untranslated text is kept in the original language.  The produced
       documentation thus mixes languages if the translation is not complete. You can change the
       80% threshold with the --keep option described below. Note however that discarding
       translations as soon as they are not 100% may be discouraging for the translators whose
       work will almost never be shown to the users, while showing "translations" that are too
       incomplete may be troubling for the end users.

       Storing the translated documentation files in the version control system is probably a bad
       idea, since they are automatically generated. The precious files are the PO files, that
       contain the hard work of your fellow translators. Also, some people find it easier to
       interact with the translators through an online platform such as weblate, but this is
       naturally fully optional.

   Quick start tutorial
       Let's assume you maintain a program named foo which has a man page man/foo.1 written in
       English (the bridge language in most open-source projects, but po4a can be used from or to
       any language). Some times ago, someone provided a German translation named man/foo.de.1
       and disappeared.  This is a problem because you just got a bug report saying that your
       documentation contains a gravely misleading information that must be fixed in all
       languages, but you don't speak German so you can only modify the original, not the
       translation. Now, another contributor wants to contribute a translation to Japanese, a
       language that you don't master either.

       It is time to convert your documentation to po4a to solve your documentation maintenance
       nightmares. You want to update the doc when needed, you want to ease the work of your
       fellow translators, and you want to ensure that your users never see any outdated and thus
       misleading documentation.

       The conversion includes two steps: setup the po4a infrastructure, and convert the previous
       German translation to salvage the previous work. This latter part is done using
       po4a-gettextize, as follows. As detailed in the documentation of po4a-gettextize(1), this
       process rarely fully automatic, but once it's done, the de.po file containing the German
       translation can be integrated in your po4a workflow.

         po4a-gettextize --format man --master foo.1 --localized foo.de.1 --po de.po

       Let's now configure po4a. With the appropriate file layout, your configuration file could
       be as simple as this:

        [po_directory] man/po4a/

        [type: man] man/foo.1 $lang:man/translated/foo.$lang.1

       It specifies that all PO files (containing the work of the translators) are the man/po4a/
       directory, and that you have only one master file, man/foo.1. If you had several master
       files, you would have several lines similar to the second one. Each such line also specify
       where to write the corresponding translation files. Here, the German translation of
       man/foo.1 is in man/translated/foo.de.1.

       The last thing we need to complete the configuration of po4a is a POT file containing the
       template material that should be used to start a new translation.  Simply create an empty
       file with the .pot extension in the specified po_directory (e.g. man/po4a/foo.pot), and
       po4a will fill it with the expected content.

       Here is a recap of the files in this setup:

         ├── man/
         │   ├── foo.1        <- The original man page, in English.
         │   ├── po4a/
         │   │   ├── de.po    <- The German PO translation, from gettextization.
         │   │   └── foo.pot  <- The POT template of future translations (empty at first)
         │   └── translated/  <- Directory where the translations will be created
         └── po4a.cfg         <- The configuration file.

       Once setup, executing po4a will parse your documentation, update the POT template file,
       use it to update the PO translation files, and use them to update the documentation
       translation files. All in one command:

               po4a --verbose po4a.cfg

       This it. po4a is now fully configured. Once you've fixed your error in man/foo.1, the
       offending paragraph in the German translation will be replaced by the fixed text in
       English. Mixing languages is not optimal, but it's the only way to remove errors in
       translations that you don't even understand, and ensure that the content presented to the
       users is never misleading. Updating the German translation is also much easier in the
       corresponding PO file, so the language mix-up may not last long. Finally, when the
       Japanese translator gives you a jp.po translated file, just drop it in man/po4a/po/. A
       translated page will appear as man/translated/foo.jp.1 (provided that enough content is
       translated) when you run po4a again.

ПАРАМЕТРЫ

       -k, --keep
           Минимальное пороговое значение, в процентах, для сохранения (например, для записи)
           результирующего файла (по умолчанию: 80). То есть, по умолчанию, для того чтобы файл
           был записан, необходимо перевести как минимум 80%.

       -h, --help
           Отобразить короткую справку.

       -M, --master-charset
           Кодировка файлов переводимых документов. Обратите внимание, что все мастер-документы
           должны использовать одну и ту же кодировку.

       -L, --localized-charset
           Кодировка файлов локализованных документов. Обратите внимание, что все переведённые
           документы должны использовать одну и ту же кодировку.

       -A, --addendum-charset
           Кодировка дополнений. Обратите внимание, что все дополнения должны иметь одну и ту же
           кодировку.

       -V, --version
           Отобразить версию и завершить работу сценария.

       -v, --verbose
           Увеличить количество выводимой пояснительной информации.

       -q, --quiet
           Уменьшить количество выводимой пояснительной информации.

       -d, --debug
           Вывод отладочной информации.

       -o, --option
           Дополнительные параметры, передаваемые модулю формата. См. описание возможных
           параметров и их значений в документации каждого конкретного модуля. Например, вы
           можете указать '-o tablecells' парсеру AsciiDoc, в то время как парсер text принимал
           бы '-o tabs=split'.

       -f, --force
           Всегда создавать POT и PO-файлы, даже если po4a считает, что это не требуется.

           Поведение по умолчанию (когда параметр --force не установлен) следующее:

               Если POT-файл уже существует, он создаётся повторно, если мастер-документ или файл
               настроек был недавно изменён (и если не задан параметр --no-update). POT-файл
               также записывается во временный документ и po4a проверяет, что изменения
               действительно необходимы.

               Кроме того, перевод обновляется (regenerated) только если его мастер-документ,
               PO-файл, один из его дополнений или файл настроек были недавно обновлены. Чтобы
               избежать попыток обновления переводов, которые не преодолели порогового значения
               (см. --keep), можно создать файл с расширением .po4a-stamp (см. --stamp).

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

           PO-файлы всегда обновляются из POT-файлов с помощью msgmerge -U.

       --stamp
           Указывает po4a создать файлы-заглушки, если перевод не создаётся, поскольку он не
           преодолел порогового значения. Эти файлы будут называться также как и переведённый
           документ, с расширением .po4a-stamp.

           Примечание: Параметр активирует только создание .po4a-stamp файлов. Файлы-заглушки
           используются всегда если они существуют, и удаляются при выполнении --rm-translations
           или когда файл полностью переведён.

       --no-translations
           Не регенерировать переведённые документы, только обновлять POT и PO-файлы.

       --no-update
           Не менять POT и PO-файлы, только обновить переводы.

       --keep-translations
           Не удалять файлы перевода даже если перевод не соответствует пороговому значению,
           заданному --keep. Этот параметр указывает po4a не создавать новые переведённые файлы с
           недостаточным количеством переведённого материала, а сохранять старые переводы,
           которые находятся в упадке из-за изменений в мастер-документах.

           ПРЕДУПРЕЖДЕНИЕ: этот флаг изменяет поведение po4a достаточно радикальным образом: ваши
           переведённые файлы не будут обновляться вообще, пока перевод не улучшится. Используйте
           этот ключ только если вам больше по нраву поставлять устаревшую, но переведённою
           документацию, нежели только точную, но непереведённую.

       --rm-translations
           Удалить переведённые файлы (подразумевает --no-translations).

       --no-backups
           Этот флаг ничего не делает начиная с 0.41 и может быть удалён в последующих версиях.

       --rm-backups
           Этот флаг ничего не делает начиная с 0.41 и может быть удалён в последующих версиях.

       --translate-only переводимый-файл
           Перевести только указанный файл. Это может быть полезно, чтобы ускорить обработку,
           когда конфигурационный файл содержит значительное количество файлов. Заметим, что этот
           параметр не обновляет PO и POT-файлы. Этот параметр может быть указан несколько раз.

       --variable переменная=значение
           Определяет переменную которая будет использоваться в файле настроек po4a. Каждое
           появление $(переменная) будет замещено на значение. Данный параметр можно использовать
           несколько раз.

       --srcdir ИСХОДНЫЙ_КАТАЛОГ
           Задаёт базовый каталог для всех входных документов, указанных в файле настроек po4a.

           Если заданы оба параметра destdir и srcdir, то po4a будет искать входные файлы в
           следующих каталогах (в порядке перечисления): в destdir, в текущем каталоге и в
           srcdir. Выходные файлы будут записываться в destdir, если этот параметр задан, иначе —
           в текущий каталог.

       --destdir КАТАЛОГ_НАЗНАЧЕНИЯ
           Задаёт базовый каталог для всех выходных документов, указанных в файле настроек po4a
           (см. описание --srcdir выше).

   Параметры, изменяющие заголовок POT-файла
       --porefs тип
           Задаёт формат сносок в комментариях PO-файла. Аргумент l<тип> может быть одним из:
           never — не выводить никаких сносок, noline — не выводить номера строк (точнее, все
           номера строк будут заменены на 1), counter — заменяет номера строк инкрементным
           счётчиком и full — включает полноценные сноски (по умолчанию: full).

       --wrap-po no|newlines|число (по умолчанию: 76)
           Задаёт, как должны переносится строки в PO-файле. С помощью этого параметра можно
           выбрать или чтобы в файлах были удобно расставлены переносы строк, хотя это и может
           привести к конфликтам в git, или чтобы файлы больше подходили для автоматической
           обработки, хотя это и снизит удобство чтения оных людьми.

           Исторически, gettext переносил строки в PO-файлах на 77-м столбце по косметическим
           соображениям. Этот параметр задаёт поведение po4a. Если в нём указано число, po4a
           будет переносить строки в PO-файле после данного столбца и после символов перевода
           строки в содержимом. Если указано newlines, то po4a будет разделять msgid и msgstr на
           строки только в местах перевода строк в самом их содержимом. Если же указано no, то
           po4a вообще не будет переносить строки в PO-файле. Строки комментариев со ссылками на
           местоположение строки в исходном документе всегда разбиваются на строки по усмотрению
           инструментов gettext, которые используются внутри po4a.

           Note that this option has no impact on how the msgid and msgstr are wrapped, i.e.  on
           how newlines are added to the content of these strings.

       --master-language
           Язык файлов переводимых документов. Обратите внимание, что все мастер-документы должны
           быть на одном языке.

       --msgid-bugs-address email@address
           Установить адрес для сообщений об ошибках в msgid. По умолчанию, созданные POT-файлы
           не имеют поля Report-Msgid-Bugs-To.

       --copyright-holder строка
           Указать владельца авторских прав в заголовке POT файла. Значение по умолчанию: «Free
           Software Foundation, Inc.»

       --package-name строка
           Указать имя пакета в заголовке POT-файла. Значение по умолчанию: «PACKAGE».

       --package-version строка
           Указать версию пакета в заголовке POT-файла. Значение по умолчанию: «VERSION».

   Параметры, изменяющие PO-файлы
       --msgmerge-opt параметры
           Дополнительные параметры для msgmerge(1).

           Примечание: $lang будет заменён на текущий язык.

       --no-previous
           This option removes --previous from the options passed to msgmerge. This is necessary
           to support versions of gettext earlier than 0.16.

       --previous
           Данный параметр добавляет --previous к параметрам, передаваемым msgmerge. Для жтого
           требуется gettext версии 0.16 или выше; он активирован по умолчанию.

ФАЙЛ НАСТРОЕК

       po4a ожидает, что в качестве аргумента ему будет передан файл настроек. Этот файл должен
       содержать следующие данные:

       •   Путь к PO-файлам и список языков, доступных в проекте;

       •   Опционально, некоторые глобальные параметры и, так называемые, псевдонимы настроек
           (configuration aliases), которые можно использовать в качестве шаблонов для настройки
           отдельных мастер-файлов;

       •   Список всех мастер-файлов, которые нужно переводить, и специфические параметры для
           оных.

       Каждая строка файла должна содержать директиву, заключённую в квадратные скобки, и её
       параметры. Комментарии начинаются с символа «#» и продолжаются до конца строки. Конец
       строки может быть экранирован (с помощью обратного слеша "\"), в таком случае комментарий
       может быть растянут на несколько строк.

       Несколько полноценных примеров представлены на этой страницы; дополнительные примеры можно
       найти в каталоге "t/cfg" дистрибутива с исходными кодами.

   Поиск POT и PO-файлов
       Самое простое решение — явно задать путь к POT и PO-файлам следующим образом:

        [po4a_paths] man/po/project.pot ru:man/po/ru.po fr:man/po/fr.po

       Это задаст пути к POT-файлу, а также к русскому и французскому PO-файлам.

       Тоже самое может быть записано следующим образом, дабы уменьшить риск ошибок при
       копировании/вставке:

        [po4a_langs] fr ru
        [po4a_paths] man/po/project.pot $lang:man/po/$lang.po

       Вместо $lang будет автоматически подставлен, код языка из списка, что уменьшает риск
       ошибок, вызванных копированием/вставкой при добавлении нового языка.

       Также можно ещё сильнее сократить эту же информацию, задав путь к каталогу с переводами
       следующим образом.

        [po_directory] man/po/

       Указанный каталог должен содержать набор PO-файлов, каждый из которых имеет имя вида
       XX.po, где "XX" — это код языка перевода в соответствии с ISO 639-1. В каталоге также
       должен быть один единственный POT-файл, с расширением ".pot". Во время первого запуска
       этот файл может быть пустым, но он должен существовать (po4a не может сам угадать, какое
       имя файла ему вставить перед расширением).

       Заметьте, что вы можете выбрать только одно: или "po_directory", или "po4a_paths". Первый
       вариант ("po_directory") более компактен, что снижает риск ошибок из-за
       копирования/вставки, но заставляет вас использовать предопределённые имена файлов и
       структуру проекта. Второй ("po4a_paths") — более явный, вероятно, более читаемый и
       рекомендованный в случае, если вы впервые используете po4a для своего проекта.

       Централизованные или раздельные PO-файлы?

       По умолчанию po4a создаёт один большой PO-файл для каждого языка, содержащий весь ваш
       перевод. С разрастанием вашего проекта размер этих файлов может стать проблемой. При
       использовании Weblate возможно задать приоритеты каждому сегменту перевода (т.е. msgid),
       чтобы важные строки переводились первыми, хотя некоторые команды всё же предпочитают
       разделять перевод на несколько файлов.

       Чтобы использовать отдельный PO-файл для каждого мастер-файла, просто добавьте $master в
       имя своего PO-файла в директиве "[po4a_paths]".

        [po4a_paths] doc/$master/$master.pot $lang:doc/$master/$lang.po

       With this line, po4a will produce separate POT and PO files for each document to
       translate.  For example, if you have 3 documents and 5 languages, this will result in 3
       POT files and 15 PO files. These files are named as specified on the "po4a_paths"
       template, with $master substituted to the basename of each document to translate. In case
       of name conflict, you can specify the POT file to use as follows, with the "pot="
       parameter.

       This feature can also be used to group several translated files into the same POT file.
       The following example only produces 2 POT files: l10n/po/foo.pot (containing the material
       from foo/gui.xml) and l10n/po/bar.pot (containing the material from both bar/gui.xml and
       bar/cli.xml).

        [po4a_langs] de fr ja
        [po4a_paths] l10n/po/$master.pot $lang:l10n/po/$master.$lang.po
        [type: xml] foo/gui.xml $lang:foo/gui.$lang.xml pot=foo
        [type: xml] bar/gui.xml $lang:bar/gui.$lang.xml pot=bar
        [type: xml] bar/cli.xml $lang:bar/cli.$lang.xml pot=bar

       В раздельном режиме po4a создаёт временный сборник всех переводов во время обновления
       PO-файлов, чтобы объединить перевод одинаковых строк из различных PO-файлов. Если два
       PO-файла имеют различные переводы для одной и той же строки, po4a пометит данные переводы
       как неточные и добавит оба варианта в каждый PO-файл, содержащий эту строку. Затем, когда
       переводчик снимет пометку «неточно» хотя бы в одном PO-файле, перевод данной строки будет
       обновлён во всех PO-файлах автоматически.

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

        [type: sgml] doc/my_stuff.sgml fr:doc/fr/mon_truc.sgml \
                     ru:doc/ru/mein_kram.sgml
        [type: man] script fr:doc/fr/script.1 ru:doc/ru/script.1
        [type: docbook] doc/script.xml fr:doc/fr/script.xml \
                    ru:doc/ru/script.xml

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

        [type: sgml]    doc/my_stuff.sgml $lang:doc/$lang/my_stuff.sgml
        [type: man]     script.1          $lang:po/$lang/script.1
        [type: docbook] doc/script.xml    $lang:doc/$lang/script.xml

   Задание параметров
       Есть два вида параметров: параметры po4a, которые задают значения по умолчанию для
       параметров командной строки самого po4a, и параметры форматов, которые изменяют поведение
       парсера конкретного формата. Параметром po4a будет являться, например, если вы зададите в
       своём файле настроек, что значение по умолчанию параметра командной строки --keep будет
       50% вместо 80%. Параметры форматов описаны на справочной странице каждого отдельного
       модуля парсера конкретного формата, например Locale::Po4a::Xml(3pm). Вы, например, можете
       передать nostrip парсеру XML, чтобы он не убирал пробелы у извлекаемых им строк.

       Вы можете передать эти параметры для конкретного мастер-файла или даже для перевода файла
       на конкретный язык, используя "opt:" и "opt_XX:" для языка "XX". В примере ниже, параметр
       nostrip  передаётся парсеру XML (для всех языков), а порог завершения перевода будет
       уменьшен до 0% только для французского (чтобы он никогда не отбрасывался).

        [type:xml] toto.xml $lang:toto.$lang.xml opt:"-o nostrip" opt_fr:"--keep 0"

       В любом случае, такие настройки должны находится в конце строки. Имена файлов должны идти
       вначале, затем дополнение, если есть (см. ниже), и только затем параметры. Группировка
       разных частей строки параметров не очень важна, ибо внутри себя po4a просто соединяет их
       все в одну строку. Следующие варианты абсолютно эквивалентны:

         [type:xml] toto.xml $lang:toto.$lang.xml opt:"--keep 20" opt:"-o nostrip" opt_fr:"--keep 0"
         [type:xml] toto.xml $lang:toto.$lang.xml opt:"--keep 20 -o nostrip" opt_fr:"--keep 0"
         [type:xml] toto.xml $lang:toto.$lang.xml opt:--keep opt:20 opt:-o opt:nostrip opt_fr:--keep opt_fr:0

       Заметьте, что параметры, специфичные для отдельных языков не используются во время
       создания POT-файла. Например, невозможно передать nostrip парсеру только для французского
       перевода, так как тот же самый POT-файл используется для обновления всех языков. Так что
       специфичными для языка могут быть только те параметры, которые используются во время
       создания перевода, как параметр "--keep".

       Настройка псевдонимов (aliases)

       Наилучшим способом передать одинаковые параметры различным файлам будет определить
       псевдоним (alias) типа, как это показано ниже. В примере "--keep 0" передаётся всех
       документов на итальянский с помощью типа "test", который является расширением типа "man".

         [po4a_alias:test] man opt_it:"--keep 0"
         [type: test] man/page.1 $lang:man/$lang/page.1

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

         [po4a_alias:man] man opt_it:"--keep 0"
         [type: man] man/page.1 $lang:man/$lang/page.1

       Глобальные параметры по умолчанию

       Вы также можете использовать строки с директивой "[options]", чтобы определить параметры,
       которые должны использоваться для всех файлов, независимо от их типа.

         [options] --keep 20 --option nostrip

       Как и параметры командной строки, параметры передаваемые в файле настроек можно сокращать:

         [options] -k 20 -o nostrip

       Приоритет параметров

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

       •   Директивы "[options]" задают значения по умолчанию, которые могут быть переопределены
           любым другим источником.

       •   Затем идут псевдонимы типов.При этом настройки, специфичные для конкретных языков
           переопределяют те что применяются ко всем языкам.

       •   Настройки, специфичные для конкретного мастер-файла переопределяют и настройки по
           умолчанию и те что заданы в псевдонимах типов. В данном случае настройки, специфичные
           для языков, также переопределяют общие.

       •   Наконец, параметры, переданные в командной строке переопределяют любые параметры из
           файла настройки.

       Пример

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

        [po_directory] man/po/

        [options] --master-charset UTF-8

        [po4a_alias:man] man opt:"-o \"mdoc=NAME,SEE ALSO\""
        [type:man] t-05-config/test02_man.1 $lang:tmp/test02_man.$lang.1 \
                   opt:"-k 75" opt_it:"-L UTF-8" opt_fr:--verbose

   Дополнение (addendum): добавление дополнительного содержимого в перевод
       Если вы хотите добавить дополнительный раздел в перевод, например отдать дань уважения
       переводчику, тогда вам нужно указать дополнение, при определении мастер-документа.
       Подробности о синтаксисе файлов-дополнений можно получить на справочной странице po4a(7).

        [type: pod] script fr:doc/fr/script.1 \
                    add_fr:doc/l10n/script.fr.add

       Вы также можете использовать шаблоны языков:

        [type: pod] script $lang:doc/$lang/script.1 \
                    add_$lang:doc/l10n/script.$lang.add

       Если дополнение не получается применить, то весь перевод отбрасывается.

       Модификаторы объявления дополнений

       Модификаторы дополнений могут делать файл настройки проще, когда не все языки имеют
       дополнение или когда список дополнений меняется от языка к языку. Модификатор — это один
       символ, стоящий перед именем файла.

       ? Использовать файл путь_к_дополнению, если этот файл существует, в противном случае —
         ничего не делать.

       @ путь_к_дополнению является не обычным дополнением, а файлом содержащим список
         дополнений, по одному в каждой строке. Каждое такое дополнение также могут предварять
         свои модификаторы.

       ! путь_к_дополнению отбрасывается, он не загружается и не будет загружаться никакими
         будущими определениями дополнений.

       Ниже приводится дополнение на любом языке, но только если оно существует. Если дополнение
       не существует, об ошибке не сообщается.

        [type: pod] script $lang:doc/$lang/script.1  add_$lang:?doc/l10n/script.$lang.add

       Следующий пример задаёт список дополнений для каждого языка:

        [type: pod] script $lang:doc/$lang/script.1  add_$lang:@doc/l10n/script.$lang.add

   Фильтрация переведённых строк
       Иногда, вам хочется скрыть некоторые строки от переводчиков. Для этого вы можете задать
       параметр "pot_in" в определении мастер-файла, дабы указать имя файла, из которого следует
       извлекать строки для создания POT-файла для перевода вместо настоящего мастер-файла.
       Например:

         [type:docbook] book.xml          \
                 pot_in:book-filtered.xml \
                 $lang:book.$lang.xml

       С такими настройками строки для перевода будут извлекаться из book-filtered.xml (который
       должен быть создан до вызова po4a), а переведённые документы будут собираться на основе
       book.xml. В результате, все строки, которые есть только в book.xml, но не в
       book-filtered.xml не будут включены в PO-файлы, что предотвратит возможность того, что
       переводчики переведут что-то, что не должно быть переведено. Таким образом, эти строки
       останутся без изменений во время создания переведённых документов. Это, конечно, снижает
       фактический уровень готовности перевода, так что вам придётся снизить значение параметра
       "--keep", дабы документ всё равно создавался.

СМОТРИТЕ ТАКЖЕ

       po4a-gettextize(1), po4a(7).

АВТОРЫ

        Denis Barbier <barbier@linuxfr.org>
        Nicolas François <nicolas.francois@centraliens.net>
        Martin Quinson (mquinson#debian.org)

АВТОРСКИЕ ПРАВА И ЛИЦЕНЗИИ

       Copyright 2002-2022 by SPI, inc.

       Данная программа является свободным программным обеспечением; вы можете распространять
       и/или изменять её на условиях Универсальной общественной лицензии (GPL) GNU (см. файл
       COPYING).