# Brazilian Rails

## O que foi?

O Brazilian Rails foi o plugin de internacionalização mais conhecido do Brasil e tinha como objetivo unir vários recursos de regras e traduções para o desenvolvedor brasileiro.

## O que é?

Brazilian Rails é um conjunto de gems para serem usadas com Ruby e com o Ruby on Rails e tem como objetivo unir alguns recursos úteis para os desenvolvedores brasileiros.

## O que vem pela frente?

Existem vários plugins espalhados, que são úteis a comunidade brasileira, e gostaria de convocar seus colaboradores a entrar em contato comigo para que juntos nós migremos para gems dentro do Brazilian Rails.

## Já usava como plugin, o que eu tenho que fazer?

NADA! Essa gem foi cuidadosamente pensada permitir seu uso como plugin sem precisar fazer mais nada, preservando-se a mesma forma de instalação anterior.

## Cade o SVN?

Foi desativado por completo. Agora só teremos suporte GIT.

## Quais as gems que compõe o Brazilian Rails?

  • brcep

  • brdata

  • brdinheiro

  • brhelper

  • brnumeros

  • brstring

  • brcpfcnpj

  • brI18n

*OBS*: A gem brtraducao foi removida do Brazilian Rails devido a adição do suporte i18n do Rails. Ele continua podendo ser usada, porém não faz mais parte desse projeto. Para maiores detalhes, leia o post [O Brazilian Rails e o suporte i18n]

*OBS*: A gem brI18n foi criada para acomodar as traduções usando suporte i18n das versões mais recentes do Rails.

## Suporte à Ruby 1.9 (experimental)

As gems foram portadas para Ruby 1.9, porém o suporte ainda é experimental, e contamos com a comunidade para ajudar a melhorar o suporte. Todas as gems funcionam corretamente, mas caso decida usar a nova versão do Ruby, tome um cuidado especial com a gem brdata. O método Date#parse se comporta de maneira diferente nas versões 1.8 e 1.9 do Ruby, o que pode ocasionar alguns erros.

## Como faço para instalar?

É muito difícil…

### No Rails 3.x

Adicionar ao seu Gemfile:

gem 'brazilian-rails'

### No Rails 2.x

#### Como plugin:

ruby script/plugin install git://github.com/tapajos/brazilian-rails.git

Por padrão, a pluralização vem desabilitada, isso para não atrapalhar os projetos que já existem.

#### Como gem:

gem install brazilian-rails -v 2.1.15

Depois que todas as gems forem instaladas você pode utiliza-las individualmente ou carregando todas, como no trecho abaixo.

Rails::Initializer.run do |config| config.gem 'brazilian-rails', '2.1.15' end

### I18n

Por padrão a gem não carrega o suporte de traduções do Rails, para usa-la você deve fazer o require abaixo:

require 'brI18n'

## Como funciona?

Está tudo explicado na nossa [api][].

## Achei um BUG, o que eu faço?

Por favor, nos avise! Isso é fácil e rápido. Isso pode ser feito em:

github.com/tapajos/brazilian-rails/issues][issues

## Como contribuir?

  1. Fazer um fork do projeto

  2. Instalar as dependências: bundle install (Se não tiver o bundler instalado, faça antes: gem install bundler)

  3. Fazer os devidos ajustes com os respectivos testes (TestUnit se possível e tente fazer commits atômicos)

  4. Fazer pull request

## Quem está por traz disso tudo?

O [Marcos Tapajós] tomou coragem para publicar todas as funcionalidades em um plugin, com testes unitários para garantir que tudo funcione conforme manda o figurino. Além do Tápa, outros loucos mantém tudo organizado, são: [Celestino Gomes], [André Luiz Kupkovski], [A galera da Improve It] e mais alguns que ficam escondidos para não pagar esse mico…

Muitos já contribuíram com o projeto.

git log –raw | grep “^Author: ” | sed 's/Author: //' | sed 's/<.*$//' | sort | uniq

[Andre Bernardes](github.com/albertobraschi), [Cássio Marques](github.com/cassiomarques), [Danilo Jeremias da Silva](github.com/dannnylo), [Eduardo Fiorezi](github.com/eduardofiorezi), [Eduardo Hertz](github.com/eduardohertz), [Elomar Nascimento dos Santos](github.com/elomarns), [Everton Ribeiro](github.com/nuxlli), [Fabio Akita](github.com/akitaonrails), [Fernando Gomes](github.com/fernandogomes), [Fernando Migliorini Luizão](github.com/fernandoluizao), [Frederico Macedo](github.com/frederico), [Gun.io Whitespace Robot](github.com/GunioRobot), [Jhimy Fernandes Villar](github.com/stjhimy), [João Vitor](github.com/joaovitor), [Julio Santos Monteiro](github.com/jmonteiro), [Kivanio Barbosa](github.com/kivanio), [Marcus Derencius](github.com/derencius), [Marcus Sá](about.me/marcus_sa), [Mauricio Zaffari](github.com/mauriciozaffari), [Rafael Felix](github/com/fellix), [Rafael Uchoa](github.com/uchoaaa), [Rafeal Carvalho](github.com/rafaeldx7), [Ricardo Shiota Yasuda](github.com/shadow11), [Rodrigo Manhães](github.com/rodrigomanhaes) e [Sergio Brant](github.com/smbrant)

## Algumas funcionalidades:

  • Date e Time no formato brasileiro

  • Números por Extenso

  • Dinheiro

  • Cpf e Cnpj

  • Feriado

  • Mensagens de erro traduzidas

  • etc

## Duvidas?

As duvidas podem ser enviadas diretamente a um dos desenvolvedores ou através da página do projeto no [RubyForge]

## Quem investe nesse plugin?

Este plugin é patrocinado pela [Improve It].

![Improve It]][ii

[rf]: rubyforge.org/projects/brazilian-rails/ [api]: brazilian-rails.improveit.com.br [ii]: www.improveit.com.br [logo]: “Improve It” [tino]: tinogomes.wordpress.com [andre]: www.workingwithrails.com/person/9227-andr-luiz-kupkovski [rf]: rubyforge.org/projects/brazilian-rails [mt]: www.improveit.com.br/tapajos [vt]: www.improveit.com.br/vinicius [gg]: ggarnier.wordpress.com/ [brtraducoes]: blog.improveit.com.br/articles/2009/02/13/o-brazilian-rails-e-o-suporte-i18n [issues]: github.com/tapajos/brazilian-rails/issues