2009-08-16 13 views
6

Quali strumenti OSS (o gratuiti) sono disponibili per la creazione di una singola fonte per la documentazione che può essere utilizzata per generare manuali? In particolare, nei seguenti formati:Strumento di documentazione a sorgente singola

  • sito HTML
  • documento PDF
  • incorporato (all'interno di un'applicazione, probabilmente HTML)
  • Testo (opzionale)
  • pagine man (opzionale)

Requisiti aggiuntivi:

  • L'utensile è adatto per gli scrittori tecnici (non è necessario essere WYSIWYG).
  • XML/sorgente SGML
  • output PDF
  • alta qualità (paragonabile al TeX)
  • Multi-piattaforma

Expanded Requisito

La stessa riga di comando applicazione è scritta in due lingue (C e Java). Usando XML per descrivere le opzioni della riga di comando (alcune delle quali sono specifiche per una lingua o l'altra), è semplice trasformare l'XML in una classe Java, o una funzione C, che aiuta l'output standard. Ciò garantisce che l'aiuto possa essere incorporato nel file binario senza dover dipendere da file esterni.

Sembra che AsciiDoc non abbia questa capacità. C'è un'altra opzione?

risposta

6

Uno che soddisfa la maggior parte delle vostre esigenze, che ho usato prima, è AsciiDoc.

AsciiDoc non è un formato sorgente XML, ma sceglie un semplice formato di testo. Può generare HTML e documenti, che possono essere visualizzati in PDF o in altri formati. Il testo sorgente è abbastanza buono per la presentazione in testo normale.

Un'altra scelta popolare sulla stessa linea è reStructuredText.

+0

AsciiDoc sembra eccellente. Come lo integreresti con un'applicazione a riga di comando? –

+0

Un approccio potrebbe essere l'utilizzo di un file di origine XML che descrive le opzioni della riga di comando per l'app, quindi eseguirlo tramite una trasformazione che genera il sorgente AsciiDoc per una particolare configurazione dell'applicazione (C o Java, selezionando solo le parti appropriate) . Non sembra che AsciiDoc sia lo strumento giusto per generare il codice sorgente C/Java attuale; Vorrei usare uno strumento diverso per quello. Ma certamente avere una fonte XML comune per tutti i rendering della tua linea di comando aiuta a sembrare una buona cosa. –

2

Ho preso in considerazione l'evangelizzazione di DocBook in sostituzione di Word nel nostro gruppo di ingegneri. Sono disponibili numerosi toolchain. Il più semplice per gli ingegneri è probabilmente DocBook XSL, Apache FOP e Ant o Make. Questo è il modo in cui ho fatto il mio materiale DocBook. Se siete veramente interessati a LaTeX, allora potreste voler dare un'occhiata a DBLaTeX per un ambiente di pubblicazione di DocBook in LaTeX.

Se non ti dispiace fare un passo fuori dagli ambienti liberi, allora il <oXygen/> XML Editor offre un editor di DocBook WYSIWYG molto carino. Non l'ho usato così tanto, ma sembra piuttosto promettente.

+1

DocBook è molto carino per la scrittura di manuali e consente di conservare automaticamente molti metadati sul testo. Credo che i libri tecnici di O'Reilly siano scritti su DocBook. –

+0

Durante la scrittura di DocBook, c'è anche il Maven docbkx-plugin http://code.google.com/p/docbkx-tools/ per rendere HTML/pdf/etc da esso. – Verhagen

1

Sphinx è uno strumento che aggiunge un numero di funzionalità a Docutils, consentendo di scrivere "documentazione intelligente e bella" in reStructuredText. È stato originariamente creato per produrre la nuova documentazione di Python ma è stato adottato da molti altri progetti.

2

Doxygen è un generatore di documentazione che è abbastanza popolare e può produrre documenti in un variety of formats. Sebbene il suo scopo principale sia quello di creare una documentazione estratta dai commenti di origine (da numerose lingue), è anche abbastanza utilizzabile come strumento di scrittura manuale generale. In effetti, il sito Web e il manuale di Doxygen sono generati in questo modo.

Problemi correlati