目的:可便於在線上製作與編輯主控性文件 (具有大綱架構 (章、節)的 TOC (Table of Contents)文檔)。除了提供 HTML 格式的瀏覽,也可以轉換格式為 PDF, ePub/Mobi 等適於實體印刷與電子書格式。整理後的文檔可以容易上傳至 Hosting Server (網站/雲端空間),甚能具有版本控管與協同編輯撰寫的功能。
說明:原來為編寫 Python 線上文件而所開發以 Python 語言編寫的工具-Sphinx,已逐漸成為製作線上文件的最普及好用的免費開源工具。關於 Sphnix 的幾個主要特性:
- 輸出格式:HTML (including Windows HTML Help), LaTeX (for printable PDF versions), Texinfo, manual pages, plain text。
- 廣泛的交互參考 (cross-references):語義化的標記 (semantic markup),並對包括 函式、類別、引用文、術語詞彙表與類似片段資訊提供自動化的鏈接 (automatic links)。
- 階層式的結構: 可輕鬆定義樹狀文件,並自動化鏈接同級/父級/下級 (siblings, parents and children)的文件。
- 自動化的目錄: 產出與特定語言關聯的模組索引目錄。
- 程式碼的處理:利用 Pygments highlighter 自動生成各程式語言的高亮度代碼區塊。
- 擴展套件: automatic testing of code snippets, inclusion of docstrings from Python modules (API docs) ...。
先瞧瞧一位大陸知名 IT 作者利用 Sphinx 所整理出很棒的線上文檔-GotGitHub,就可以看出 Sphinx 的強大功能。
另外一個參考展示-編寫《Redis 設計與實現》時用到的工具。