NOME¶
debconf-gettextize - extrair traduções de templates debconf para
ficheiros PO
SINOPSE¶
debconf-gettextize [
-v] [
-h]
[
--podir=DIR ] [
--choices] [
--merge]
master [
master ...]
DESCRIÇÃO¶
Os ficheiros
/var/lib/dpkg/info/*.templates lidos pelo debconf
contêm texto em Inglês e traduções no mesmo ficheiro. Mas
nos pacotes fonte, as traduções são geridas em ficheiros
separados para ajudar os tradutores. Na implementação inicial, um
ficheiro mestre
templates continha apenas o texto em Inglês, e os
ficheiros
templates.xx continham as mensagens originais e
as mensagens traduzidas para o idioma
xx. O programa
debconf-mergetemplate juntava os ficheiros mestre e traduzidos.
A nova implementação com "po-debconf" é baseada em
"gettext". Os maintainers marcam os campos a traduzir acrescentando
no seu inicio um underscore, as mensagens em Inglês são
automaticamente extraídas para um ficheiro POT, os tradutores trabalham
em ficheiros PO normais, e o
po2debconf gera um ficheiro combinado de
templates com a mesma estrutura.
O programa
debconf-gettextize foi desenvolvido inicialmente para ajudar a
migrar para a nova implementação.
- •
- Lê uma lista de ficheiros mestre e as suas
traduções associadas, e gera ficheiros po/*.po para cada
idioma contendo as mensagens traduzidas.
- •
- Cada ficheiro de entrada recebe um sufixo ".old",
e um novo ficheiro mestre sobrescreve o antigo; é idêntico ao
ficheiro mestre anterior excepto que acrescentado no inicio um underscore
aos campos a traduzir. Os developers podem então escolher quais os
campos em que os tradutores têm de trabalhar e quais são
evitados porque os seus valores não dependem de definições
locais.
- •
- Também é criado um ficheiro
po/POTFILES.in, que contém a lista de ficheiros
templates que o debconf-updatepo tem de processar.
Normalmente o programa
debconf-gettextize tem de ser executado apenas uma
vez quando se transforma da primeira implementação para o formato
"po-debconf", mas também pode ser utilizado posteriormente para
transformar um campo "_Choices" em "__Choices" (ou
vice-versa) sem perder traduções, quando utilizar a flag
"--merge" (juntamente com "--choices", ou não). O
template desejado que contém os campos "_Choices" ou
"__Choices" a modificar tem de ser copiado para um ficheiro template
temporário, que é passado, como argumento, ao
debconf-gettextize . De seguida são executados os seguintes
passos:
- 1.
- O po2debconf é executado neste ficheiro
template para gerar um ficheiro templates traduzido.
- 2.
- O ficheiro templates traduzido é processado conforme
é descrito acima e são gerados os ficheiros PO.
- 3.
- Os ficheiros PO acabados de criar são combinados com
os existentes.
Quando os ficheiros PO são combinados, os campos "_Choices"
têm de ser substituídos por "__Choices" (ou vice-versa) no
ficheiro templates original antes de executar
debconf-updatepo, caso
contrário as novas traduções serão marcadas como 'fuzzy'.
OPÇÕES¶
- -h, --help
- Mostrar um sumário de utilização para o
programa e sair.
- -v, --verbose
- Processar em modo detalhado.
- --podir=DIR
- Definir o directório para os ficheiros PO. O
pré-definido é procurar ficheiros PO no sub-directório
po por baixo da localização do primeiro ficheiro
mestre.
- --choices
- Por omissão, o debconf-gettextize substitui os
campos "Choices" por "_Choices". Com esta
opção são sobrescritos, em vez disso, os campos
"__Choices".
- --merge
- Quando for esta opção for definida, as mensagens
são combinadas com os ficheiros PO existentes. Os ficheiros templates
e po/POTFILES.in não são modificados.
AVISOS¶
O campo "Default" é especial quando o tipo de template for
"Select" ou "Multiselect", porque tem de ser escolhido um
valor entre a lista de escolhas em
Inglês, mesmo para valores
traduzidos. Normalmente este campo não pode ser alterado, mas em raras
circunstâncias os valores traduzidos fazem sentido (e.g. escolher o
idioma de uma aplicação). De modo a deixar os tradutores saberem que
este campo traduzido "Default" é especial, você tem de,
por convenção, chama-lo de "_DefaultChoice" em vez de
"_Default".
VEJA TAMBÉM¶
debconf-updatepo(1),
po2debconf(1),
debconf-devel(7),
po-debconf(7).
AUTORES¶
Denis Barbier <barbier@linuxfr.org>
Martin Quinson <martin.quinson@ens-lyon.fr>