.\" 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 .SH "NOME" .IX Header "NOME" po-debconf \- introdução .SH "DESCRIÇÃO" .IX Header "DESCRIÇÃO" O objectivo do \f(CW\*(C`debconf\*(C'\fR era tornar a configuração do pacote mais amiga do utilizador. De modo a alcançar isto, é importante assegurar que os utilizadores irão obter a questão no seu idioma. Os tradutores necessitam de um mecanismo para facilmente trabalharem nas traduções sem terem de perseguir o desenvolvimento do pacote; O \f(CW\*(C`po\-debconf\*(C'\fR foi desenhado para ser capaz de trabalhar com ferramentas \f(CW\*(C`gettext\*(C'\fR standard ao traduzir ficheiros de templates debconf. .SH "ACRESCENTAR SUPORTE DE I18N A FICHEIROS DE TEMPLATES DEBCONF" .IX Header "ACRESCENTAR SUPORTE DE I18N A FICHEIROS DE TEMPLATES DEBCONF" Se está a acrescentar suporte a debconf ao seu pacote, você escreveu um ficheiro templates que contém o texto em Inglês. Para acrescentar o devido suporte a i18n ao seu pacote, você tem de: .IP "\- Criar \fIdebian/po/POTFILES.in\fR" 4 .IX Item "- Criar debian/po/POTFILES.in" Este ficheiro contém a lista de templates mestre. Normalmente contém uma única linha: .Sp .Vb 1 \& [type: gettext/rfc822deb] templates .Ve .Sp Os caminhos são relativos ao directório pai. .IP "\- Em cada template juntar um underscore como prefixo antes dos campos a traduzir" 4 .IX Item "- Em cada template juntar um underscore como prefixo antes dos campos a traduzir" Normalmente podem ser traduzidos os campos \f(CW\*(C`Description\*(C'\fR, \f(CW\*(C`Choices\*(C'\fR e às vezes \f(CW\*(C`Default\*(C'\fR. .IP "\- Correr o \fBdebconf-updatepo\fR" 4 .IX Item "- Correr o debconf-updatepo" Isto irá criar o ficheiro \fIdebian/po/templates.pot\fR que os tradutores irão traduzir para o seu idioma. .ie n .IP "\- Acrescentar a dependência de compilação ""po\-debconf"" em \fIdebian/control\fR" 4 .el .IP "\- Acrescentar a dependência de compilação \f(CWpo\-debconf\fR em \fIdebian/control\fR" 4 .IX Item "- Acrescentar a dependência de compilação po-debconf em debian/control" .SH "ACTUALIZAR TEMPLATES" .IX Header "ACTUALIZAR TEMPLATES" De modo a ajudar os tradutores, os ficheiros \s-1PO\s0 no seu pacote devem estar sempre actualizados, caso contrário eles poderão perder o seu tempo a traduzir mensagens não utilizadas. Para isso, simplesmente chame o seguinte comando sem argumentos: .PP .Vb 1 \& $ debconf\-updatepo .Ve .PP Você deve correr este comando cada vez que mudar os templates em Inglês, mas também quando receber traduções novas ou actualizadas, porque os tradutores podem ter trabalhado num ficheiro \s-1PO\s0 obsoleto. .PP Se renomear, acrescentar ou remover alguns ficheiros de templates, lembre-se também de editar \fIdebian/po/POTFILES.in\fR de acordo, caso contrário ficarão a faltar as mensagens em Inglês dos ficheiros \s-1PO\s0 e serão mostradas aos utilizadores mesmo que os ficheiros \s-1PO\s0 estejam traduzidos na totalidade. .PP O programa \fBdebconf-updatepo\fR é idempotente, modifica apenas os ficheiros \&\s-1PO\s0 se o seu conteúdo foi actualizado. Por isso a melhor forma para disponibilizar os ficheiros \s-1PO\s0 actualizados no seu pacote-fonte é chamar este comando a partir do alvo \f(CW\*(C`clean\*(C'\fR do ficheiro \fIdebian/rules\fR. .PP Por favor note que tem de correr \fBdebconf-updatepo\fR mesmo se você utilizar \&\fBdh_installdebconf\fR. O último chama o \fBpo2debconf\fR o qual era utilizado para chamar o \fBdebconf-updatepo\fR se fossem detectados ficheiros desactualizados, mas isto não é actualmente o caso porque não era uma boa solução devido a pelo menos duas razões: .IP "1." 3 O \fBpo2debconf\fR baseia-se em registos de tempo para detectar ficheiros desactualizados, e pode ser abusado ao utilizar o \f(CW\*(C`pbuilder\*(C'\fR ou se uma tradução desactualizada for guardada no disco após os templates terem sido modificados. .IP "2." 3 O \fBdh_installdebconf\fR é chamado muito depois do ficheiro \f(CW\*(C`.diff.gz\*(C'\fR ter sido gerado .SH "COMBINAR TRADUÇÕES E ORIGINAL" .IX Header "COMBINAR TRADUÇÕES E ORIGINAL" Você tem de se assegurar que quando o seu pacote for compilado, as traduções irão ficar no pacote compilado. Você pode fazer isso manualmente, ou automaticamente utilizando o script \fBdh_installdebconf\fR (assegure-se que tem uma dependência de compilação com versão contra o \f(CW\*(C`debhelper (>= 4.1.16)\*(C'\fR). .PP Para o fazer manualmente, você tem de combinar os templates e as traduções durante a compilação (e tem de ter uma dependência de compilação contra o \&\f(CW\*(C`po\-debconf\*(C'\fR) como isto: .PP .Vb 1 \& $ po2debconf debian/templates > debian/tmp/DEBIAN/templates .Ve .PP \&\fB\s-1TENHA CUIDADO\s0\fR: os dois ficheiros chamados \fItemplates\fR não são o mesmo. O primeiro contém apenas o texto em Inglês, com marcas para denotar alguns campos a serem traduzidos enquanto que o segundo contém todos os idiomas. Isto é para dizer que você NÃO \s-1PODE\s0 manter apenas os templates combinados, ou não será capaz de lidar com traduções que as pessoas lhe submeterem. .SH "NOVOS TEMPLATES MESTRE" .IX Header "NOVOS TEMPLATES MESTRE" O formato da fonte do novo ficheiro templates é idêntico a um dos ficheiros templates distribuídos, mas os campos a traduzir são precedidos com um underscore. Exemplo: .PP .Vb 10 \& Template: debconf/frontend \& Type: select \& _Choices: Dialog, Readline, Gnome, Editor, Noninteractive \& Default: Dialog \& _Description: Interface a utilizar com os pacotes a configurar: \& Os pacotes que utilizam debconf para a configuração partilham um aspecto \& e funcionamento idênticos. Você pode escolher o tipo de interface com o \& utilizador que utilizam. \& . \& O frontend dialog é uma interface de ecrã inteiro, baseada em carácter, \& enquanto que o frontend readline oferece uma interface de texto simples, \& mais tradicional, e o frontend gnome é uma interface X moderna. O \& frontend editor permite configurar as coisas pelo uso do seu editor de \& texto favorito. O frontend noninteractive não apresenta nenhuma questão. .Ve .SS "\s-1DIVIDIR A LISTA DE ESCOLHAS\s0" .IX Subsection "DIVIDIR A LISTA DE ESCOLHAS" Desde o \f(CW\*(C`po\-debconf\*(C'\fR 0.6.0, os campos localizados podem conter dois underscores no inicio. Neste caso, o valor do campo é suposto ser uma lista de valores separada por vírgulas, que são postos em msgids diferentes. Por isso se o exemplo anterior contivesse .PP .Vb 1 \& _\|_Choices: Dialog, Readline, Gnome, Editor, Noninteractive .Ve .PP isto seriam 5 msgids diferentes. Note que os espaços a seguir às vírgulas não são significativos. .PP Quando uma lista de escolhas nunca for alterada, \f(CW\*(C`_Choices\*(C'\fR pode ser considerado \s-1OK.\s0 No entanto, dividir tais listas pode ajudar a evitar erros frequentes em traduções, tais como, omitir uma escolha ou utilizar vírgulas não\-standard. Por essas razões, a utilização de \f(CW\*(C`_\|_Choices\*(C'\fR facilitará a vida do tradutor e é fortemente recomendado. .PP Infelizmente se decidir mudar de \f(CW\*(C`_Choices\*(C'\fR para \f(CW\*(C`_\|_Choices\*(C'\fR, todas as traduções ficarão 'fuzzy'. Aqui está uma explicação para fazer esta alteração sem perda de tradução (necessita de \f(CW\*(C`po\-debconf\*(C'\fR >=1.0). Suponha que queremos mudar o exemplo anterior para \&\f(CW\*(C`_\|_Choices\*(C'\fR. Você copia o ficheiro \fItemplates\fR para um ficheiro temporário. .PP .Vb 1 \& $ cp debian/templates debian/foo .Ve .PP Edite \fIdebian/foo\fR e mantenha apenas os campos \f(CW\*(C`Template\*(C'\fR, \f(CW\*(C`Type\*(C'\fR e \&\f(CW\*(C`_Choices\*(C'\fR, que estão neste exemplo .PP .Vb 3 \& Template: debconf/frontend \& Type: select \& _Choices: Dialog, Readline, Gnome, Kde, Editor, Noninteractive .Ve .PP Para compilar os ficheiros \s-1PO\s0 como se \f(CW\*(C`_\|_Choices\*(C'\fR fosse escrito corra \&\fBdebconf-gettextize\fR com as flags \f(CW\*(C`\-\-merge\*(C'\fR e \f(CW\*(C`\-\-choices\*(C'\fR , e combine esses ficheiros \s-1PO\s0 com os existentes: .PP .Vb 1 \& $ debconf\-gettextize \-\-merge \-\-choices debian/foo .Ve .PP Eventualmente terá de remover \fIfoo\fR e manualmente editar \&\fIdebian/templates\fR para substituir \f(CW\*(C`_Choices\*(C'\fR por \f(CW\*(C`_\|_Choices\*(C'\fR antes de \&\fBdebconf-updatepo\fR ser corrido. .SS "\s-1COLOCAR AQUI\s0 COMENTÁRIOS \s-1PARA OS TRADUTORES\s0" .IX Subsection "COLOCAR AQUI COMENTÁRIOS PARA OS TRADUTORES" Os maintainers do \f(CW\*(C`Dpkg\*(C'\fR decidiram que por convenção as linhas que começam por um cardinal (\f(CW\*(C`#\*(C'\fR) são comentários nos ficheiros \fIdebian/control\fR, e o \&\f(CW\*(C`po\-debconf\*(C'\fR segue esta regra. Desde o \f(CW\*(C`po\-debconf\*(C'\fR 0.8.0, tais comentários são escritos nos ficheiros \s-1PO,\s0 e podem conter informações valiosas para os tradutores. Incidentalmente todas as versões anteriores do \&\f(CW\*(C`po\-debconf\*(C'\fR ignoram linhas que não contenham um sinal de dois pontos, por isso se os seus comentários não contêm qualquer sinal de dois pontos, não é necessário acrescentar uma dependência de compilação com versão contra o \&\f(CW\*(C`po\-debconf\*(C'\fR. Aqui está um exemplo: .PP .Vb 4 \& Template: debconf/button\-yes \& Type: text \& # Tradutores, este texto irá aparecer num botão, por isso mantenham\-no CURTO! \& _Description: Yes .Ve .PP No \f(CW\*(C`po\-debconf\*(C'\fR 1.0 foram introduzidos comentários especiais para lidar com mensagens que são compostas por vários itens (como o campo \fIChoices\fR) ou parágrafos (como o \fIDescription\fR). Com estas directivas, os developers têm um melhor controlo sobre o que é mostrados aos tradutores. Estes estão na forma \f(CW\*(C`#flag:\f(CIdirective\f(CW\*(C'\fR; as directivas estão detalhadas abaixo. .IP "\fBtranslate:\fR\fIspec\fR, \fBtranslate!:\fR\fIspec\fR" 3 .IX Item "translate:spec, translate!:spec" Marcar apenas alguns itens como traduzíveis; \fIspec\fR é uma lista de números separada por vírgulas, especifica quais as mensagens serão escritas nos ficheiros \s-1PO.\s0 As gamas também podem ser definidas através de um sinal de menos (por exemplo \f(CW\*(C`2\-6\*(C'\fR), e um asterisco (\f(CW\*(C`*\*(C'\fR) significa todas as mensagens. Por exemplo, com .Sp .Vb 5 \& Template: partman\-basicfilesystems/fat_mountpoint \& Type: select \& #flag:translate:3,4 \& _\|_Choices: /dos, /windows, Introduzir manualmente, Não o montar \& _Description: Ponto de montagem para esta partição: .Ve .Sp \&\f(CW\*(C`Intoduzir manualmente\*(C'\fR e \f(CW\*(C`Não o montar\*(C'\fR irá aparecer nos ficheiros \s-1PO\s0 mas não \f(CW\*(C`/dos\*(C'\fR and \f(CW\*(C`/windows\*(C'\fR. Quando o ponto de exclamação segue a palavra-chave \fBtranslate\fR, \fIspec\fR especifica quais as mensagens que serão descartadas dos ficheiros \s-1PO,\s0 todas as outras mensagens serão mostradas. O exemplo anterior é similar a .Sp .Vb 5 \& Template: partman\-basicfilesystems/fat_mountpoint \& Type: select \& #flag:translate!:1,2 \& _\|_Choices: /dos, /windows, Introduza manualmente, Não o montar \& _Description: Ponto de montagem para esta partição: .Ve .Sp A mesma palavra-chave pode também ser aplicada ao campo \fIDescription\fR para assegurar que algumas mensagens não serão traduzidas. .Sp .Vb 8 \& Template: partman\-crypto/options_missing \& Type: error \& #flag:translate!:3 \& _Description: Faltam opções de encriptação necessárias \& As opções de encriptação para o dispositivo ${DEVICE} estão incompletas. \& Por favor volte ao menu da partição e escolha todas as opções necessárias. \& . \& ${ITEMS} .Ve .Sp Mas isto é perigoso porque o contexto pode ser eliminado dos ficheiros \s-1PO,\s0 neste caso por favor acrescente os comentários para que os tradutores não fiquem confusos. .IP "\fBcomment:\fR\fIspec\fR, \fBcomment!:\fR\fIspec\fR" 3 .IX Item "comment:spec, comment!:spec" O comentário após esta directiva aplica-se às mensagens especificadas por \&\fIspec\fR, que é definida acima. Por omissão, um comentário é escrito antes de um campo a traduzir e escrito juntamente com todas as mensagens que pertençam a este campo. (Nota: com o \f(CW\*(C`po\-debconf\*(C'\fR < 1.0, o comentário era escrito apenas com a primeira mensagem) .Sp Template: arcboot\-installer/prom\-variables Type: note # Tradutores, a 4ª mensagem desta descrição foi largada # dos ficheiros \s-1PO.\s0 Contém comandos da shell e não deve ser # traduzida. #flag:comment:3 # \*(L"Stop for Maintenance\*(R" deve ser deixado em Inglês #flag:translate!:4 _Description: Definir variáveis na \s-1PROM\s0 para Arcboot Se esta é a primeira instalação de Linux nesta máquina, ou se os discos rígidos foram re-particionados, têm de ser definidas algumas variáveis na \s-1PROM\s0 antes do sistema ser capaz de arrancar normalmente. . No fim desta etapa da instalação, o sistema irá reiniciar. Após isto, introduza o comando monitor a partir da opção \*(L"Stop for Maintenance\*(R", e introduza os seguintes comandos: . setenv OSLoader arcboot setenv OSLoadFilename Linux . Irá ter de fazer isto apenas uma vez. Depois disso, introduza o comando \*(L"boot\*(R" ou reinicie o sistema para passar à próxima etapa da instalação. .Sp O exemplo acima tem um comentário sem a directiva \f(CW\*(C`#flag:comment\*(C'\fR, onde é acrescentado um \f(CW\*(C`#flag:comment:*\*(C'\fR implícito. Este comentário aparece com todas as mensagens, mas a que tem \fIStop for Maintenance\fR é mostrada apenas antes da mensagem relevante. .IP "\fBpartial\fR" 3 .IX Item "partial" Esta palavra-chave diz ao \fBpo2debconf\fR para manter as mensagens traduzidas mesmo que não estejam todas traduzidas. Por favor utilize-a com cautela, esta palavra-chave foi introduzida para propósitos muito específicos. .SS "\s-1AVISAR OS TRADUTORES ANTES DE FAZER UM UPLOAD\s0" .IX Subsection "AVISAR OS TRADUTORES ANTES DE FAZER UM UPLOAD" Normalmente os tradutores tomam conhecimento nas páginas web de estado (veja abaixo) que as traduções estão desactualizadas, e enviam patches que serão incluídos em futuros uploads. Mas os developers são encorajados a pedir uma actualização aos maintainers de traduções desactualizadas antes dum upload, por exemplo com uma semana de antecedência. Para este propósito foi escrita uma ferramenta dedicada, o \fBpodebconf-report-po\fR. Não hesite em abusar dela! .SH "DEPURAÇÃO" .IX Header "DEPURAÇÃO" Irá descobrir que \fBdebconf-loadtemplate\fR não irá aceitar um ficheiro templates com códigos i18n. No entanto, irá aceitar um ficheiro integrado, por isso se tem feito depuração a sua configuração debconf assim .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 em vez disso agora irá necessitar de algo como isto: .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 "AVISOS" .IX Header "AVISOS" .IP "\(bu" 2 O \f(CW\*(C`Debconf\*(C'\fR 1.2.0 reconhece campos na forma \fIName\fR\-\fIlang\fR.\fIencoding\fR, e.g. \f(CW\*(C`Description\-de.ISO\-8859\-1\*(C'\fR ou \f(CW\*(C`Choices\-ru.KOI8\-R\*(C'\fR. Por pré\-definição o \fBpo2debconf\fR escreve ficheiros templates nesse novo formato. Versões mais antigas do \f(CW\*(C`debconf\*(C'\fR irão ignorar estes campos, mas é mostrado o texto em Inglês. Para saber como alterar a codificação e o formato de saída veja \fBpo2debconf\fR\|(1). .IP "\(bu" 2 Uma dada mensagem em Inglês apenas pode ter uma única tradução num dado idioma. É impossível dar duas traduções diferentes, dependendo do contexto. Para resolver este problema, você tem de acrescentar marcas especiais para as diferentes ocorrências de uma dada mensagem para as tornar diferentes. (Estas marcações apenas serão visíveis aos tradutores, e serão removidas da mensagem antes de ser mostrada ao utilizador) .Sp Tais marcadores têm de ser acrescentados no final das mensagens a traduzir, têm de começar por \f(CW\*(C`[ \*(C'\fR (um parêntesis recto esquerdo seguido de um espaço) e terminar com \f(CW\*(C`]\*(C'\fR (parêntesis recto direito), e pode conter qualquer carácter excepto parêntesis rectos ou novas linhas. Por exemplo \f(CW\*(C`[ blahblah]\*(C'\fR é um marcador válido enquanto que \f(CW\*(C`[ bla[bla]bla]\*(C'\fR não o é. Para viciados em expressões regulares de Perl, os marcadores são reconhecidos (e removidos) utilizando esta regra: .Sp .Vb 1 \& $msg =~ s/\e[\es[^\e[\e]]*\e]$//s; .Ve .IP "\(bu" 2 O espaçamento não é lidado exactamente da mesma forma pelo \f(CW\*(C`po\-debconf\*(C'\fR e pelo \f(CW\*(C`debconf\-utils\*(C'\fR; com o último, os parágrafos são reformatados ao actualizar e combinar traduções, por isso o \f(CW\*(C`debconf\-utils\*(C'\fR é muito esperto e não considera os espaços como parte das mensagens ao determinar as entradas fuzzy. (i.e., as que necessitam a atenção do tradutor devido ao original ter sido alterado) .Sp Por outro lado o \f(CW\*(C`po\-debconf\*(C'\fR baseia-se no \f(CW\*(C`gettext\*(C'\fR para detectar entradas fuzzy, e não trata os espaços como caracteres especiais. Por isso os espaços supérfluos têm de ser removidos do final das linhas nos ficheiros-mestre templates, ou irão aparecer nos ficheiros \s-1PO\s0 e \s-1POT.\s0 .Sp Pela mesma razão, o \fBdebconf-gettextize\fR pode marcar o texto como fuzzy se os caracteres espaço não coincidirem, os tradutores terão de manualmente eliminar os fuzzys de tais mensagens. Isto apenas acontece uma vez ao converter os templates para o formato \f(CW\*(C`po\-debconf\*(C'\fR, a menos que altere aleatoriamente os espaços nos ficheiros-mestre templates, o que será trabalhoso para os tradutores. .IP "\(bu" 2 Normalmente o campo \fIDefault:\fR não pode ser traduzido quando o tipo do template for \fBSelect\fR ou \fBMultiselect\fR. Sob raras circunstâncias (e.g. ao escolher o idioma pré\-definido para uma aplicação) os valores localizados podem ter significado. .Sp O valor localizado não deve ser traduzido, mas escolhido a partir de uma lista de valores em Inglês listados no campo \fIChoices\fR. A melhor forma de alcançar esta meta é inserir um comentário no seu ficheiro templates o qual será copiado para os ficheiros \s-1PO.\s0 .Sp .Vb 10 \& Template: geneweb/lang \& Type: select \& _\|_Choices: Danish (da), Dutch (nl), English (en), Esperanto (eo) \& # Você NÃO deve traduzir esta mensagem, mas pode mudar o seu valor. \& # O comentário dentro de parêntesis é utilizado para distinguir este msgid \& # do que está na lista Choices; você não tem de se preocupar acerca deles, \& # e tem apenas de escolher uma msgstr entre os valores em Inglês \& # listados no campo Choices acima, e.g. msgstr "Dutch (nl)" \& _Default: English (en)[ default language] \& _Description: Geneweb default language .Ve .Sp O valor pré\-definido também aparece no campo \fIChoices\fR, e ambos têm traduções diferentes: a primeira é um valor por traduzir escolhido entre os valores de \fIChoices\fR, e a última é uma tradução normal. Como o \f(CW\*(C`gettext\*(C'\fR não pode ter duas traduções diferentes no mesmo \fImsgid\fR, então ambos os \&\fImsgids\fR têm de ser diferentes utilizando para isso comentários em parêntesis rectos conforme é descrito na secção anterior. .Sp Antes do \f(CW\*(C`po\-debconf\*(C'\fR 0.8.0, não estavam disponíveis tais comentários e os maintainers tinham de substituir o campo \fI_Default:\fR por \fI_DefaultChoice:\fR de modo a destacar tais campos nos ficheiros \s-1PO:\s0 .Sp .Vb 7 \& #. DefaultChoice \& msgid "" \& "English[ pré\-definido: não traduzir o que está dentro de parêntesis" \& "rectos, ponha aqui o seu idioma mas SEM TRADUZIR. Se não estiver na" \& " lista, ponha English (sem o que está nos parêntesis)]" \& msgstr "" \& "Portuguese" .Ve .Sp Comentários simples nos ficheiros templates são menos sujeitos a erros e são encorajados. .SH "PÁGINAS WEB DE ESTADO" .IX Header "PÁGINAS WEB DE ESTADO" As estatísticas para as traduções \f(CW\*(C`po\-debconf\*(C'\fR estão disponíveis em (ou nos seus mirrors); estas são automaticamente actualizadas quando for feito o upload dos novos pacotes. Apenas são considerados os pacotes que contenham \&\fIdebian/po/templates.pot\fR e \fIdebian/po/POTFILES.in\fR, por isso deve assegurar-se que o seu pacote com a fonte o disponibiliza. .PP Os tradutores podem obter os ficheiros \s-1PO\s0 e \s-1POT\s0 a partir daqui, mas eles devem sempre entrar em contacto com o tradutor anterior (o seu endereço de mail pode ser encontrado no ficheiro \s-1PO\s0) e/ou os seus companheiros de traduções em debian\-l10n\-\fI\fR\f(CW@lists\fR.debian.org (se tal lista existir) para se assegurar que ninguém está a trabalhar nessa tradução ao mesmo tempo, e ler os relatórios de bug actuais do pacote que vai traduzir para ver se já foi relatada uma tradução. .PP Após traduzir estes ficheiros, eles devem submeter o seu trabalho ao maintainer como um relato de bug de severidade \fBwishlist\fR e com o tag \&\fBpatch\fR. .SH "VEJA TAMBÉM" .IX Header "VEJA TAMBÉM" \&\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 "AUTORES" .IX Header "AUTORES" .Vb 2 \& Martin Quinson \& Denis Barbier .Ve