# Escrevendo Livros com o Txt2tags

### por Aurélio Jargas

> Esse documento é um guia rápido que mostra os benefícios de usar a ferramenta txt2tags no processo de composição de livros. Também aplicado para outros documentos extensos como Manuais e Teses.

# 1. Prefácio

Eu sou o autor do txt2tags`[1]` e escrevi duas publicações usando ele: um Livro de Expressões Regulares (96 páginas) e um Curso de Programação Shell (108 páginas). O processo de composição foi fácil e indolor, então eu quero compartilhar essa experiência.

Um livro é um verdadeiro trabalhão para ficar pronto, mas isso não tem que ser um processo complicado. Escrever é organizar idéias em estruturas de texto como seções, parágrafos e listas. O txt2tags é uma ferramenta que faz essa tarefa simples e fácil.

Escrevendo sozinho ou em equipe, com ou sem controle de versão, conteúdo técnico ou não, apenas texto ou com gráficos. Em qualquer caso o txt2tags pode ser usado como a principal ferramenta para criação de livros.

Há um livro sendo escrito agora, usando txt2tags.

> `[1]` O txt2tags lê um arquivo de texto com um mínimo de marcações como **negrito** e //itálico// e as converte para documentos como HTML, LaTeX e Adobe PageMaker. Mais informações: http://txt2tags.org.

# 2. Editores Visuais VS Marcações

As duas maneiras comuns para escrever um livro são usar um Editor Visual (Microsoft Word, Adobe Pagemaker) ou uma linguagem de Marcação (LaTeX, docbook).

Em Editores Visuais você escreve e formata o conteúdo no mesmo tempo. Essa abordagem é legal para textos pequenos, mas para um livro de 300 páginas, a formatação consome tempo e distrai o escritor.

Em linguagens de marcação você escreve o conteúdo e o marca, então um programa externo irá convertê-lo para a forma final. O escritor não se preocupa com a formatação, mas o processo de incluir `<tags></tags>` e `\mais{tags}` é chato e passível de erro, tornando o conteúdo difícil para ler a partir das fontes.

O txt2tags também usa o esquema de marcação, mas a grande diferença é que suas marcas são mínimas, algumas certamente são quase naturais, como usar o hífen para itens de lista. Então o escritor pode focalizar somente no conteúdo e a fonte permanece legível.

# 3. A Abordagem do Txt2tags

Usando txt2tags, o processo de composição do livro segue estes passos:

1. O(s) autor(es) aprendem as simples regras de marcação do txt2tags.

2. O autor escreve o conteúdo do livro, esquecendo coisas supérfluas como margem da página, tipo da fonte, cores e tamanhos.

3. O autor (ou o editor) abre o conteúdo num processador de texto gráfico que lê HTML (ou LaTeX ou ...) e conclui a formatação do livro.

O passo 1 é rápido, apenas alguns minutos, o passo 2 deverá levar meses, e o passo 3 pode levar dias ou semanas.

Escrever o conteúdo é quando você gastará mais tempo no livro, então é realmente importante fazer esse processo uma simples, produtiva e agradável tarefa.

Seguem argumentos mostrando que txt2tags pode ser usado para isso.

# 4. Veloz e Furioso

Tempo é a chave. Usando o txt2tags você experimentará um período de produtividade elevado porque você escreve o conteúdo, sem formatação.

- Lançamento Inicial Rápido

  É muito difícil começar algo, mas o txt2tags tem uma abordagem agradável para esse problema. Apenas sente e escreva em texto puro. Quando você tiver concluído, em poucos minutos você pode adicionar todas as marcas do txt2tags no texto e o documento está pronto para ser convertido e publicado.

- Visualização Instantânea

  Não importa qual será o formato final do livro, HTML é o formato preferido para usar na hora de escrever. Um panorama do estágio atual do livro pode ser feito a qualquer momento, convertendo as fontes para uma página HTML, então qualquer sistema com um navegador pode lê-lo. Se você precisa de uma versão impressa, converta o HTML para PDF com a excelente ferramenta htmldoc.

- Visão geral do Conteúdo do Livro

  Para rapidamente ter uma visão geral do conteúdo do livro a qualquer momento, use a opção somente TOC do txt2tags. O programa mostrará o índice do livro, com a lista dos capítulos e seções, numeradas ou não, em toda profundidade.

- Escreva Rápido

  As marcas do Txt2tags são simples e mínimas, muito fácil para aprender. Sem nomes, sem opções, sem parâmetros. Você não tem que parar de escrever o conteúdo para inserir marcas, elas fluem junto com o texto. Se você não lembra uma marca especifica no momento, esqueça-a e continue escrevendo. No fim você faz uma revisão geral no texto e rapidamente insere a marca que faltava.

- Conversão Rápida

  Mesmo se você tem um livro de 500 páginas, o processo de conversão demorará apenas um instante. É porque o txt2tags age como um filtro, convertendo de um formato a outro. Ele não indexa, compila, calcula, compacta, desenha ou faz qualquer outro processamento pesado nas fontes. Esqueça os pesadelos de bibliotecas, catálogos e DTDs.

# 5. Organize as Fontes em Pastas

O txt2tags tem um comando para incluir arquivos externos em qualquer parte do documento, na hora da conversão. Isso possibilita a divisão das fontes em diversos arquivos.

- Cada capítulo em uma pasta

  Você pode criar uma pasta para cada capítulo, armazenando as fontes em uma estrutura de árvore. Dentro da pasta do capítulo, você pode igualmente criar sub-pastas para armazenar imagens, arquivos incluídos e configurações.

- Sem conflito de arquivos

  Separando capítulos, diferentes equipes podem trabalhar em diferentes capítulos com nenhuma interação entra elas. Cada equipe trabalha na sua própria pasta, evitando conflito de arquivos devido as atuais mudanças.

- Controle de acesso flexível

  Arquivos e pastas organizadas, você pode implementar regras de controle de acesso, definindo propriedades e permissões para qualquer arquivo ou capítulo. Faça uso das ferramentas padrões do sistema para configurar as permissões de leitura/escrita, como o esquema "usuários e grupos".

- Visão global das fontes

  Estruturar as fontes também ajuda também ter uma visão global do livro, usando qualquer navegador de arquivos para saber rapidamente a quantidade de texto e imagens de qualquer capítulo. (sugestão: no UNIX, comandos `tree` e `du`)

- Trabalhe no seu capítulo, esqueça os outros

  Separando as fontes em arquivos, você pode converter seu capítulo sozinho, não precisa esperar para processar todo o livro. Além de ser rápido para converter, o capítulo sozinho pode ser enviado para revisores ou publicado sozinho, como uma amostra do livro completo.

- Você separa, o txt2tags junta

  Durante a conversão, o txt2tags juntará automaticamente todos os capítulos na edição final do livro, não importa quão profunda é a árvore de pastas.

# 6. Controle de Versões Facilitado

O txt2tags ajuda no controle de versão do livro com ferramentas baseadas em linhas (como CVS e Subversion). As fontes são texto puro, nada de dados compilados.

- Trabalhe com linhas curtas

  Você pode criar linhas curtas, quebrando elas em 72 colunas. Isso ajudará no controle de revisão, porque ele é baseado em linhas. Se o formato final precisa que um parágrafo seja composto por uma simples linha comprida (como PageMaker), o txt2tags irá juntar ela para você automaticamente.

- Fontes Legíveis

  Como o mínimo de marcações, as fontes ficam legíveis. Todos podem ver o que foi alterado de uma versão para outra, as marcas não escondem ou poluem o texto.

- Conteúdos grandes, fontes pequenas

  Como é texto puro, você pode ter uma quantidade enorme de conteúdo, com baixo uso de disco. Pessoas podem fazer checkouts completos e commits rápidos mesmo em conexões lentas.

- Versionamento de capítulo

  Como visto antes, as fontes podem ser organizadas dentro de pastas. Isso faz o controle de versão separada por capítulos, ou mesmo as seções dos capítulos, dependendo de quão granulado o controle precisa ser.

# 7. Material de Qualidade

Você pode escrever um livro, ou você pode escrever O Livro. O txt2tags tem ótimas características para aumentar a qualidade do seu trabalho.

- Verificador Ortográfico

  Como todas marcas do txt2tags são símbolos e não palavras, você pode usar qualquer verificador de ortografia nas fontes. Ele cuidará somente do texto, não tentará corrigir as marcas.

- Banco de dados de palavras-chave

  O txt2tags tem um Filtros de Entradas onde você pode definir pares de palavra-chave/valor. Onde quer que a palavra chave seja encontrada nas fontes, ela será expandida ao valor dado na hora da conversão. Por exemplo, você coloca a palavra `URL_GOOGLE` no seu texto e aparecerá como `http://www.google.com` no livro. Se a URL do Google mudar, você apenas muda a definição do filtro e todas as ocorrências serão atualizadas. Você pode definir quantas palavras chaves precisar, sem nenhum limite máximo.

- Conteúdo Dinâmico

  O txt2tags também tem um comando para incluir textos pré-formatados dentro do documento. Útil para incluir textos como um exemplo de código fonte de software. Dessa maneira você pode manter esse exemplo de código separado do texto do livro e atualizá-lo manual ou automaticamente. Uma idéia legal é marcar o código fonte do software com comentários especiais, e um pequeno programa extrai essas partes marcadas dentro de arquivos separados.

- Controle o Resultado

  Txt2tags tem um Filtros de Saída onde você pode definir regras que fazem os ajustes no documento resultante. Então se a conversão padrão do txt2tags não satisfaz completamente suas necessidades, você pode melhorá-la com seus próprios filtros. Você pode usar o poder das Expressões Regulares para casar padrões.

# 8. Outras Vantagens

E tem mais!

- Formatação Separada do Conteúdo

  Usando HTML como o formato de desenvolvimento, você também pode usar arquivos CSS para experimentar diferentes visuais para o livro. O CSS define formatações para páginas HTML, e há editores gráficos para criar arquivos CSS. Uma equipe de designers pode trabalhar na criação de arquivos CSS para o livro, enquanto os escritores continuam escrevendo.

- Inclua Estruturas Complicadas

  O txt2tags tem suporte para todas estruturas usadas em textos: listas, definições, citações, área pré-formatada e tabelas. Mas se alguma parte do seu livro precisar de uma estrutura complicada, você pode usar a inclusão literal, onde você insere o texto que já está formatado, como uma tabela HTML complicada. Com o txt2tags, as exceções não são um problema!

- Use Qualquer Editor

  Como os arquivos fontes são texto puro, mesmo o editor de textos mais modesto no mundo pode ser usado para escrever um livro. Não precisa ter nenhum característica além de escrever e salvar o texto. Se você usa os editores com suporte ao txt2tags, você terá Syntax Highlight (destaque da sintaxe), que ajuda a identificar as marcas do txt2tags. Eles são: Vim, Emacs, Kate e Nano.

- Suporte Técnico

  O txt2tags tem vários canais para se obter suporte técnico: duas listas de email (inglês e português), um canal de IRC e uma comunidade no Orkut. E para projetos de livros, você pode enviar um email diretamente para o autor do programa, que lhe dará prioridade na resposta.

# 9. Nenhuma Ferramenta Serve Para Tudo

Há alguns casos especiais onde o txt2tags não é uma boa ferramenta para escrever livros.

- Livros Muito Complexos

  Livros que usam muitas tabelas complicadas, fórmulas ou estruturas específicas, precisam de um editor gráfico ou uma linguagem de marcação complexa, como LaTeX. Se seu livro bate com essa descrição, o txt2tags não pode lhe ajudar.

- Notas de Rodapé

  O txt2tags não tem suporte a notas de rodapé. Se você usará apenas um pouco, você pode adicioná-las depois. Mas se você planeja fazer uso intenso de notas de rodapé, o txt2tags não pode lhe ajudar.

- Referências para Páginas, Tabelas e Imagens

  Você pode usar um editor gráfico na hora da finalização do livro para incluir índices para páginas, tabelas e imagens. Mas se você planeja referi-los dentro do texto como "Veja a tabela 4.11 na página 35", o txt2tags não pode lhe ajudar.

Escrevendo Livros com o Txt2tags - Oct/2004 (veja o arquivo fonte)

Traduzido por Ielton Ferreira Carneiro Pinto