Como Internacionalizar Scripts Bash



Documentos relacionados
SAIBA MAIS SOBRE O LINUX E DESCUBRA QUAL DISTRIBUIÇÃO É MELHOR PARA VOCÊ! CURSO

ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS COTAS DE DISCO. Professor Carlos Muniz

Banco de Dados Oracle 10g

Lazarus pelo SVN Linux/Windows

Scripts Shell. João Medeiros 1 / 20

Manual do Usuário. Resumo

Instalação de Servidor de Impressão com quotas Pykota. Rogério Vinhal Nunes 25 de janeiro de 2007

LINX POSTOS AUTOSYSTEM

- Wireless e NTP - 272

GUIA MUDANÇA E FORMATAÇÃO DE SERVIDOR - MILLENNIUM

Apostila de. WordPress. Gustavo Teixeira da Cunha Coelho Henrique Gemignani Passos Lima. 11 de maio de Primeira Edição RC1

GUIA MUDANÇA E FORMATAÇÃO DE SERVIDOR - SLIM

Como gerar arquivos para Sphinx Operador

Como Gerar documento em PDF com várias Imagens

Fluxo de trabalho do Capture Pro Software: Indexação de código de barras e separação de documentos

Oficina de ferramentas de Gerência para Redes em Linux. Prof. Jefferson Santiago

Table of Contents. PowerPoint XP

Construindo sítios profissionais com Mambo

INTERNET E PROGRAMAÇÃO WEB

Sistema de Controle de Cheques GOLD

Manual para conversão de Teses e Dissertações em PDF

Ponto Secullum 4 - Comunicando com o Equipamento de marcação de Ponto

Índice. Manual Backup Online. 03 Capítulo 1: Visão Geral

ENDEREÇOS DE REDE PRIVADOS até até até Kernel

Tutorial Gerar arquivo PDF. Gerando um documento pdf com várias imagens 1- Inserir imagem no Word

MÉTRICAS DE REDE NO ZABBIX

Manual Administrador - Mídia System

Utilizando Active Directory para autenticação e OpenLDAP para dados dos usuários

BH PARK Software de Estacionamento

No Fedora, instalamos os pacotes "mysql" e "mysql-server", usando o yum:

Aula 01. Introdução ao Linux

Alterações Easycaptive

Entendendo como funciona o NAT

Fluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção

Manual do Sistema "Fala Comigo - Sistema de Atendimento On-Line" Editorial Brazil Informatica

ManualColetor Argox / Compex PT20

VISUAL LIGHTBOX FERRAMENTA WEB DESIGN FABIANO KEIJI TAGUCHI

Sistema Click Principais Comandos

como sincronizar seus contatos

Como atualizar os preços da ABCFarma.

Construtor de sites SoftPixel GUIA RÁPIDO - 1 -

TUTORIAL PRÁTICO SOBRE Git. Versão 1.1

Desenvolvendo Websites com PHP

O Manual do Desktop Sharing. Brad Hards Tradução: Pedro Morais

Sistema Operacional Unidade 5 - Iniciando o modo texto. QI ESCOLAS E FACULDADES Curso Técnico em Informática

2. Instalação em um computador autônomo

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

1 UNIT Universidade do Trabalhador Dr. Abel dos Santos Nunes

Procedimento para Configurar a Importação/Exportação de Arquivos Texto

Patch & Installer. Documento para a Criação de Instalador ou Patch para os Produtos OFCDesk V. 1.0

Microsoft Office PowerPoint 2007

Procedimentos para Instalação do SISLOC

1 Essa é a tela de login do Sistema de Atendimento Online, siga o passo a passo abaixo.

B B C F B AC C A C C C F B B B B B B A C B C BF B B A B C B AB C B B AC B CAC C B B B B

Aula 27 - Agendamento de Tarefas (CRONTAB)

Instalação do e-token do Governo federal para acesso ao Siapenet e SIAPE.

Procedimento para Configurar a Importação/Exportação de Arquivos Texto

Tutorial do Microsoft Access

CONFIGURAÇÃO MINIMA EXIGIDA:

1 Cadastre-se Mozilla Firefox. AQUI Esqueci a senha Login Senha. Esqueci a senha Login Enviar Solicitação OBS: Nome: Login:

Tabela e Gráficos Dinâmicos Como estruturar dinamicamente dados no Excel

Instalação e utilização do Document Distributor

Passo a passo para instalação de um Servidor SSH

Sysprep. O utilitário Sysprep pode ser usado em três contextos diferentes:


Instalação do PHP no Linux

Tutorial - Monitorando a Temperatura de Servidores Windows

ANDRÉ APARECIDO DA SILVA APOSTILA BÁSICA SOBRE O POWERPOINT 2007

TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH!

MATERIAL DE APRESENTAÇÃO DO SCRATCH

Manual AGENDA DE BACKUP

Atualizaça o do Maker

ez Flow Guia do Usuário versão 1.0 experts em Gestão de Conteúdo

Introdução a. Shell Script. Clésio Matos

Instalação rápida do Expresso

Colégio Presbiteriano Mackenzie Informática Educacional. Apostila

Esse manual é um conjunto de perguntas e respostas para usuários(as) do Joomla! 1.5.

Informática. Aula 04/12. Prof. Márcio Hollweg. Visite o Portal dos Concursos Públicos

JBOLETO GENERATOR A maneira mais fácil para trabalhar com boletos bancários. Agradecimentos

Se não existisse uma variável de ambiente chamada PATH você teria que digitar todo o caminho do comando para listar por exemplo:

Manual do Teclado de Satisfação Online WebOpinião

(token SafeNet e-gov - Plataforma Windows 32).

Passo-a-Passo para Criação de Conta no site Griaule e Download do Programa SDK e da Licença Fingerprint SDK 2009

Configurando um Grupo Doméstico e Compartilhando arquivos no Windows 7

Manual do Blogilo. Mehrdad Momeny Tradução: Marcus Gama

Manual Replicação Manual VPN

XD GESTÃO COMERCIAL ESPANHA

Introdução aos Sistemas da InformaçãoAula 4 p. 1

A Linguagem Pascal e o Ambiente de Programação Dev-Pascal. Introdução à Ciência da Computação I

Na tela dele, clique no sinal de + ao lado do nome do seu computador, para expandi-lo. A seguir, expanda também o item "Sites da web".

Guia de Início Rápido

Transcrição:

Como Internacionalizar Scripts Bash Gustavo Noronha Silva <kov@debian.org> 13 fevereiro 2005 Resumo A internacionalização do Debian e de qualquer sistema de computação é vital para o objetivo de universalização que é um dos mais importantes do Debian. Os scripts shell são parte importante do dia a dia de quem lida com um Debian e são ponto chave no processo de internacionalização.

Nota de Copyright Copyright 2001 - Gustavo Noronha Silva Este documento está licenciado sob a GNU FDL (Free Documentation License), conforme publicada pela Free Software Foundation.

i Sumário 1 Introdução 1 2 Preparando seu script bash 3 3 Criando o potfile 5 4 Traduzindo o potfile 7 5 Como instalar seu script com as traduções 9 6 Como atualizar as traduções 11

SUMÁRIO ii

1 Capítulo 1 Introdução Este documento cobre a internacionalização de scripts bash. Alguns procedimentos apresentados podem funcionar com outros interpretadores de comandos, mas alguns são bem específicos. Antes de começar assegure-se de ter instalado o pacote bash e o gettext. Eles serão necessários para a realização da nossa tarefa principal.

Capítulo 1. Introdução 2

3 Capítulo 2 Preparando seu script bash Antes de sair traduzindo tudo você vai ter de preparar seu script bash para ser internacionalizado. Para isso é necessário modificar todas as strings que você quer traduzir. Por exemplo: echo "Isso é um teste" echo -e "Isso é um teste\ne uma nova linha" Ficaria assim: echo $"Isso é um teste" echo -e $"Isso é um teste\ne uma nova linha" Trocando em miudos, basta colocar um cifrão ($) antes das strings. As strings devem ser colocadas entre aspas ( ), senão não são consideradas como traduzíveis. Isso é idêntico a marcar uma string com _( string ) em C, por exemplo, quando se usa o gettext. Outra coisa importante é definir a variável TEXTDOMAIN para o nome do domínio de localização do seu script. Normalmente é o nome do seu programa. Esse nome é o nome do arquivo.mo que instalaremos com as traduções mais tarde.

Capítulo 2. Preparando seu script bash 4

5 Capítulo 3 Criando o potfile O potfile é o arquivo domínio.pot que é o arquivo mestre para as traduções. Para gerá-lo usa-se, depois de preparar seu script: $ bash --dump-po-strings script > script.pot Isso irá pegar todas as strings marcadas do script e gerar um potfile pronto para ser traduzido.

Capítulo 3. Criando o potfile 6

7 Capítulo 4 Traduzindo o potfile Para traduzir seu script, agora, basta copiar o script.pot para, por exemplo, pt_br.po e fazer a tradução. A tradução é idêntica à de um potfile comum, mas alguns pontos devem ser observados. Por exemplo: echo -e $"teste\noutra linha" Uma linha assim vai sair da seguinte forma no arquivo pot: #: script:1 msgid "teste\\noutra linha" msgstr "" Esse tipo de entrada deve ser traduzida assim: #: script:1 msgid "teste\\noutra linha" msgstr "teste\noutra linha" Usando apenas uma \ antes do n. Depois de todo o arquivo traduzido, temos de gerar o arquivo.gmo de cada idioma para que sejam instalados. Isso se faz da seguinte forma: $ msgfmt --statistics -o pt_br.gmo pt_br.po

Capítulo 4. Traduzindo o potfile 8

9 Capítulo 5 Como instalar seu script com as traduções Agora é a hora de fazer a instalação. O script pode ser instalado onde você quiser. Os arquivos.pot e.po não devem ser instalados, somente os.gmo. Você deve instalar esses arquivos.gmo no diretório /usr/share/locale/$idioma /LC_MESSAGES, substituindo o $idioma pelo código do idioma que está instalando, pt_br, por exemplo. Ao instalar, não se esqueça que o pt_br.gmo, por exemplo, deve ir para /usr/share/locale /pt_br/lc_messages mas com o nome domínio.mo. O domínio deve ser substituído pelo conteúdo da variável TEXTDOMAIN que foi definida no script. Para alterar o diretório de instalação de /usr/share/locale para outro lugar você pode usar a variável TEXTDOMAINDIR no script. Depois disso seu script já deve mostrar frases no idioma definido na variável de ambiente LC_MESSAGES.

Capítulo 5. Como instalar seu script com as traduções 10

11 Capítulo 6 Como atualizar as traduções Atualizar traduções é um processo bem simples, basta regerar o potfile com o comando já apresentado e depois executar: $ msgmerge -o pt_br.po pt_br.po dominio.pot A linha acima é um exemplo. Você deve executar isso para cada arquivo.po existente. Depois disso feito basta editar os arquivos.po e regerar os.gmo.