Personal website of Filipe Figueiredo Correia
Faz mais de um ano que andei em busca de uma boa forma de produzir documentos e, não tendo encontrado uma solução perfeita, resolvi reduzir o âmbito do tipo de documentos em causa e concentrar-me na produção dos documentos que tipicamente aparecem durante o processo de desenho e desenvolvimento de software.
A ideia foi simples; partir das funcionalidades de wiki do trac e adicionar a capacidade de exportar cada página como docbook. A partir de uma exportação para docbook, há uma série de opções que se abrem em termos de conversões para outros formatos.
Para chegar aí tinha duas opções, ou converter directamente do formato wikitext do trac, ou partir do xhtml (strict!) que o trac gera a partir do wikitext. A primeira opção consegue-se implementar com umas quantas expressões regulares, mas parece-me talvez mais difícil conseguir prever os casos todos (sobretudo se se tiverem em conta os outros formatos que se podem encontrar misturados com wikitext, nos quais não queria mesmo ter de pensar). A segunda opção pede claramente a utilização de uma folha de estilo XSLT (apesar de também existirem outro tipo de soluções). Convenientemente, encontrei algumas folhas de estilo que fazem já esta conversão, de xhtml para docbook. As mais promissoras foram:
Esta última é a mais completa, e com a qual as minhas experiências funcionaram melhor.
Agora basta juntar água (ou por outras palavras, usar os bindings do python para libxml e libxsl) e temos um plugin para o trac ;) A bem dizer, já ando a usar uma versão alpha deste plugin há uns meses. Na altura criei um espaço no trac-hacks para alojar o projecto. Nos próximos dias espero portar o código para o trac 0.11.1 e torná-lo usável por terceiros. Os interessados fiquem por perto ;)
You've reached the personal website of Filipe Correia. Software Engineer and Researcher with an inclination to agile methods, design patterns, architecture, collaborative systems and information science.
desfocado
August 20th, 2008 at 14:04
Ando com ideias de tentar uma abordagem wiki na empresa onde trabalho. Preciso de algo que seja básico de usar, de preferência não precise de BD (flat files era óptimo) e que dê para exportar os conteúdos para Word.
E sim, o objectivo é documentação no mundo real.
Que aconselhas ?
Filipe Correia
August 20th, 2008 at 15:21
desfocado: Se se tratar de documentação de projectos de software, o trac é seguramente das melhores opções, porque ficas com um issuetracker e controlo de versões integrado. Utiliza o sqlite como motor de base de dados (o que significa que não precisas de instalar um serviço à parte). Não te dá de base funcionalidades de exportação para word, mas existem plugins que te permitem fazê-lo. Um deles faz exactamente isso, mas parece-me algo abandonado, por isso a não ser que estejas com vontade de mexer em código, não recomendo :)
O plugin Page2Docbook que eu fiz também dá para fazer isso, mas são precisos passos intermédios, de conversão do docbook para word. Existem muitas soluções para isso, mas não tenho suficiente experiência com nenhuma para poder recomendar. Geralmente o que faço é converter de docbook para PDF, usando as folhas de estilo xslt de conversão de docbook para xsl-fo e o FOP para produzir um pdf a partir do xsl-fo.
Bom, mas isto são tudo soluções muito pouco integradas. O que pretendes é o roundtrip wiki->word->wiki? Não conheço nenhuma solução que permita isso na perfeição (mas se descobrires avisa! :) No entanto, se te bastar uma exportação (ou seja, o que for exportado não precisar de ser editável), então uma solução de exportação para PDF pode ser melhor (estou convencido que encontras com mais facilidade pelo menos).
Uma outra boa solução é o dokuwiki. Já o experimentei antes, mas acabei por não o usar muito, porque o trac respondia melhor ao que eu precisava. Usa ficheiros simples para armazenar a informação, e há bastantes plugins, por isso acredito que possas encontrar um à tua medida (ex, há um que exporta para OpenDocument).