Uma codificagio equivalente, porém mais compacta e dificil de ler, poderia ser feita assim
TABLES
<7D>555-0123«/TD>eTD>08021
Por termos escolhido preservar os separadores de campo especiais nas verses texto do di-
retério de dados de escrit6rio, temos informagées suficientes para identificar as células em
cada linha. Além disso, devido aos espacos em branco no serem significativos em arquivos,
HTML (exceto para humanos), nfo precisamos ser muito cuidadosos com o alinhamento das
tags: se isso for necessério mais adiante, nem -pretty pode perfeitamente fazer esse trabalho,
Nosso filtro de conversao tem enti trés passos:
1. Imprime o padrao de texto do cabegalho até 0 inicio do corpo do documento.
2. Transforma cada linha do diretério de dados em uma marca de tabela.CAPITULO 5 * Pipelines Podem Fazer Coisas Impressionantes 113
3. Emite o padrio de texto final.
‘Temos que fazer uma pequena mudanga a partir de nosso exemplo mfnimo: 0 comando bocryee
tem que ser atualizado para um nivel de gramética mais atual, de forma que ele parega com:
Voce no precisa memorizar isso: tmi-pretty tem opgdes para produzir safda em qualquer
tum dos nfveis de gramética padrao HTML, portanto voce precisa apenas copiar dessa safda
tum DocryPz compativel.
A maior parte do trabalho € apenas escrever 0 c6digo padrdo para o cabecalho para o fecha-
mento do arquivo, o que ¢ bastante simples, pois basta copiar o texto do exemplo minimo de
HTML. 0 tinico passo em que ¢ necessério programago € o do meio, e isso pode ser feit
com apenas um par de linhas em awk. Pode-se ter ainda menos trabalho usando uma substi
tuigo do editor de streams sed com dois comandos: um para substituir os delimitadores tab
embutidos por 7DseTb>e um outro @ seguir para incorporar toda a linha em <7RseTD>. ..
‘O> arquive_saida
cat << BOPILE Padréo de c6tig de cabecalho boilerplate
Office directory
BOPILE
sed -e ‘'ee&=\samp;-g' \ Convertecaracieres especias para entdades
se tee&="
cat << SOFILE Padrdo de cbtigo de fectamento de arquivo