.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "PO-DEBCONF 7" .TH PO-DEBCONF 7 "2020-12-30" "" "po-debconf" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .Vb 2 \& Translation: \& debian\-l10n\-russian@lists.debian.org \& \& Yuri Kozlov , 2005, 2006 .Ve .SH "НАЗВАНИЕ" .IX Header "НАЗВАНИЕ" po-debconf \*(-- общее описание .SH "ОПИСАНИЕ" .IX Header "ОПИСАНИЕ" Задачей \f(CW\*(C`debconf\*(C'\fR является обеспечение простой настройки пакетов для пользователя. Чтобы достигнуть этого, очень важно, чтобы пользователю задавались вопросы на родном языке. Переводчикам нужна структура для облегчения работы над переводами, чтобы не вникать в суть разработки пакета; \&\f(CW\*(C`po\-debconf\*(C'\fR была разработана совместимой со стандартными инструментами \&\f(CW\*(C`gettext\*(C'\fR для перевода шаблонов debconf. .SH "ДОБАВЛЕНИЕ ПОДДЕРЖКИ ИНТЕРНАЦИОНАЛИЗАЦИИ (I18N) В ФАЙЛЫ ШАБЛОНОВ DEBCONF" .IX Header "ДОБАВЛЕНИЕ ПОДДЕРЖКИ ИНТЕРНАЦИОНАЛИЗАЦИИ (I18N) В ФАЙЛЫ ШАБЛОНОВ DEBCONF" Если вы добавляете поддержку debconf в свой пакет, то вам нужно написать файл шаблонов на английском языке. Для того чтобы правильно добавить поддержку интернационализации (i18n) в свой пакет, требуется: .IP "\- создать \fIdebian/po/POTFILES.in\fR" 4 .IX Item "- создать debian/po/POTFILES.in" Этот файл содержит список мастер\-шаблонов. Обычно он содержит только одну строку: .Sp .Vb 1 \& [type: gettext/rfc822deb] templates .Ve .Sp Пути относительно родительского каталога. .IP "\- в каждом шаблоне в начале переводимых полей указать символ подчёркивания" 4 .IX Item "- в каждом шаблоне в начале переводимых полей указать символ подчёркивания" Обычно переводятся поля \f(CW\*(C`Description\*(C'\fR, \f(CW\*(C`Choices\*(C'\fR и иногда \f(CW\*(C`Default\*(C'\fR. .IP "\- запустить \fBdebconf-updatepo\fR" 4 .IX Item "- запустить debconf-updatepo" Она создаст файл \fIdebian/po/templates.pot\fR, который переводчики будут переводить на свой язык. .ie n .IP "\- добавить зависимость сборки от ""po\-debconf"" в файл \fIdebian/control\fR" 4 .el .IP "\- добавить зависимость сборки от \f(CWpo\-debconf\fR в файл \fIdebian/control\fR" 4 .IX Item "- добавить зависимость сборки от po-debconf в файл debian/control" .SH "ОБНОВЛЕНИЕ ШАБЛОНОВ" .IX Header "ОБНОВЛЕНИЕ ШАБЛОНОВ" Чтобы помочь переводчикам, PO\-файлы пакета должны всегда поддерживаться в актуальном состоянии, иначе переводчики могут потерять своё время впустую, переводя неиспользуемые строки. Для этого, просто запустите следующую команду без параметров: .PP .Vb 1 \& $ debconf\-updatepo .Ve .PP Вы должны запускать эту команду каждый раз не только после изменений в английских шаблонах, но и когда получаете новые или обновлённые файлы переводов, так как переводчики могли работать над устаревшим PO\-файлом. .PP При переименовании, добавлении или удалении файлов шаблонов, также не забудьте внести соответствующие изменения в файл \fIdebian/po/POTFILES.in\fR, иначе английские строки пропадут из PO\-файлов и будут показаны пользователям даже если PO\-файлы полностью переведены. .PP Программа \fBdebconf-updatepo\fR является идемпотентной, она изменяет PO\-файлы только, если для них изменилось содержание. Таким образом лучшим решением поддерживать актуальное состояние PO\-файлов в пакете \*(-- это запускать эту команду в правиле \f(CW\*(C`clean\*(C'\fR файла \fIdebian/rules\fR. .PP Заметьте, что вы должны запускать \fBdebconf-updatepo\fR даже в случае использования \fBdh_installdebconf\fR. Последний вызывает \fBpo2debconf\fR, который в свою очередь запускает \fBdebconf-updatepo\fR, если обнаруживаются устаревшие файлы, но это не очень хорошее решение как минимум по двум причинам: .IP "1." 3 Для обнаружения устаревших файлов \fBpo2debconf\fR использует временные отметки и может неправильно сработать, если используется \f(CW\*(C`pbuilder\*(C'\fR или если устаревшие переводы были записаны на диск после изменения шаблонов .IP "2." 3 \&\fBdh_installdebconf\fR вызывается уже после генерации файла \f(CW\*(C`.diff.gz\*(C'\fR .SH "ОБЪЕДИНЕНИЕ ПЕРЕВОДОВ И ОРИГИНАЛА" .IX Header "ОБЪЕДИНЕНИЕ ПЕРЕВОДОВ И ОРИГИНАЛА" Вам нужно проверить, что при сборке пакета переводы попадают в готовый пакет. Вы можете делать это вручную или автоматически с помощью сценария \&\fBdh_installdebconf\fR (проверьте, что в зависимостях сборки есть \f(CW\*(C`debhelper (>= 4.1.16)\*(C'\fR). .PP Чтобы сделать это вручную, нужно объединить шаблоны и переводы во время сборки (и должна быть зависимость от \f(CW\*(C`po\-debconf\*(C'\fR), например: .PP .Vb 1 \& $ po2debconf debian/templates > debian/tmp/DEBIAN/templates .Ve .PP \&\fBОСТОРОЖНО\fR: эти два файла с именем \fItemplates\fR имеют разное содержимое. Первый содержит только английский текст и некоторые поля, помеченные для перевода, а второй содержит текст на всех остальных языках. Надо добавить, что вы НЕ МОЖЕТЕ хранить только объединённые шаблоны, иначе вы не сможете договориться с переводчиками, чтобы они выполняли обновление. .SH "НОВЫЕ МАСТЕР ШАБЛОНЫ" .IX Header "НОВЫЕ МАСТЕР ШАБЛОНЫ" Новый формат исходных мастер\-шаблонов почти повторяет распространяемый файл шаблонов, но здесь переводимые поля начинаются с символа подчёркивания. Пример: .PP .Vb 10 \& Template: debconf/frontend \& Type: select \& _Choices: Dialog, Readline, Gnome, Editor, Noninteractive \& Default: Dialog \& _Description: Interface to use for configuring packages: \& Packages that use debconf for configuration share a common look and \& feel. You can select the type of user interface they use. \& . \& The dialog frontend is a full\-screen, character based interface, \& while the readline frontend uses a more traditional plain text \& interface, and the gnome frontend is a modern X interface. The \& editor frontend lets you configure things using your favorite text \& editor. The noninteractive frontend never asks you any questions. .Ve .SS "РАЗДЕЛЕНИЕ СПИСКА ВЫБОРА" .IX Subsection "РАЗДЕЛЕНИЕ СПИСКА ВЫБОРА" Начиная с \f(CW\*(C`po\-debconf\*(C'\fR версии 0.6.0, локализованные имена полей могут содержать два начальных подчёркивания. В этом случае предполагается, что значением поля является список значений через запятую, которые будут помещены в отдельные msgid. То есть, если бы предыдущий пример содержал .PP .Vb 1 \& _\|_Choices: Dialog, Readline, Gnome, Editor, Noninteractive .Ve .PP то было бы 5 разных msgid. Заметим, что пробелы после запятых не обязательны. .PP Если список выбора никогда не изменится, то \f(CW\*(C`_Choices\*(C'\fR замечательно подходит. Однако, разделение такого списка может помочь избежать частых ошибок в переводах, таких как пропуск варианта или использование нестандартных запятых. Поэтому используйте \f(CW\*(C`_\|_Choices\*(C'\fR \*(-- это облегчит работу переводчика. .PP К сожалению, если вы решили переключиться с \f(CW\*(C`_Choices\*(C'\fR на \f(CW\*(C`_\|_Choices\*(C'\fR,все переводы будут отмечены как неточные. Можно сделать это изменение без потери переводов (требуется \f(CW\*(C`po\-debconf\*(C'\fR >= 1.0). Предположим, что вы хотите переключить предыдущий пример на \f(CW\*(C`_\|_Choices\*(C'\fR. Скопируйте файл \fItemplates\fR во временный файл. .PP .Vb 1 \& $ cp debian/templates debian/foo .Ve .PP Отредактируйте \fIdebian/foo\fR и оставьте только поля \f(CW\*(C`Template\*(C'\fR, \f(CW\*(C`Type\*(C'\fR и \&\f(CW\*(C`_Choices\*(C'\fR из этого примера .PP .Vb 3 \& Template: debconf/frontend \& Type: select \& _Choices: Dialog, Readline, Gnome, Kde, Editor, Noninteractive .Ve .PP Запустите \fBdebconf-gettextize\fR с параметрами \f(CW\*(C`\-\-merge\*(C'\fR и \f(CW\*(C`\-\-choices\*(C'\fR, чтобы собрать PO\-файлы, как если бы было записано \f(CW\*(C`_\|_Choices\*(C'\fR, и объединить эти PO\-файлы с существующими: .PP .Vb 1 \& $ debconf\-gettextize \-\-merge \-\-choices debian/foo .Ve .PP В конце удалите \fIfoo\fR и вручную отредактируйте \fIdebian/templates\fR заменив \&\f(CW\*(C`_Choices\*(C'\fR на \f(CW\*(C`_\|_Choices\*(C'\fR перед тем как запустить \fBdebconf-updatepo\fR. .SS "СОЗДАНИЕ КОММЕНТАРИЕВ ДЛЯ ПЕРЕВОДЧИКОВ" .IX Subsection "СОЗДАНИЕ КОММЕНТАРИЕВ ДЛЯ ПЕРЕВОДЧИКОВ" Сопровождающие \f(CW\*(C`Dpkg\*(C'\fR пришли к соглашению, что строки, начинающиеся с знака \&\f(CW\*(C`#\*(C'\fR, считаются комментариями в файлах \fIdebian/control\fR, и \f(CW\*(C`po\-debconf\*(C'\fR тоже следует этому правилу. Начиная с \f(CW\*(C`po\-debconf\*(C'\fR версии 0.8.0, эти комментарии сохраняются в PO\-файлах, и таким образом, могут содержать смысловую информацию для переводчиков. Случайно, все предыдущие версии \&\f(CW\*(C`po\-debconf\*(C'\fR игнорировали строки, которые не содержат двоеточия, то есть если ваши комментарии не содержат двоеточия, не нужно добавлять зависимость от версии сборки \f(CW\*(C`po\-debconf\*(C'\fR. Пример: .PP .Vb 4 \& Template: debconf/button\-yes \& Type: text \& # Translators, this text will appear on a button, so KEEP IT SHORT \& _Description: Yes .Ve .PP В \f(CW\*(C`po\-debconf\*(C'\fR 1.0 были добавлены специальные комментарии, учитывающие строки с несколькими элементами (например, поле \fIChoices\fR) или параграфы (например, в \fIDescription\fR). С помощью новых директив разработчики получают больший контроль над тем, что показывать переводчикам. Команды имеют вид \&\f(CW\*(C`#flag:\f(CIdirective\f(CW\*(C'\fR; директивы описаны далее. .IP "\fBtranslate:\fR\fIspec\fR, \fBtranslate!:\fR\fIspec\fR" 3 .IX Item "translate:spec, translate!:spec" Отметить только некоторые элементы для перевода; \fIspec\fR является списком чисел через запятую, в котором указаны какие строки будут выводиться в PO\-файлы. Можно указывать диапазоны значений через знак минус (например, \&\f(CW\*(C`2\-6\*(C'\fR), звёздочка (\f(CW\*(C`*\*(C'\fR) означает все строки. Например, из .Sp .Vb 5 \& Template: partman\-basicfilesystems/fat_mountpoint \& Type: select \& #flag:translate:3,4 \& _\|_Choices: /dos, /windows, Enter manually, Do not mount it \& _Description: Mount point for this partition: .Ve .Sp \&\f(CW\*(C`Enter manually\*(C'\fR и \f(CW\*(C`Do not mount it\*(C'\fR появятся в PO\-файлах, а \f(CW\*(C`/dos\*(C'\fR и \&\f(CW\*(C`/windows\*(C'\fR \*(-- нет. Если после ключевого слова \fBtranslate\fR поставить восклицательный знак, то в \fIspec\fR указываются какие строки будут исключены из PO\-файлов, а все остальные строки будут выводиться. Предыдущий пример можно переписать как .Sp .Vb 5 \& Template: partman\-basicfilesystems/fat_mountpoint \& Type: select \& #flag:translate!:1,2 \& _\|_Choices: /dos, /windows, Enter manually, Do not mount it \& _Description: Mount point for this partition: .Ve .Sp Это же ключевое слово можно также применить к полю \fIDescription\fR, чтобы быть уверенным, что некоторые строки не переводятся. .Sp .Vb 8 \& Template: partman\-crypto/options_missing \& Type: error \& #flag:translate!:3 \& _Description: Required encryption options missing \& The encryption options for ${DEVICE} are incomplete. Please \& return to the partition menu and select all required options. \& . \& ${ITEMS} .Ve .Sp Но это опасно, так как из PO\-файлов может быть утерян контекст. В этом случае добавляйте комментарии, чтобы не запутывать переводчиков. .IP "\fBcomment:\fR\fIspec\fR, \fBcomment!:\fR\fIspec\fR" 3 .IX Item "comment:spec, comment!:spec" Комментарий ниже этой директивы относится к строкам, указанным в \fIspec\fR, которая задаётся выше. По умолчанию, комментарий записывается перед переводимым полем вместе со всеми строками принадлежащими этому полю.(Замечание: в \f(CW\*(C`po\-debconf\*(C'\fR < 1.0 комментарий записывался только в первой строке) .Sp .Vb 10 \& Template: arcboot\-installer/prom\-variables \& Type: note \& # Translators, the 4th string of this description has been dropped \& # from PO files. It contains shell commands and should not be \& # translated. \& #flag:comment:3 \& # "Stop for Maintenance" should be left in English \& #flag:translate!:4 \& _Description: Setting PROM variables for Arcboot \& If this is the first Linux installation on this machine, or if the \& hard drives have been repartitioned, some variables need to be set \& in the PROM before the system is able to boot normally. \& . \& At the end of this installation stage, the system will reboot. \& After this, enter the command monitor from the "Stop for \& Maintenance" option, and enter the following commands: \& . \& setenv OSLoader arcboot \& setenv OSLoadFilename Linux \& . \& You will only need to do this once. Afterwards, enter the "boot" \& command or reboot the system to proceed to the next stage of the \& installation. .Ve .Sp В примере выше комментарий указывался без директивы \f(CW\*(C`#flag:comment\*(C'\fR, неявным добавлением \f(CW\*(C`#flag:comment:*\*(C'\fR. Этот комментарий появился во всех строках, но указание \fIStop for Maintenance\fR напечатано только перед соответствующей строкой. .IP "\fBpartial\fR" 3 .IX Item "partial" Это ключевое слово указывает \fBpo2debconf\fR сохранить переведённые строки, даже если не все строки были переведены. Используйте с осторожностью, данное ключевое слово было добавлено для очень специфичных случаев. .SS "УВЕДОМЛЕНИЕ ПЕРЕВОДЧИКОВ ПЕРЕД АНОНСИРОВАНИЕМ НОВОЙ ВЕРСИИ" .IX Subsection "УВЕДОМЛЕНИЕ ПЕРЕВОДЧИКОВ ПЕРЕД АНОНСИРОВАНИЕМ НОВОЙ ВЕРСИИ" Обычно переводчики уведомляются с веб\-страницы состояния проекта (смотрите ниже), что перевод устарел и есть ссылка на новый файл будущего выпуска. Но разработчикам, перед тем как заливать новую версию, предлагается рассмотреть, например, за неделю до срока, попросить сопровождающих перевод обновить его. Для этой цели была написана специальная программа \*(-- \&\fBpodebconf-report-po\fR. Не бойтесь злоупотреблять ею! .SH "ОТЛАДКА" .IX Header "ОТЛАДКА" Вы обнаружите, что \fBdebconf-loadtemplate\fR не принимает файлы шаблонов с добавками i18n. Однако, она принимает объединённый файл, поэтому если вы выполняли отладку debconf, например так .PP .Vb 3 \& rm /tmp/{config,templates}.dat{,\-old} \& debconf\-loadtemplate debian/templates \& DEBIAN_PRIORITY=low debconf \-freadline debian/config configure 28.0 .Ve .PP то теперь вам нужно поступать так: .PP .Vb 4 \& po2debconf debian/templates > debian/tmp/DEBIAN/templates \& rm /tmp/{config,templates}.dat{,\-old} \& debconf\-loadtemplate debian/tmp/DEBIAN/templates \& DEBIAN_PRIORITY=low debconf \-freadline debian/config configure 28.0 .Ve .SH "ПРЕДОСТЕРЕЖЕНИЯ" .IX Header "ПРЕДОСТЕРЕЖЕНИЯ" .IP "\(bu" 2 \&\f(CW\*(C`Debconf\*(C'\fR 1.2.0 распознаёт поля в виде \fIИмя\fR\-\fIязык\fR.\fIкодировка\fR, например, \f(CW\*(C`Description\-de.ISO\-8859\-1\*(C'\fR или \f(CW\*(C`Choices\-ru.KOI8\-R\*(C'\fR. По умолчанию, \fBpo2debconf\fR сохраняет файлы шаблонов в новом формате. Ранние версии \f(CW\*(C`debconf\*(C'\fR игнорируют эти поля и отображают английские сообщения. Смотрите в \fBpo2debconf\fR\|(1) как изменять кодировку и выходной формат. .IP "\(bu" 2 Определённая английская строка может иметь только один уникальный перевод на другой язык. Невозможно задать два разных перевода в зависимости от контекста. Чтобы решить эту проблему, вы можете добавить специальные добавления к совпадающему тексту в разных местах, чтобы сделать его уникальным. (Эти добавления увидят только переводчики и удалят их из строки перед показом пользователю) .Sp Эти метки должны добавляться в конец строк для перевода, они должны начинаться с \f(CW\*(C`[ \*(C'\fR (левая квадратная скобка с пробелом после) и заканчиваться \f(CW\*(C`]\*(C'\fR (правая скобка), и могут содержать любые символы внутри кроме скобок и символов новой строки. Например, \f(CW\*(C`[ blahblah]\*(C'\fR допустимая метка, а \f(CW\*(C`[ bla[bla]bla]\*(C'\fR нет. Для любителей Perl regexp, метки распознаются (и удаляются) с помощью выражения: .Sp .Vb 1 \& $msg =~ s/\e[\es[^\e[\e]]*\e]$//s; .Ve .IP "\(bu" 2 Пробелы обрабатываются неодинаково \f(CW\*(C`po\-debconf\*(C'\fR и \f(CW\*(C`debconf\-utils\*(C'\fR; последний переформатирует параграфы при обновлении и объединении переводов, так как \f(CW\*(C`debconf\-utils\*(C'\fR очень умный и считает, что пробелы не являются частью строк, при определении неясных элементов. (то есть, требуется внимание переводчика, так как оригинал изменился) .Sp С другой стороны, \f(CW\*(C`po\-debconf\*(C'\fR полагается на \f(CW\*(C`gettext\*(C'\fR при определении неясных элементов, и не рассматривает пробелы как специальные символы. То есть, лишние пробелы должны быть удалены в конце строк в мастер\-файлах шаблонов, или они появятся в \s-1PO\-\s0 и POT\-файлах. .Sp По этой же причине, \fBdebconf-gettextize\fR может отметить текст как неясный из\-за несовпадения пробельных символов, и переводчики должны вручную снимать неясность с таких строк. Это случается только при преобразовании шаблонов в \&\f(CW\*(C`po\-debconf\*(C'\fR формат, если, конечно, вы произвольно не изменяете пробелы в мастер\-файлах шаблонов, что болезненно отражается на переводчиках. .IP "\(bu" 2 Обычно, поле \fIDefault:\fR не должно переводиться, если шаблон имеет тип \&\fBSelect\fR или \fBMultiselect\fR. В редких случаях (например, при выборе языка по умолчанию для приложения) локализованные значения более выразительны. .Sp Локализованное значение должно не переводиться, а выбираться из английских значений поля \fIChoices\fR. Лучшим путём достигнуть этой цели является вставка комментария в файл шаблонов, который будет скопирован в PO\-файлы. .Sp .Vb 10 \& Template: geneweb/lang \& Type: select \& _\|_Choices: Danish (da), Dutch (nl), English (en), Esperanto (eo) \& # You must NOT translate this string, but you can change its value. \& # The comment between brackets is used to distinguish this msgid \& # from the one in the Choices list; you do not have to worry about \& # them, and have to simply choose a msgstr among the English values \& # listed in the Choices field above, e.g. msgstr "Dutch (nl)" \& _Default: English (en)[ default language] \& _Description: Geneweb default language .Ve .Sp Значение по умолчанию также присутствует в поле \fIChoices\fR, и оба имеют различные переводы: первое содержит не переведённое значение, выбираемое из \&\fIChoices\fR, а второе имеет обычный перевод. Так как \f(CW\*(C`gettext\*(C'\fR не может содержать два различных перевода одного \fImsgid\fR, то \fImsgid\fR должны отличаться с помощью комментариев в квадратных скобках, как описывалось в предыдущем разделе. .Sp До версии \f(CW\*(C`po\-debconf\*(C'\fR 0.8.0, такие комментарии были недоступны и сопровождающие заменяли поле \fI_Default:\fR на поле \fI_DefaultChoice:\fR, чтобы как\-то выделить такие поля в PO\-файлах: .Sp .Vb 7 \& #. DefaultChoice \& msgid "" \& "English[ default: do not translate bracketed material, put your " \& "own language here but UNTRANSLATED. If it is not in the list, " \& "put English (without bracketed material)]" \& msgstr "" \& "Swedish" .Ve .Sp Простые комментарии менее подвержены ошибкам и приветствуются. .SH "ВЕБ\-СТРАНИЦЫ СОСТОЯНИЯ" .IX Header "ВЕБ-СТРАНИЦЫ СОСТОЯНИЯ" Статистика по \f(CW\*(C`po\-debconf\*(C'\fR переводам доступна здесь (или с зеркал); она обновляется автоматически при поступлении нового пакета. Сюда попадают только пакеты, имеющие файлы \fIdebian/po/templates.pot\fR и \&\fIdebian/po/POTFILES.in\fR, поэтому вы должны проверить, что ваш пакет с исходными текстами содержит их. .PP С этой страницы переводчики могут получить \s-1PO\-\s0 и POT\-файлы, но они всегда должны связаться с предыдущим переводчиком (его почтовый адрес можно найти в PO\-файле) и/или их коллегами переводчиками через debian\-l10n\-\fI<язык>\fR\f(CW@lists\fR.debian.org (если такой список существует), чтобы удостовериться, что никто в данный момент не работает над тем же переводом, а также изучить имеющиеся сообщения об ошибках пакета, который они намереваются переводить, чтобы проверить, что о переводе уже не сообщено. .PP После перевода этих файлов, они должны быть посланы сопровождающему в виде отчёта об ошибке с важностью \fBwishlist\fR и тегом \fBpatch\fR. .SH "СМОТРИТЕ ТАКЖЕ" .IX Header "СМОТРИТЕ ТАКЖЕ" \&\fBdebconf\-gettextize\fR\|(1), \fBdebconf\-updatepo\fR\|(1), \fBdh_installdebconf\fR\|(1), \&\fBpodebconf\-report\-po\fR\|(1), \fBpo2debconf\fR\|(1), \fBdebconf\-devel\fR\|(7). .SH "АВТОРЫ" .IX Header "АВТОРЫ" .Vb 2 \& Мартин Квинсон (Martin Quinson) \& Дэнис Барбье (Denis Barbier) .Ve