.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) .\" .\" 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" '' '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 turned on, 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. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" ======================================================================== .\" .IX Title "PO4A 1p" .TH PO4A 1p "2013-08-21" "Ferramentas Po4a" "Ferramentas Po4a" .\" 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" po4a \- atualizar ambos os ficheiros \s-1PO\s0 e documentos traduzidos numa só vez .SH "SINOPSE" .IX Header "SINOPSE" \&\fBpo4a\fR [\fIoptions\fR] \fIconfig_file\fR .SH "DESCRIÇÃO" .IX Header "DESCRIÇÃO" O objetivo do projeto po4a (\s-1PO\s0 para tudo) é facilitar traduções (e mais interessante, a manutenção das traduções) usando ferramentas gettext em áreas onde eles não eram esperados como documentação. .PP O programa \fBpo4a\fR é útil se você quiser evitar a chamada \&\fIpo4a\-gettextize\fR\|(1), \fIpo4a\-updatepo\fR\|(1), e \fIpo4a\-translate\fR\|(1) no complexo Makefiles quando você tem vários ficheiros para traduzir, de formato diferente, ou a necessidade de especificar diferentes opções para diferentes documentos. .SH "Tabela de conteúdo" .IX Header "Tabela de conteúdo" Este documento está organizado da seguinte forma: .SS "DESCRIÇÃO" .IX Subsection "DESCRIÇÃO" .SS "INTRODUÇÃO" .IX Subsection "INTRODUÇÃO" .SS "\s-1SINTAXE\s0 \s-1DE\s0 \s-1FICHEIROS\s0 \s-1DE\s0 CONFIGURAÇÃO" .IX Subsection "SINTAXE DE FICHEIROS DE CONFIGURAÇÃO" \fIEspecificando as línguas modelo\fR .IX Subsection "Especificando as línguas modelo" .PP \fIEspecificando o caminho para entradas do tradutor\fR .IX Subsection "Especificando o caminho para entradas do tradutor" .PP \fIDeteção automática dos caminhos e linguagens\fR .IX Subsection "Deteção automática dos caminhos e linguagens" .PP \fIEspecificando os documentos para traduzir\fR .IX Subsection "Especificando os documentos para traduzir" .PP \fIEspecificar opções para os módulos\fR .IX Subsection "Especificar opções para os módulos" .PP \fIEspecificando aliases\fR .IX Subsection "Especificando aliases" .PP \fIModo de divisão\fR .IX Subsection "Modo de divisão" .SS "OPÇÕES" .IX Subsection "OPÇÕES" .SS "\s-1EXEMPLO\s0" .IX Subsection "EXEMPLO" .SS "DEFICIÊNCIAS" .IX Subsection "DEFICIÊNCIAS" .SS "\s-1VER\s0 TAMBÉM" .IX Subsection "VER TAMBÉM" .SS "\s-1AUTORES\s0" .IX Subsection "AUTORES" .SS "\s-1DIREITOS\s0 \s-1DE\s0 \s-1AUTOR\s0 E LICENÇA" .IX Subsection "DIREITOS DE AUTOR E LICENÇA" \fI\fR .IX Subsection "" .SH "INTRODUÇÃO" .IX Header "INTRODUÇÃO" O programa \fBpo4a\fR é responsável pela atualização tanto dos ficheiros \s-1PO\s0 (para sincronizá\-los com os documentos originais) como dos documentos traduzidos (para sincronizá\-los para os ficheiros \s-1PO\s0). O ponto principal é tornar mais fácil o uso do po4a sem ter que se lembrar das opções de linha de comando. .PP Ele também permite que você misture os documentos tendo formatos diferentes no mesmo ficheiro \s-1POT\s0 para que possa ter apenas um ficheiro por projeto. .PP Este comportamento pode ser imitado por outras ferramentas da suite po4a (por exemplo com Makefiles), mas é um pouco difícil de fazer, e cansativo refazer o mesmo complicado Makefiles para cada projeto usando po4a. .PP O fluxo de dados pode ser resumido como a seguir. Quaisquer alterações ao documento principal será refletida nos ficheiros \s-1PO\s0, e todas as alterações aos ficheiros \s-1PO\s0 (manual ou causada por etapa anterior) será refletido nos documentos de tradução. .PP .Vb 1 \& documento principal \-\-> ficheiros PO \-\-> traducões .Ve .PP O fluxo de dados não pode ser invertido nes ferramenta, e as mudanças nas traduções são substituídas pelo conteúdo dos ficheiros \s-1PO\s0. Por uma questão de facto, esta ferramenta não pode ser usada para converter as traduções existentes para o sistema po4a. Para essa tarefa, por favor consulte \&\fIpo4a\-gettextize\fR\|(1). .SH "SINTAXE DE FICHEIROS DE CONFIGURAÇÃO" .IX Header "SINTAXE DE FICHEIROS DE CONFIGURAÇÃO" O argumento (obrigatório) é o caminho para o ficheiro de configuração a usar. A sua sintaxe pretende ser simples e perto dos ficheiros de configuração usados ​​pelos projetos intl-tools. .PP Comentários nestes ficheiros são anotados pelo caratere '#'. Comenta tudo até ao fim da linha. As linhas podem ser continuadas por escapar do fim da linha. Todas as linhas não em branco devem começar com um comando [], seguido pelos seus argumentos. (parece difícil dizer desta maneira, mas é bastante fácil, espero ;) .SS "Especificando as línguas modelo" .IX Subsection "Especificando as línguas modelo" \&\fBNote:\fR Recomenda-se utilizar \fB[po_directory]\fR em vez de \fB[po4a_langs]\fR e \&\fB[po4a_paths]\fR. Ver secção \fBDetecção automática dos caminhos e linguagens\fR abaixo. .PP Este é um comando opcional que pode simplificar todo o ficheiro de configuração, e irá torná\-lo mais escalável. Você tem que especificar uma lista das línguas em que deseja traduzir os documentos. Isto é tão simples como: .PP .Vb 1 \& [po4a_langs] fr de .Ve .PP Isto irá permitir-lhe expandir \fB\f(CB$lang\fB\fR para todos os idiomas especificados no resto do ficheiro de configuração. .SS "Especificando o caminho para entradas do tradutor" .IX Subsection "Especificando o caminho para entradas do tradutor" \&\fBNote:\fR Recomenda-se utilizar \fB[po_directory]\fR em vez de \fB[po4a_langs]\fR e \&\fB[po4a_paths]\fR. Ver secção \fBDetecção automática dos caminhos e linguagens\fR abaixo. .PP Primeiro, você tem que especificar onde os ficheiros de entrada do tradutor (ou seja, os ficheiros utilizado pelos tradutores para fazer o seu trabalho) estão localizados. Isso pode ser feito por uma tal linha: .PP .Vb 2 \& [po4a_paths] doc/l10n/project.doc.pot \e \& fr:doc/l10n/fr.po de:doc/l10n/de.po .Ve .PP O comando é portanto \fB[po4a_paths]\fR. O primeiro argumento é o caminho para o ficheiro \s-1POT\s0 a usar. Todos os argumentos subsequentes são em forma auto-explicativa: .PP .Vb 1 \& : .Ve .PP Se você definiu as línguas de modelo, pode reescrever a linha acima desta forma: .PP .Vb 1 \& [po4a_paths] doc/l10n/project.doc.pot $lang:doc/l10n/$lang.po .Ve .PP You can also use \fB\f(CB$master\fB\fR to refer to the document filename. In this case, \&\fBpo4a\fR will use a split mode: one \s-1POT\s0 and one \s-1PO\s0 (for each language) will be created for each document specified in the \fBpo4a\fR configuration file. See the \fBSplit mode\fR section. .PP .Vb 1 \& [po4a_paths] doc/$master/$master.pot $lang:doc/$master/$lang.po .Ve .SS "Deteção automática dos caminhos e linguagens" .IX Subsection "Deteção automática dos caminhos e linguagens" Outro comando pode ser usado para especificar o nome de um diretório onde os ficheiros \s-1PO\s0 e \s-1POT\s0 estão localizados. Quando é usado, \fBpo4a\fR irá detectar o ficheiro \s-1POT\s0 como o único \fI*.pot\fR ficheiro do diretório especificado. \fBpo4a\fR também vai usar a lista de \fI*.po\fR ficheiros para definir a lista de idiomas (removendo para fora a extensão). Estas idiomas serão utilizados para a substituição da \fB\f(CB$lang\fB\fR variável no resto do ficheiro de configuração. .PP Este comando não deve ser usado em conjunto com os comandos \fB[po4a_langs]\fR ou \fB[po4a_paths]\fR. .PP Ao usar este comando, você tem que criar um ficheiro \s-1POT\s0 vazio na primeira invocação de \fBpo4a\fR para deixá\-lo saber o nome do ficheiro \s-1POT\s0. .PP .Vb 1 \& [po_directory] po4a/po/ .Ve .SS "Especificando os documentos para traduzir" .IX Subsection "Especificando os documentos para traduzir" Agora você naturalmente tem que especificar que documentos são traduzidos, o seu formato, e onde colocar as traduções. Isso pode ser feita por tais linhas: .PP .Vb 4 \& [type: sgml] doc/my_stuff.sgml fr:doc/fr/mon_truc.sgml \e \& de:doc/de/mein_kram.sgml \& [type: pod] script fr:doc/fr/script.1 de:doc/de/script.1 \e \& add_fr:doc/l10n/script.fr.add .Ve .PP Isto deve ser também bastante auto-explicativo. Note-se que, no segundo caso, \fIdoc/l10n/script.fr.add\fR é uma adenda para adicionar à versão francesa deste documento. Por favor, consulte \fIpo4a\fR\|(7) para obter mais informações sobre adendas. .PP Mais formalmente, o formato é: .PP .Vb 2 \& [type: ] (:)* \e \& (add_:*)* .Ve .PP Se não houver um modificador, \fIaddendum_path\fR é um caminho para uma adenda. Modificadores são .IP "\fB?\fR" 2 .IX Item "?" Incluir \fIaddendum_path\fR se este ficheiro existir, caso contrário não fazer nada. .IP "\fB@\fR" 2 .IX Item "@" \&\fIaddendum_path\fR não é uma adenda regular, mas um ficheiro contendo uma lista de adendas, uma por linha. Cada adenda pode ser precedida de modificadores. .IP "\fB!\fR" 2 .IX Item "!" \&\fIaddendum_path\fR é descartado, não é carregado e não será carregado por qualquer especificação de adenda. .PP Se você definiu as línguas de modelo, pode reescrever a linha acima desta forma: .PP .Vb 2 \& [type: pod] script $lang:doc/$lang/script.1 \e \& add_fr:doc/l10n/script.fr.add .Ve .PP Se todos os idiomas tinham adendas com caminhos semelhantes, você também pode escrever algo como: .PP .Vb 2 \& [type: pod] script $lang:doc/$lang/script.1 \e \& add_$lang:doc/l10n/script.$lang.add .Ve .SS "Especificar opções para os módulos" .IX Subsection "Especificar opções para os módulos" \&\fBpo4a\fR aceita opções que serão passadas para o módulo. Estas opções são módulos específicos e são especificados com a troca \fB\-o\fR. .PP Se você precisa de uma opção específica para um documento que deseja traduzir, também pode especificá\-lo no ficheiro de configuração. Opções são introduzidas pala palavra-chave \fBopt\fR. O argumento da palavra-chave \fBopt\fR deve ser citado com aspas duplas se contém um espaço (por exemplo, se você especificar várias opções, ou uma opção com um argumento). Pode também especificar opções que só aplica a um idioma específico, usando a palavra-chave \fBopt_\fR\fIlang\fR. .PP Aqui está um exemplo: [type:man] data\-05/test2_man.1 \f(CW$lang:tmp\fR/test2_man.$lang.1 \e opt:\*(L"\-k 75\*(R" opt_it:\*(L"\-L \s-1UTF\-8\s0\*(R" opt_fr:\-v .PP Argumentos podem conter espaços, se você usar aspas simples ou aspas duplas: [po4a_alias:man] man opt:\*(L"\-o \e\*(R"mdoc=NAME,SEE ALSO\e\*(L" \-k 20\*(R" .PP Se você quer especificar as mesmas opções para muitos documentos, pode querer usar um alias (consulte a secção abaixo \fBSpecifying aliases\fR). .PP Você também pode definir opções para todos os documentos especificados no ficheiro de configuração: [options] opt: \*(L"...\*(R"opt_fr: \*(L"...\*(R" .SS "Especificando aliases" .IX Subsection "Especificando aliases" Se você deve especificar as mesmas opções para vários ficheiros, pode estar interessado em definir um módulo alias. Isto pode ser feito desta forma: .PP .Vb 1 \& [po4a_alias:test] man opt:"\-k 21" opt_es:"\-o debug=splitargs" .Ve .PP Isto define um módulo alias denominado \fBtest\fR, com base no módulo \fBman\fR, com o \fB\-k 21\fR aplicado a todas as línguas e com \fB\-o debug=splitargs\fRaplicada à tradução espanhola. .PP Este módulo alias pode ser usar como um módulo normal: .PP .Vb 2 \& [type:test] data\-05/test2_man.1 $lang:tmp/test2_man.$lang.1 \e \& opt_it:"\-L UTF\-8" opt_fr:\-v .Ve .PP Note que pode especificar opções adicionais num ficheiro por base. .SS "Modo de divisão" .IX Subsection "Modo de divisão" O modo de divisão é usado quando \fB\f(CB$master\fB\fR é usado na linha \&\fB[po4a_paths]\fR. .PP Quando o modo de divisão é usado, um temporário e grande \s-1POT\s0 e um grande POs são utilizados. Isto permite compartilhar as traduções entre todos POs. .PP Se dois POs tiverem traduções diferentes para a mesma sequência, \fBpo4a\fR irá marcar essa sequência como imprecisa e apresentará duas traduções em todos os POs que contêm essa sequência. Então, quando um tradutor atualiza a tradução e remove o comando impreciso num \s-1PO\s0, a tradução dessa sequência será atualizada automaticamente em cada POs. .PP If there are name conflicts because several files have the same filename, the name of the master file can be specified by adding a \&\f(CW\*(C`master:file=\*(C'\fR\fIname\fR option: .PP .Vb 4 \& [po4a_langs] de fr ja \& [po4a_paths] l10n/po/$master.pot $lang:l10n/po/$master.$lang.po \& [type: xml] foo/gui.xml $lang:foo/gui.$lang.xml master:file=foo\-gui \& [type: xml] bar/gui.xml $lang:bar/gui.$lang.xml master:file=bar\-gui .Ve .SH "OPÇÕES" .IX Header "OPÇÕES" .IP "\fB\-k\fR, \fB\-\-keep\fR" 4 .IX Item "-k, --keep" O limiar mínimo de percentagem por tradução para manter (ou seja, escrever) o ficheiro resultante (padrão: 80). Ou seja, por padrão, os ficheiros têm que ser traduzidos em pelo menos 80% para serem escritos. .IP "\fB\-h\fR, \fB\-\-help\fR" 4 .IX Item "-h, --help" Mostrar uma pequena mensagem de ajuda. .IP "\fB\-M\fR, \fB\-\-master\-charset\fR" 4 .IX Item "-M, --master-charset" Conjunto de carateres dos ficheiros contendo os documentos para traduzir. Note-se que todos documentos mestre devem usar o mesmo conjunto de carateres por agora. Esta é uma limitação conhecida, e estamos a trabalhar para resolver isso. .IP "\fB\-L\fR, \fB\-\-localized\-charset\fR" 4 .IX Item "-L, --localized-charset" Conjunto de carateres dos ficheiros contendo os documentos localizados. Note-se que todos documentos traduzidos usarão o mesmo conjunto de carateres por agora. Esta é uma limitação conhecida, e estamos a trabalhar para resolver isso. .IP "\fB\-A\fR, \fB\-\-addendum\-charset\fR" 4 .IX Item "-A, --addendum-charset" Conjunto de carateres da adenda. Note-se que todas as adendas devem estar no mesmo conjnto de carateres. .IP "\fB\-V\fR, \fB\-\-version\fR" 4 .IX Item "-V, --version" Mostrar a versão do script e sair .IP "\fB\-v\fR, \fB\-\-verbose\fR" 4 .IX Item "-v, --verbose" Aumentar o detalhe do programa. .IP "\fB\-q\fR, \fB\-\-quiet\fR" 4 .IX Item "-q, --quiet" Diminuir o detalhe do programa. .IP "\fB\-d\fR, \fB\-\-debug\fR" 4 .IX Item "-d, --debug" Saída de alguma informação de depuração. .IP "\fB\-o\fR, \fB\-\-option\fR" 4 .IX Item "-o, --option" Opção(s) extra para passar para o formato em modo de extensão. Especificar cada opção no formato '\fIname\fR\fB=\fR\fIvalue\fR'. Consulte a documentação de cada modo de extenção para mais informações sobre as opções válidas e seus significados. .IP "\fB\-f\fR, \fB\-\-force\fR" 4 .IX Item "-f, --force" Gera sempre os ficheiros \s-1POT\s0 e \s-1PO\s0, mesmo se \fBpo4a\fR considera que não é necessário. .Sp O comportamento padrão (quando \fB\-\-force\fR não é especificado) é o seguinte: .RS 4 .Sp .RS 4 Se o ficheiro \s-1POT\s0 já existe, ele é regenerado se um documento mestre ou o ficheiro de configuração é mais recente. O ficheiro \s-1POT\s0 também é escrito num documento temporário e \fBpo4a\fR verifica que as mudanças são realmente necessárias. .Sp Além disso, uma tradução é regenerada somente se o seu documento mestre, o ficheiro \s-1PO\s0, uma das suas adendas ou o ficheiro de configuração é mais recente. Para evitar tentar regenerar traduções que não passam no teste de limite (ver \fB\-\-keep\fR), um ficheiro com a extensão \fI.po4a\-stamp\fR pode ser criado (ver \fB\-\-stamp\fR). .RE .RE .RS 4 .Sp Se um documento mestre inclui ficheiros, você deve usar a flag \fB\-\-force\fR porque o tempo de modificação dos ficheiros incluídos não são tomados emconta. .Sp Os ficheiros \s-1PO\s0 são sempre regenerados com base em \s-1POT\s0 com \fBmsgmerge \-U\fR. .RE .IP "\fB\-\-stamp\fR" 4 .IX Item "--stamp" Diz \fBpo4a\fR para criar ficheiros de informação quando uma tradução não é gerada porque não atingiu o limiar. Esses ficheiros de informação são nomeados de acordo com o documento traduzido esperado, com a extensão \&\fI.po4a\-stamp\fR. .Sp Nota: Isso só ativa a criação dos ficheiros \fI.po4a\-stamp\fR. Os ficheiros de informação são sempre utilizados se existirem, e são removidos com \&\fB\-\-rm\-translations\fR ou quando o ficheiro é finalmente traduzido. .IP "\fB\-\-no\-translations\fR" 4 .IX Item "--no-translations" Não gerar os documentos traduzidos, apenas atualizar os ficheiros \s-1POT\s0 e \s-1PO\s0. .IP "\fB\-\-rm\-translations\fR" 4 .IX Item "--rm-translations" Remover os ficheiros traduzidos (implica \fB\-\-no\-translations\fR). .IP "\fB\-\-no\-backups\fR" 4 .IX Item "--no-backups" Esta flag não faz nada desde 0.41, e pode ser removida em versões posteriores. .IP "\fB\-\-rm\-backups\fR" 4 .IX Item "--rm-backups" Esta flag não faz nada desde 0.41, e pode ser removida em versões posteriores. .IP "\fB\-\-translate\-only\fR \fItranslated-file\fR" 4 .IX Item "--translate-only translated-file" Traduzir apenas o ficheiro especificado. Pode ser útil para acelerar o processamento se um ficheiro de configuração contém muitos ficheiros. Note que o que esta opção faz não é possível atualizar ficheiros \s-1PO\s0 e \s-1POT\s0. Esta opção pode ser usada várias vezes. .IP "\fB\-\-variable\fR \fIvar\fR\fB=\fR\fIvalue\fR" 4 .IX Item "--variable var=value" Definir uma variável que será expandida no ficheiro de configuração \&\fBpo4a\fR.Cada ocorrência de \fI$(var)\fR será substituída por \fIvalue\fR. Esta opção pode ser usada várias vezes. .IP "\fB\-\-srcdir\fR \fI\s-1SRCDIR\s0\fR" 4 .IX Item "--srcdir SRCDIR" Definir o diretório de base para todos os documentos de entrada especificados no ficheiro de configuração \fBpo4a\fR. .IP "\fB\-\-destdir\fR \fI\s-1DESTDIR\s0\fR" 4 .IX Item "--destdir DESTDIR" Definir o diretório base para todos os documentos de saída especificados no ficheiro de configuração \fBpo4a\fR. .SS "OPÇÕES \s-1QUE\s0 \s-1MODIFICAM\s0 O CABEÇALHO \s-1POT\s0" .IX Subsection "OPÇÕES QUE MODIFICAM O CABEÇALHO POT" .IP "\fBporefs\fR \fItype\fR[,\fBwrap\fR|\fBnowrap\fR]" 4 .IX Item "porefs type[,wrap|nowrap]" Especificar o formato de referência. Argumento \fItype\fR pode ser um \fBnone\fR para não produzir qualquer referência, \fBnoline\fR para não especificar o número da linha (mais exactamente todos os números de linha são substituídos por 1), \fBcounter\fR para substituir o número de linha por um contador crescente, e \fBfull\fR para incluir referências completas. .Sp O argumento pode ser seguido por uma vírgula ou pela palavra-chave \fBwrap\fR ou \fBnowrap\fR. Referências são escritas por padrão em uma única linha. A opção \fBwrap\fR envolve referências sobre várias linhas, para imitar as ferramentas \fBgettext\fR (\fBxgettext\fR e \fBmsgmerge\fR). Esta opção irá tornar-se o padrão num lançamento futuro, porque é mais sensível. A opção \fBnowrap\fR é acessível para os utilizadores que querem manter o comportamento antigo. .IP "\fB\-\-msgid\-bugs\-address\fR \fIemail@address\fR" 4 .IX Item "--msgid-bugs-address email@address" Definir o endereço do relatório para msgid bugs. Por padrão, os ficheiros \&\s-1POT\s0 criados não têm campos Report-Msgid-bugs-To. .IP "\fB\-\-copyright\-holder\fR \fIstring\fR" 4 .IX Item "--copyright-holder string" Definir o titular dos direitos de autor no cabeçalho \s-1POT\s0. O valor padrão é \&\*(L" Free Software Foundation, Inc. \*(R" .IP "\fB\-\-package\-name\fR \fIstring\fR" 4 .IX Item "--package-name string" Definir o nome do pacote para o cabeçalho \s-1POT\s0. O padrão é \*(L"\s-1PACOTE\s0\*(R". .IP "\fB\-\-package\-version\fR \fIstring\fR" 4 .IX Item "--package-version string" Definir o nome do pacote para o cabeçalho \s-1POT\s0. O padrão é \*(L"VERSÃO\*(R". .SS "OPÇÕES \s-1PARA\s0 \s-1MODIFICAR\s0 \s-1FICHEIROS\s0 \s-1PO\s0" .IX Subsection "OPÇÕES PARA MODIFICAR FICHEIROS PO" .IP "\fB\-\-msgmerge\-opt\fR \fIoptions\fR" 4 .IX Item "--msgmerge-opt options" Opções extra para \fBmsgmerge\fR. .Sp Nota: \fB\f(CB$lang\fB\fR será estendida para o idioma atual. .IP "\fB\-\-no\-previous\fR" 4 .IX Item "--no-previous" Esta opção remove \fB\-\-previous\fR a partir das opções passadas para B Isto permite suportar versões do \fBgettext\fR mais cedo do que 0.16. .IP "\fB\-\-previous\fR" 4 .IX Item "--previous" Esta opção acrescenta \fB\-\-previous\fR ás opções passadas para \&\fBmsgmerge\fR. Isso requer \fBgettext\fR 0.16 ou posterior, e é ativado por padrão. .SS "\s-1EXEMPLO\s0" .IX Subsection "EXEMPLO" Vamos supor que você mantém um programa chamado \fBfoo\fR que tem uma página do manual \fIman/foo.1\fR que naturalmente, é mantida apenas em Inglês. Agora você como gestor do upstream ou downstream quer criar e manter a tradução. Primeiro precisa criar o ficheiro \s-1POT\s0 necessário para enviar para os tradutores usando \fIpo4a\-gettextize\fR\|(1). .PP Então para o nosso caso chamaríamos .PP .Vb 1 \& cd man && po4a\-gettextize \-f man \-m foo.1 \-p foo.pot .Ve .PP Você teria então que enviar este ficheiro para as listas de idiomas adequadas ou oferecê\-lo para descarregar em algum lugar do seu site. .PP Agora, vamos supor que você recebeu três traduções antes do seu próximo lançamento: \fIde.po\fR (incluindo uma adenda \fIde.add\fR), \fIsv.po\fR e \&\fIpt.po\fR. Desde que não queira mudar o seu \fIMakefile\fR(s) sempre que uma nova tradução chega, pode usar \fBpo4a\fR com um ficheiro de configuração apropriado no seu \fIMakefile\fR. Vamos chamá\-lo \fIpo4a.cfg\fR. No nosso exemplo seria algo como o seguinte: .PP .Vb 1 \& [po_directory] man/po4a/po/ \& \& [type: man] man/foo.1 $lang:man/translated/$lang/foo.1 \e \& add_$lang:?man/po4a/add_$lang/$lang.add opt:"\-k 80" .Ve .PP Neste exemplo, vamos supor que suas páginas de manual geradas (e todos ficheiros \s-1PO\s0 e adendas) devem ser armazenadas em \fIman/translated/$lang/\fR (respectivamente em \fIman/po4a/po/\fR e \fIman/po4a/add_$lang/\fR) abaixo do diretório atual. No nosso exemplo o diretório \fIman/po4a/po/\fR incluiria \&\fIde.po\fR, \fIpt.po\fR e \fIsv.po\fR, e o diretório \fIman/po4a/add_de/\fR incluiria F . .PP Observe o uso do modificador \fB?\fR apenas como a tradução alemã (\fIde.po\fR) é acompanhado por uma adenda. .PP Para realmente construir as páginas do manual traduzidas você então (uma vez!) adiciona a seguinte linha no ponto \fBbuild\fR do \fIMakefile\fR apropriado: .PP .Vb 1 \& po4a po4a.cfg .Ve .PP Uma vez que isso é configurado você não precisa de tocar em \fIMakefile\fR quando uma nova tradução chega, ou seja, se a equipa francesa lhe envia \&\fIfr.po\fR e \fIfr.add\fR, então você simplesmente larga-os em \fIman/po4a/po/\fR e F respectivamente e da próxima vez o programa é construido, a tradução francesa é construida automaticamente em \&\fIman/translated/fr/\fR. .PP Note que você ainda precisa de um destino apropriado para instalar páginas do manual localizadas em Inglês. .PP Finalmente, se você não armazenar ficheiros gerados no seu sistema de controlo de versão, vai precisar de uma linha no seu ponto \fBclean\fR bem como: \-rm \-rf man/translated .SH "DEFICIÊNCIAS" .IX Header "DEFICIÊNCIAS" .IP "\(bu" 4 Duplicar algum código com os programas \fBpo4a\-\fR\fI*\fR. .PP Fragmento de boas-vindas;) .SH "VER TAMBÉM" .IX Header "VER TAMBÉM" \&\fIpo4a\-build\fR\|(1), \fIpo4a\-gettextize\fR\|(1), \fIpo4a\-normalize\fR\|(1), \&\fIpo4a\-translate\fR\|(1), \fIpo4a\-updatepo\fR\|(1), \fIpo4a\-build.conf\fR\|(5), \fIpo4a\fR\|(7) .SH "AUTORES" .IX Header "AUTORES" .Vb 3 \& Denis Barbier \& Nicolas François \& Martin Quinson (mquinson#debian.org) .Ve .SH "DIREITOS DE AUTOR E LICENÇA" .IX Header "DIREITOS DE AUTOR E LICENÇA" Direitos de Autor 2002\-2012 por \s-1SPI\s0, inc. .PP Este programa é software livre, você pode redistribuí\-lo e/ou modificá\-lo sob os termos da \s-1GPL\s0 (consulte o ficheiro CÓPIA).