Provided by:
po-debconf_1.0.15ubuntu1_all 
NOME
po-debconf - introduA~XA~Xo
DESCRIA~XA~XO
O objectivo do "debconf" era tornar a configuraA~XA~Xo do pacote amiga
do utilizador. De modo a alcanA~Xar isto, A~X importante assegurar que
os utilizadores irA~Xo obter a questA~Xo no seu idioma. Os tradutores
necessitam de um mecanismo para facilmente trabalharem nas
traduA~XA~Xes sem terem de perseguir o desenvolvimento do pacote; O
"po-debconf" foi desenhado para ser capaz de trabalhar com ferramentas
"gettext" standard ao traduzir ficheiros de templates debconf.
ACRESCENTAR SUPORTE DE I18N A FICHEIROS DE TEMPLATES DEBCONF
Se estA~X a acrescentar suporte a debconf ao seu pacote, vocA~X
escreveu um ficheiro templates que contA~Xm o texto em InglA~Xs. Para
acrescentar o devido suporte a i18n ao seu pacote, vocA~X tem de:
- Criar debian/po/POTFILES.in
Este ficheiro contA~Xm a lista de templates mestre. Normalmente
contA~Xm uma A~Xnica linha:
[type: gettext/rfc822deb] templates
Os caminhos sA~Xo relativos ao directA~Xrio pai.
- Acrescentar um underscore antes dos campos a traduzir
Normalmente podem ser traduzidos os campos "Description", "Choices"
e A~ s vezes "Default".
- Correr o debconf-updatepo
Isto irA~X criar o ficheiro debian/po/templates.pot que os
tradutores irA~Xo traduzir para o seu idioma.
- Acrescentar a dependA~Xncia de compilaA~XA~Xo "po-debconf" em
debian/control
ACTUALIZAR TEMPLATES
De modo a ajudar os tradutores, os ficheiros PO no seu pacote devem
estar sempre actualizados, caso contrA~Xrio eles podem perder o seu
tempo a actualiza-lo com mensagens nA~Xo utilizadas. Para isso,
simplesmente chame o seguinte comando sem argumentos:
$ debconf-updatepo
VocA~X deve correr este comando cada vez que mudar os templates em
InglA~Xs, mas tambA~Xm quando receber traduA~XA~Xes novas ou
actualizadas, porque os tradutores podem ter trabalhado num ficheiro PO
obsoleto.
Se renomear, acrescentar ou remover alguns ficheiros de templates,
lembre-se tambA~Xm de editar debian/po/POTFILES.in de acordo, caso
contrA~Xrio ficarA~Xo a faltar as mensagens em InglA~Xs dos ficheiros
PO e serA~Xo mostradas aos utilizadores mesmo que os ficheiros PO
estejam traduzidos na totalidade.
O programa debconf-updatepo A~X idempotente, modifica apenas os
ficheiros PO se o seu conteA~Xdo foi actualizado. Por isso A~X a
melhor soluA~XA~Xo para fornecer ficheiros PO actualizados no seu
pacote-fonte A~X chamar este comando a partir do alvo "clean" do
ficheiro debian/rules.
Por favor note que tem de correr debconf-updatepo mesmo se vocA~X
utilizar dh_installdebconf. O A~Xltimo chama o po2debconf o qual era
utilizado para chamar o debconf-updatepo se fossem detectados ficheiros
desactualizados, mas isto nA~Xo A~X actualmente o caso porque nA~Xo era
uma boa soluA~XA~Xo devido a pelo menos duas razA~Xes:
1. O po2debconf baseia-se em registos de tempo para detectar ficheiros
desactualizados, e pode ser abusado ao utilizar o "pbuilder" ou se
uma traduA~XA~Xo desactualizada for guardada no disco apA~Xs os
templates terem sido modificados.
2. O dh_installdebconf A~X chamado muito depois do ficheiro ".diff.gz"
ter sido gerado
COMBINAR TRADUA~XA~XES E ORIGINAL
VocA~X tem de se assegurar que quando o seu pacote for compilado, as
traduA~XA~Xes irA~Xo ficar no pacote compilado. VocA~X pode fazer isso
manualmente, ou automaticamente utilizando o script dh_installdebconf
(assegure-se que tem uma dependA~Xncia de compilaA~XA~Xo com versA~Xo
contra o "debhelper (>= 4.1.16)").
Para o fazer manualmente, vocA~X tem de combinar os templates e as
traduA~XA~Xes durante a compilaA~XA~Xo (e tem de ter uma dependA~Xncia
de compilaA~XA~Xo contra o "po-debconf") como isto:
$ po2debconf debian/templates > debian/tmp/DEBIAN/templates
TENHA CUIDADO: os dois ficheiros chamados templates nA~Xo sA~Xo o
mesmo. O primeiro contA~Xm apenas o texto em InglA~Xs, com marcas para
denotar alguns campos a serem traduzidos enquanto que o segundo
contA~Xm todos os idiomas. Isto A~X para dizer que vocA~X NA~XO PODE
manter apenas os templates combinados, ou nA~Xo serA~X capaz de lidar
com traduA~XA~Xes que as pessoas lhe submeterem.
NOVOS TEMPLATES MESTRE
O formato da fonte do novo ficheiro templates A~X idA~Xntico a um dos
ficheiros templates distribuidos, mas os campos a traduzir sA~Xo
precedidos com um underscore. Exemplo:
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 configuraA~XA~Xo partilham um aspecto
e funcionamento idA~Xnticos. VocA~X pode escolher o tipo de interface com o
utilizador que utilizam.
.
O frontend dialog A~X uma interface de A~Xcran inteiro, baseada em caracter,
enquanto que o frontend readline oferece uma interface de texto simples,
mais tradicional, e o frontend gnome A~X uma interface X moderna. O
frontend editor permite configurar as coisas pelo uso do seu editor de
texto favorito. O frontend noninteractive nA~Xo apresenta nenhuma questA~Xo.
DIVIDIR A LISTA DE ESCOLHAS
Desde o "po-debconf" 0.6.0, os campos localizados podem conter dois
underscores no inicio. Neste caso, o valor do campo A~X suposto ser
uma vA~rgula separada por uma lista de valores, que sA~Xo postos em
msgids diferentes. Por isso se o exemplo anterior contivesse
__Choices: Dialog, Readline, Gnome, Editor, Noninteractive
isto seriam 5 msgids diferentes. Note que os espaA~Xos a seguir A~ s
vA~rgulas nA~Xo sA~Xo significativos.
Basicamente quando a lista de escolhas nunca muda, o "_Choices" nA~Xo
tem problemas, mas caso aconteA~Xa o contrA~Xrio "__Choices" irA~X
facilitar a vida ao tradutor.
Infelizmente se decidir mudar entre essas duas formas, todas as
traduA~XA~Xes serA~Xo marcadas como fuzzy. Aqui estA~X uma
explicaA~XA~Xo para tornar esta alteraA~XA~Xo sem perda de
traduA~XA~Xes (necessita do "po-debconf" >= 1.0). Suponha que queremos
mudar o exemplo anterior para "__Choices". VocA~X copia o ficheiro
templates para um ficheiro temporA~Xrio.
$ cp debian/templates debian/foo
Edite debian/foo e mantenha apenas os campos "Template", "Type" e
"_Choices", que estA~Xo neste exemplo
Template: debconf/frontend
Type: select
_Choices: Dialog, Readline, Gnome, Kde, Editor, Noninteractive
Para compilar os ficheiros PO como se "__Choices" fosse escrito corra
debconf-gettextize com as flags "--merge" e "--choices" , e combine
esses ficheiros PO com os existentes:
$ debconf-gettextize --merge --choices debian/foo
Eventualmente terA~X de remover foo e manualmente editar
debian/templates para substituir "_Choices" por "__Choices" antes de
debconf-updatepo ser corrido.
COLOCAR COMENTA~XRIOS PARA OS TRADUTORES
Os maintainers do "Dpkg" decidiram que por convenA~XA~Xo as linhas que
comeA~Xam por um cardinal ("#") sA~Xo comentA~Xrios nos ficheiros
debian/control, e o "po-debconf" segue esta regra. Desde o "po-debconf"
0.8.0, tais comentA~Xrios sA~Xo escritos nos ficheiros PO, e podem
conter informaA~XA~Xes valiosas para os tradutores. Incidentalmente
todas as versA~Xes anteriores do "po-debconf" ignoram linhas que nA~Xo
contenham o sinal de dois pontos, por isso se os seus comentA~Xrios
nA~Xo contA~Xm qualquer sinal de dois pontos, nA~Xo A~X necessA~Xrio
acrescentar uma dependA~Xncia de compilaA~XA~Xo com versA~Xo contra o
"po-debconf". Aqui estA~X um exemplo:
Template: debconf/button-yes
Type: text
# Tradutores, este texto irA~X aparecer num botA~Xo, por isso mantenham-no CURTO!
_Description: Yes
No "po-debconf" 1.0 foram introduzidos comentA~Xrios especiais para
lidar com mensagens que sA~Xo compostas por vA~Xrios itens (como o
campo Choices) ou parA~Xgrafos (como o Description). Com estas
directivas, os developers tA~Xm um melhor controlo sobre o que A~X
mostrados aos tradutores. Estes estA~Xo na forma "#flag:directive"; as
directivas estA~Xo detalhadas abaixo.
translate:spec, translate!:spec
Marcar apenas alguns itens como traduzA~veis; spec A~X uma lista de
nA~Xmeros separada por vA~rgulas, especifica quais as mensagens
serA~Xo escritas nos ficheiros PO. As gamas tambA~Xm podem ser
definidas atravA~Xs de um sinal de menos (por exemplo "2-6"), e um
asterisco ("*") significa todas as mensagens. Por exemplo, com
Template: partman-basicfilesystems/fat_mountpoint
Type: select
#flag:translate:3,4
__Choices: /dos, /windows, Introduzir manualmente, NA~Xo o montar
_Description: Ponto de montagem para esta partiA~XA~Xo:
"Intoduzir manualmente" e "NA~Xo o montar" irA~X aparecer nos
ficheiros PO mas nA~Xo "/dos" and "/windows". Quando o ponto de
exclamaA~XA~Xo segue a palavra-chave translate, spec especifica
quais as mensagens que serA~Xo descartadas dos ficheiros PO, todas
as outras mensagens serA~Xo mostradas. O exemplo anterior A~X
similar a
Template: partman-basicfilesystems/fat_mountpoint
Type: select
#flag:translate!:1,2
__Choices: /dos, /windows, Introduza manualmente, NA~Xo o montar
_Description: Ponto de montagem para esta partiA~XA~Xo:
A mesma palavra-chave pode tambA~Xm ser aplicada ao campo
Description para assegurar que algumas mensagens nA~Xo serA~Xo
traduzidas.
Template: partman-crypto/options_missing
Type: error
#flag:translate!:3
_Description: Faltam opA~XA~Xes de encriptaA~XA~Xo necessA~Xrias
As opA~XA~Xes de encriptaA~XA~Xo para o dispositivo ${DEVICE} estA~Xo incompletas.
Por favor volte ao menu da partiA~XA~Xo e escolha todas as opA~XA~Xes necessA~Xrias.
.
${ITEMS}
Mas isto A~X perigoso porque o contexto pode ser eliminado dos
ficheiros PO, neste caso por favor acrescente os comentA~Xrios para
que os tradutores nA~Xo fiquem confusos.
comment:spec, comment!:spec
O comentA~Xrio apA~Xs esta directiva aplica-se A~ s mensagens
especificadas por spec, que A~X definida acima. Por omissA~Xo, um
comentA~Xrio A~X escrito antes de um campo a traduzir e escrito
juntamente com todas as mensagens que pertenA~Xam a este campo.
(Nota: com o "po-debconf" < 1.0, o comentA~Xrio era escrito apenas
com a primeira mensagem)
Template: arcboot-installer/prom-variables
Type: note
# Tradutores, a 4AX mensagem desta descriA~XA~Xo foi largada
# dos ficheiros PO. ContA~Xm comandos da shell e nA~Xo deve ser
# traduzida.
#flag:comment:3
# "Stop for Maintenance" deve ser deixado em InglA~Xs
#flag:translate!:4
_Description: Definir variA~Xveis na PROM para Arcboot
Se esta A~X a primeira instalaA~XA~Xo de Linux nesta mA~Xquina,
ou se os discos
rA~gidos foram reparticionados, tA~Xm de ser definidas algumas
variA~Xveis na
PROM anes do sistema ser capaz de arrancar normalmente.
.
No fim desta etapa da instalaA~XA~Xo, o sistema irA~X reiniciar.
ApA~Xs isto, introduza o comando monitor a partir da opA~XA~Xo
"Stop for
Maintenance", e introduza os seguintes comandos:
.
setenv OSLoader arcboot
setenv OSLoadFilename Linux
.
IrA~X ter de fazer isto apenas uma vez. Depois disso, introduza
o comando
"boot" ou reinicie o sistema para passar A~ prA~Xxima etapa da
instalaA~XA~Xo.
O exemplo acima tem um comentA~Xrio sem a directiva "#flag:comment",
onde A~X acrescentado um "#flag:comment:*" implA~cito. Este
comentA~Xrio aparece com todas as mensagens, mas a que tem Stop for
Maintenance A~X mostrada apenas antes da mensagem relevante.
partial
Esta palavra-chave diz ao po2debconf para manter as mensagens
traduzidas mesmo que nA~Xo estejam todas traduzidas. Por favor
utilize-a com cautela, esta palavra-chave foi introduzida para
propA~Xsitos muito especA~ficos.
AVISAR OS TRADUTORES ANTES DE FAZER UM UPLOAD
Normalmente os tradutores tomam conhecimento nas pA~Xginas web de
estado (veja abaixo) que as traduA~XA~Xes estA~Xo desactualizadas, e
enviam patches que serA~Xo incluidos em futuros uploads. Mas os
developers sA~Xo encorajados a pedir uma actualizaA~XA~Xo aos
maintainers de traduA~XA~Xes desactualizadas antes dum upload, por
exemplo com uma semana de antecedA~Xncia. Para este propA~Xsito foi
escrita uma ferramenta dedicada, o podebconf-report-po. NA~Xo hesite
em abusar dela!
AVISOS
· O "Debconf" 1.2.0 reconhece campos na forma Name-lang.encoding, e.g.
"Description-de.ISO-8859-1" ou "Choices-ru.KOI8-R". Por
prA~X-definiA~XA~Xo o po2debconf escreve ficheiros templates nesse
novo formato. VersA~Xes mais antigas do "debconf" irA~Xo ignorar
estes campos, mas A~X mostrado o texto em InglA~Xs. Para saber como
alterar a codificaA~XA~Xo e o formato de saA~da veja po2debconf(1).
· Uma dada mensagem em InglA~Xs apenas pode ter uma A~Xnica
traduA~XA~Xo num dado idioma. A~X impossA~vel dar duas traduA~XA~Xes
diferentes, dependendo do contexto. Para resolver este problema,
vocA~X tem de acrescentar marcas especiais para as diferentes
ocorrA~Xncias de uma dada mensagem para as tornar diferentes. (Estas
marcaA~XA~Xes apenas serA~Xo visA~veis aos tradutores, e serA~Xo
removidas da mensagem antes de ser mostrada ao utilizador)
Tais marcadores tA~Xm de ser acrescentados no final das mensagens a
traduzir, tA~Xm de comeA~Xar por "[ " (um parentesis recto esquerdo
seguido de um espaA~Xo) e terminar com "]" (parentesis recto
direito), e pode conter qualquer carA~Xcter excepto parentesis rectos
ou novas linhas. Por exemplo "[ blahblah]" A~X um marcador vA~Xlido
enquanto que "[ bla[bla]bla]" nA~Xo o A~X. Para viciados em
expressA~Xes regulares de Perl, os marcadores sA~Xo reconhecidos (e
removidos) utilizando esta regra:
$msg =~ s/\[\s[^\[\]]*\]$//s;
· O espaA~Xamento nA~Xo A~X lidado exactamente da mesma forma pelo
"po-debconf" e pelo "debconf-utils"; com o A~Xltimo, os parA~Xgrafos
sA~Xo reformatados ao actualizar e combinar traduA~XA~Xes, por isso o
"debconf-utils" A~X muito esperto e nA~Xo considera os espaA~Xos como
parte das mensagens ao determinar as entradas fuzzy. (i.e., as que
necessitam a atenA~XA~Xo do tradutor devido ao original ter sido
alterado)
Por outro lado o "po-debconf" baseia-se no "gettext" para detectar
entradas fuzzy, e nA~Xo trata os espaA~Xos como caracteres especiais.
Por isso os espaA~Xos supA~Xrfluos tA~Xm de ser removidos do final
das linhas nos ficheiros-mestre templates, ou irA~Xo aparecer nos
ficheiros PO e POT.
Pela mesma razA~Xo, o debconf-gettextize pode marcar o texto como
fuzzy se os caracteres espaA~Xo nA~Xo coincidirem, os tradutores
terA~Xo de manualmente eliminar os fuzzys de tais mensagens. Isto
apenas acontece uma vez ao converter os templates para o formato
"po-debconf", a menos que altere aleatoriamente os espaA~Xos nos
ficheiros-mestre templates, o que serA~X trabalhoso para os
tradutores.
· Normalmente o campo Default: nA~Xo pode ser traduzido quando o tipo
do template for Select ou Multiselect. Sob raras circunstA~Xncias
(e.g. ao escolher o idioma prA~X-definido para uma aplicaA~XA~Xo) os
valores localizados podem ter significado.
O valor localizado nA~Xo deve ser traduzido, mas escolhido a partir
de uma lista de valores em InglA~Xs listados no campo Choices. A
melhor forma de alcanA~Xar esta meta A~X inserir um comentA~Xrio no
seu ficheiro templates o qual serA~X copiado para os ficheiros PO.
Template: geneweb/lang
Type: select
__Choices: Danish (da), Dutch (nl), English (en), Esperanto (eo)
# VocA~X NA~XO deve traduzir esta mensagem, mas pode mudar o seu valor.
# O comentA~Xrio dentro de parentesis A~X utilizado para distinguir este msgid
# do que estA~X na lista Choices; vocA~X nA~Xo tem de se preocupar acerca deles,
# e tem apenas de escolher uma msgstr entre os valores em InglA~Xs
# listados no campo Choices acima, e.g. msgstr "Dutch (nl)"
_Default: English (en)[ default language]
_Description: Geneweb default language
O valor prA~X-definido tambA~Xm aparece no campo Choices, e ambos
tA~Xm traduA~XA~Xes diferentes: a primeira A~X um valor por traduzir
escolhido entre os valores de Choices, e a A~Xltima A~X uma
traduA~XA~Xo normal. Como o "gettext" nA~Xo pode ter duas
traduA~XA~Xes diferentes no mesmo msgid, entA~Xo ambos os msgids
tA~Xm de ser diferentes utilizando para isso comentA~Xrios em
parentesis rectos conforme A~X descrito na secA~XA~Xo anterior.
Antes do "po-debconf" 0.8.0, nA~Xo estavam disponA~veis tais
comentA~Xrios e os maintainers tinham de substituir o campo _Default:
por _DefaultChoice: de modo a destacar tais campos nos ficheiros PO:
#. DefaultChoice
msgid ""
"English[ prA~X-definido: nA~Xo traduzir o que estA~X dentro de parentesis"
"rectos, ponha aqui o seu idioma mas SEM TRADUZIR. Se nA~Xo estiver na"
" lista, ponha English (sem o que estA~X nos parentesis)]"
msgstr ""
"Portuguese"
ComentA~Xrios simples nos ficheiros templates sA~Xo menos sujeitos a
erros e sA~Xo encorajados.
PA~XGINAS WEB DE ESTADO
As estatA~sticas para as traduA~XA~Xes "po-debconf" estA~Xo disponA~‐
veis em <http://www.debian.org/intl/l10n/po-debconf/> (ou nos seus
mirrors); estas sA~Xo automaticamente actualizadas quando for feito o
upload dos novos pacotes. Apenas sA~Xo considerados os pacotes que
contenham debian/po/templates.pot e debian/po/POTFILES.in, por isso
deve assegurar-se que o seu pacote com a fonte o disponibiliza.
Os tradutores podem obter os ficheiros PO e POT a partir daqui, mas
eles devem sempre entrar em contacto com o tradutor anterior (o seu
endereA~Xo de mail pode ser encontrado no ficheiro PO) e/ou os seus
companheiros de traduA~XA~Xes em
debian-l10n-<language>@lists.debian.org (se tal lista existir) para se
assegurar que ninguA~Xm estA~X a trabalhar nessa traduA~XA~Xo ao mesmo
tempo, e ler os relatA~Xrios de bug actuais do pacote que vai traduzir
para ver se ja foi relatada uma traduA~XA~Xo.
ApA~Xs traduzir estes ficheiros, eles devem submeter o seu trabalho ao
maintainer como um relato de bug de severidade wishlist e com o tag
patch.
VEJA TAMBA~XM
debconf-gettextize(1), debconf-updatepo(1), dh_installdebconf(1),
podebconf-report-po(1). po2debconf(1).
AUTORES
Martin Quinson <Martin.Quinson@ens-lyon.fr>
Denis Barbier <barbier@linuxfr.org>
2008-10-24 PO-DEBCONF(7)