RAC - Rows and Columns
Colaboração: Aurélio Marinho Jargas
Data de Publicação: 12 de Junho de 2009
O RAC é um programa escrito em C, criado pelos brasileiros Aurélio Marinho Jargas e Thobias Salazar Trevisan que teve sua primeira versão lançada em dezembro de 2003.
O nome RAC (lê-se "rák") é uma sigla para o texto em inglês "Rows And Columns", que significa "Linhas e Colunas". O nome é um descritivo da função do programa: extrair linhas e colunas de um texto. A Motivação
O RAC foi criado para suprir uma necessidade. Não existe no mundo Unix/Linux uma ferramenta dedicada à extração de texto de maneira fácil e flexível.
O que existem são quatro ferramentas diferentes (sed, grep, awk, cut), cada uma específica para um determinado tipo de extração. Além de precisar dominar a funcionalidade e sintaxe de cada uma dessas ferramentas, é comum o usuário precisar combinar duas ou mais delas para conseguir realizar uma tarefa simples.
O RAC nasceu para acabar com o caos e a dificuldade na extração de textos. Tendo uma sintaxe simples e poderosa, ele torna a tarefa fácil.
Por exemplo, como extrair o trecho "desde a coluna 15 da quinta linha até a penúltima coluna da antepenúltima linha". Usando as ferrramentas existentes é um desafio e tanto, mesmo para gurus. Usando o RAC é trivial:
rac '5[15]:-3[-2]' arquivo.txt.
Seguindo a filosofia Unix do "faça apenas uma coisa, e faça bem", o RAC se limita a uma única tarefa: extrair textos. Ele não edita, não acrescenta, simplesmente extrai.
As Metas
Meta única: Dominar o mundo! :)
- O objetivo principal é que o RAC se consolide como uma ferramenta básica de sistemas Unix/Linux, assim como são o cut, sed e grep.
- O meio de obter essa consolidação é incluir o RAC em distribuições de Unix/Linux.
Os cinco passos planejados para atingir o objetivo são:
- Lançar o programa com toda a sua documentação em português, no Brasil.
- Colher opiniões e contribuições de usuários, melhorando o programa até ficar completo e maduro, com suporte a maioria das funcionalidades previstas na especificação formal do programa (em inglês).
- Traduzir a documentação para o inglês e lançar o programa para o mundo.
- Aos poucos as distribuições começarão a incluí-lo e com o tempo a consolidação acontecerá naturalmente, pois acreditamos que a idéia é boa e que a necessidade existe.
Dominação mundial completa!