
        *****************************************************
        *           GENERATED FILE, DO NOT EDIT             *
        * THIS IS NO SOURCE FILE, BUT RESULT OF COMPILATION *
        *****************************************************

This file was generated by po4a(7). Do not store it (in VCS, for example),
but store the PO file used as source file by po4a-translate.

In fact, consider this as a binary, and the PO file as a regular .c file:
If the PO get lost, keeping this translation up-to-date will be harder.

=encoding UTF-8

=head1 NOME

Locale::Po4a::Man - converte páginas do manual de/para ficheiros PO

=head1 DESCRIÇÃO

O objetivo do projeto po4a (PO for anything: PO para qualquer coisa) é
facilitar traduções (e o mais interessante, a manutenção das traduções) a
usar as ferramentas do gettext em áreas em que não se esperava, como na
documentação.

Locale::Po4a::Man é um módulo para ajudar na tradução de documentação em
formato nroff (a linguagem das páginas do manual) em outras línguas
[humanas].

=head1 TRADUZINDO COM PO4A::MAN

Este módulo tenta com muita força facilitar a vida do tradutor. Para isso, o
texto apresentado aos tradutores não é uma cópia literal do texto encontrado
na página do manual. De facto, as partes mais cruas do formato nroff estão
escondidos, por isso os tradutores não se podem atrapalhar com elas.

=head2 Envolver Texto

Parágrafos não recuados são automaticamente re-envolvidos para o
tradutor. Isto pode levar a uma diferença menor nos resultados gerados, uma
vez que as regras de re-envolvimento usadas por groff não são muito
claras. Por exemplo, dois espaços depois de um parêntese às vezes são
preservados.

De qualquer forma, a diferença será apenas sobre a posição dos espaços extra
no parágrafo envolvido, e acho que vale a pena.

=head2 Especificação da Font

A primeira mudança é sobre as especificações de mudança de font.   No nroff,
existem várias maneiras para especificar se uma determinada palavra deve ser
escrita em pequeno, negrito ou itálico. No texto para traduzir, só há um
caminho, emprestado do formato POD (Perl documentação on-line):

=over

=item IE<lt>textE<gt> -- texto em itálico

equivalente a \fItext\fP or ".I text"

=item BE<lt>textE<gt> -- texto em negrito

equivalente a \fBtext\fP or ".B text"

=item RE<lt>textE<gt> -- texto romano

equivalente a \fRtext\fP

=item CWE<lt>textE<gt> -- texto de largura constante

equivalente a \f(CWtext\fP or ".CW text"

=back

Observação: O rosto CW não está disponível para todos os aparelhos
groff. Não é recomendado usá-lo. Ele é fornecido para sua conveniência.

=head2 Transliteração automática de caracteres

Po4a automaticamente translitera alguns caracteres para facilitar a tradução
ou revisão da tradução. Aqui está a lista das transliterações:

=over

=item hífenes

Hífens (-) e sinais de menos (\-) em páginas de manual são todos
transliterados como traços simples (-) no ficheiro PO. Assim todos os traços
são transliterados em sinais roff menos (\-) quando a tradução é inserida no
documento resultante.

Os tradutores podem forçar um hífen a usar o roff glyph '\[hy]' nas suas
traduções.

=item espaços não-separáveis

Os tradutores podem usar espaços não separáveis nas suas traduções. Estes
espaços não separáveis (0xA0 em latin1) serão transliterados num roff
non-breaking space ('\ ').

=item transliterações citadas

`` e '' são respetivamente, transliterados em \*(lq and \*(rq.

Para evitar essas transliterações, os tradutores podem inserir um caractere
roff de largura zero (ou seja, a usar `\ &` or '\&' respectivamente).

=back

=head2 Colocando 'E<lt>' e 'E<gt>' em traduções

Desde que estes carácteres são utilizadas para delimitar partes sob
modificação da font, não os pode usar na íntegra. Use EE<lt>ltE<gt> e
EE<lt>gtE<gt> em vez (como em POD, mais uma vez).

=head1 OPÇÕES ACEITES POR ESTE MÓDULO

Estas são as opções particulares deste módulo:

=over

=item B<debug>

Ativar a depuração para alguns mecanismos internos deste módulo. Use a fonte
para ver que partes podem ser depuradas.

=item B<verbose>

Aumentar o detalhe.

=item B<groff_code>

Esta opção controla o comportamento do módulo quando ele encontrar uma
secção .de, .ie ou .if . Ele pode levar os valores a seguir:

=over

=item I<fail>

Este é o valor predefinido. O módulo irá falhar quando uma secção .de, .ie
ou .if é encontrada.

=item I<verbatim>

Indica que as secções .de, .ie ou .if, devem ser copiadas como estão no
original para o documento traduzido.

=item I<translate>

Indica que as secções .de, .ie ou .if serão propostas para a tradução. Só
deve usar essa opção se uma cadeia traduzível está contida numa destas
secções. Caso contrário, I<verbatim> deve ser preferida.

=back

=item B<generated>

Esta opção especifica que o ficheiro foi gerado e que po4a não deve tentar
detetar se as páginas man foram geradas de outro formato. Esta opção é
obrigatória para usar po4a em páginas man geradas. Note que traduzir páginas
geradas em vez das páginas fonte é geralmente mais frágil, e assim uma má
ideia.

=item B<mdoc>

Esta opção só é útil para páginas mdoc.

Seleciona um rigoroso suporte do formato mdoc ao dizer ao po4a para não
traduzir a secção 'NOME'. Páginas mdoc cuja secção 'NOME' é traduzida não
irá gerar qualquer cabeçalho ou rodapé.

De acordo com a página groff_mdoc, as secções NOME, RESUMO e DESCRIÇÃO
são obrigatórias.
Não existem problemas conhecidos com a secções RESUMO ou DESCRIÇÃO traduzidas,
mas também pode especificar estas secções da seguinte forma:
 -o mdoc=NAME,SYNOPSIS,DESCRIPTION

Este problema do mdoc também pode ser resolvido com uma adenda como esta:
 PO4A-HEADER:mode=before;position=^.Dd
 .TH DOCUMENT_TITLE 1 " Month day, year"OS " Section Name"

=back

As opções a seguir especificam o comportamento de uma macro definida pelo
utilizador (com uma requisição .de) ou de uma macro clássica que não
encontra suporte no po4a. Elas levam como argumento uma lista separada por
vírgulas de macros.    Por exemplo:

 -o noarg=FO,OB,AR -o translate_joined=BA,ZQ,UX

Nota: se uma macro não é suportada pelo po4a e se considerar que é uma macro
roff standard, deve submetê-la à equipa de desenvolvimento do po4a.

=over

=item B<untranslated>

B<untranslated> indica que esta macro (nos seus argumentos) não tem que ser
traduzida.

=item B<noarg>

B<noarg> é como B<untranslated>, exceto que po4a irá verificar que nenhum
argumento é adicionado a esta macro.

=item B<translate_joined>

B<translate_joined> indica que po4a deve propor a tradução dos argumentos da
macro.

=item B<translate_each>

Com B<translate_each>, os argumentos também serão propostos para a tradução,
excepto que cada um será traduzido em separado.

=item B<no_wrap>

Essa opção usa como argumento uma lista de pares separados por vírgulas
I<begin>:I<End>, onde I<begin> e I<End> são comandos que delimitam o começar
e terminar de uma secção que não deve ser re-envolvida.

Nota: nenhum teste é feito para assegurar que um comando I<end> corresponde
ao seu comando I<begin>; qualquer comando de finalização termina o modo
no_wrap. Se tem uma macro I<begin> (respectivamente I<end>) que não possui
I<end> (respectivamente I<begin>), Pode especificar uma I<end> existente
(como fi) ou I<begin> (como nf) como uma contraparte. Essas macros (e os
argumentos deles) não serão traduzidos.

=item B<inline>

Esta opção especifica uma lista de macros separadas por vírgulas que não
devem dividir o parágrafo atual. A cadeia a traduzir conterá então I<foo
E<lt>.bar baz quxE<gt> quux> onde I<bar> é o comando que deve ser embutido,
e I<baz qux> os seus argumentos.

=item B<unknown_macros>

Esta opção indica como po4a deve se comportar quando uma macro desconhecida
é encontrada. Por predefinição, po4a falha com um aviso.   Ele pode tomar os
seguintes valores: B<failed> (o valor predefinido), B<untranslated>,
B<noarg>, B<translate_joined>, ou B<translate_each> (ver acima para uma
explicação destes valores).

=back

=head1 AUTORIA DAS PÁGINAS DE MANUAL COMPATÍVEL COM PO4A::MAN

Este módulo é ainda muito limitado e, sempre vai ser, porque não é um
intérprete nroff real. Seria possível fazer um intérprete nroff real,
permitir que os autores usarem todas as macros existentes, ou até mesmo para
definir novas nas suas páginas, mas não quisemos. Seria muito difícil e
pensamos que não era necessário. Pensamos que se os autores das páginas de
manual quiserem ver as suas produções traduzidas, devem ter de se adaptar a
facilitar o trabalho dos tradutores.

Portanto, o analisador de manual implementado em po4a tem algumas limitações
conhecidas que são e não estamos realmente inclinados a corrigir e que
constituirá algumas armadilhas que tem de evitar se quiser ver tradutores
cuidarem da sua documentação.

=head2 Não programe em nroff

nroff é uma linguagem de programação completa, com a definição de macro,
condicionais e assim por diante. Uma vez que este analisador está totalmente
caracterizado como intérprete nroff, irá falhar em páginas que utilizam
estas facilidades (há cerca de 200 tais páginas na minha caixa).

=head2 Use o conjunto de macro simples

Existem ainda algumas macros que não são suportadas por po4a::man. É assim
porque eu não encontrei nenhuma documentação sobre elas. Aqui está a lista
de macros sem suporte, utilizadas na minha caixa. Note que esta lista não é
exaustiva uma vez que o programa falha na primeira macro, que encontra sem
suporte. Se tem alguma informação sobre algumas desses macros, ficarei feliz
em adicionar suporte para elas. Devido a estas macros, cerca de 250 páginas
na minha caixa são inacessíveis para po4a::man.

 ..               ."              .AT             .b              .bank
 .BE              ..br            .Bu             .BUGS           .BY
 .ce              .dbmmanage      .do                             .En
 .EP              .EX             .Fi             .hw             .i
 .Id              .l              .LO             .mf
 .N               .na             .NF             .nh             .nl
 .Nm              .ns             .NXR            .OPTIONS        .PB
 .pp              .PR             .PRE            .PU             .REq
 .RH              .rn             .S<             .sh             .SI
 .splitfont       .Sx             .T              .TF             .The
 .TT              .UC             .ul             .Vb             .zZ

=head2 Escondendo texto de po4a

Às vezes, o autor sabe que algumas partes não são traduzíveis e não devem
ser extraídas por po4a. Por exemplo, uma opção pode aceitar um argumento
I<other> e I<other> também pode aparecer como o último item duma lista. No
primeiro caso, I<other> não deve ser traduzido. E, no segundo caso, I<other>
deve ser traduzido.

Em tal caso, o autor pode evitar po4a para extrair algumas cadeias, a usar
algumas construções especiais groff:

 .if !'po4a'hide' .B other

(isto vai exigir a opção B<-o groff_code=verbatim>)

A nova macro também pode ser definida para automatizar isto:
 .de IR_untranslated
 .    IR \\$@
 ..

 .IR_untranslated \-q ", " \-\-quiet

(isto vai exigir as opções B<-o groff_code=verbatim> e B<-o
untranslated=IR_untranslated>; com esta construção, o B<.if !'po4a'hide'>
condicional não é estritamente necessário uma vez que po4a não irá analisar
o interno da definição da macro)

ou utilizar um alias: 
 .als IR_untranslated IR

 .IR_untranslated \-q ", " \-\-quiet

Isso vai exigir a opção B<-o untranslated=als,IR_untranslated>.

=head2 Conclusão

Para resumir esta secção, mantenha simples e não tente ser inteligente a
quanto da autoria das suas páginas de manual. Muitas coisas são possíveis em
nroff e não suportadas por este analisador. Por exemplo, não tente mexer em
\c para interromper o processamento de texto (como 40 páginas na minha caixa
fazem). Ou seja, certifique-se de pôr os argumentos da macro na mesma linha
em que a macro está. Sei que é válido em nroff, mas iria complicar muito o
analisador para ser tratado.

É claro, outra possibilidade é usar outro formato, mais amigável ao tradutor
(como POD a usar po4a::pod ou um da família XML como o SGML), mas graças ao
po4a::man isso não é mais necessário. Tendo dito isso, se o formato fonte da
documentação é POD, ou XML, pode ser inteligente traduzir o formato fonte e
não este gerado. Na maioria dos casos, po4a::man vai detetar páginas geradas
e mostrar um aviso. Ele vai até mesmo recusar processar páginas geradas no
POD porque tais páginas são lidadas perfeitamente pelo po4a::pod, e porque
sua contraparte nroff define um monte de novas macros que eu não desejo dar
suporte. Na minha máquina, 1432 das 4323 páginas são geradas de POD e vão
ser ignoradas pelo po4a::man.

Geralmente, po4a::man vai detetar o problema e se recusar a processar a
página, e apresentar uma mensagem adaptada. Em alguns casos raros, o
programa vai completar sem avisos, mas o resultado estará errado. Tais casos
são chamados de "bugs" ;) Se encontrar tal caso, certifique-se de
reporta-lo, com uma solução, quando possível…

=head1 ESTADO DESTE MÓDULO

Este módulo pode ser usado para a maioria das páginas de manual existentes.

Alguns testes são regularmente executados em máquinas Linux:

=over 4

=item *

um terço das páginas são recusadas porque foram geradas a partir de outro
formato suportado pelo po4a (por exemplo, POD ou SGML).

=item *

10% das páginas remanescentes são rejeitadas com um erro (por exemplo, uma
macro groff não é suportada).

=item *

Então, menos de 1% das páginas são aceites por po4a em silencio, mas com
problemas significativos (ou seja, palavras que faltam, ou palavras novas
inseridas)

=item *

As outras páginas são geralmente tratadas sem diferenças mais importantes do
que as diferenças de espaçamento ou linhas re-envolvidas (problemas com
fontes são menos de 10% das páginas processadas).

=back

=head1 VEJA TAMBÉM

L<Locale::Po4a::Pod(3pm)>, L<Locale::Po4a::TransTractor(3pm)>,
L<po4a(7)|po4a.7>

=head1 AUTORES

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

=head1 DIREITOS DE AUTOR E LICENÇA

Copyright © 2002-2008 SPI, Inc.

Este programa é um software livre; pode redistribuí-lo e/ou modificá-lo sob
os termos da GPL v2.0 ou posterior (veja o ficheiro COPYING).
