matthiasnoback / sphinx-documentation-collector
一个用于从不同库中收集文档根的工具
v0.1.0
2014-03-22 10:02 UTC
Requires
- aura/cli: 2.*@dev
- pimple/pimple: 1.*
- symfony/filesystem: 2.*
- symfony/finder: 2.*
Requires (Dev)
- phpunit/phpunit: >=3.7
This package is auto-updated.
Last update: 2024-08-29 04:25:20 UTC
README
此库提供了一种工具,可以收集项目中所有文档的根目录,并将它们合并到一个目录文件中,这将成为您的项目文档。
安装 Sphinx
- 如有必要,安装 Python(至少版本 2.6)
- 安装 Python eggs 的
easy_install
(https://pypi.python.org/pypi/setuptools) - 运行
easy_install sphinx
启用 PDF
- 运行
easy_install rst2pdf
(更多关于该信息请参阅 http://rst2pdf.ralsina.com.ar/) - 配置 Sphinx 和
rst2pdf
(http://rst2pdf.ralsina.com.ar/handbook.html#sphinx)
对于 PHP 和/或 Symfony 相关的文档
使用 Composer 安装 Fabien Potencier 的 Sphinx PHP 扩展(https://github.com/fabpot/sphinx-php)
composer require --dev fabpot/sphinx-php:1.*
然后添加扩展
# in config.py
import sys
...
sys.path.insert(0, os.path.abspath('../../vendor/fabpot/sphinx-php'))
extensions = [..., 'sensio.sphinx.refinclude', 'sensio.sphinx.configurationblock', 'sensio.sphinx.phpcode']
配置 PHP 解析器以处理不带 PHP 开头标签的代码示例
from sphinx.highlighting import lexers
from pygments.lexers.web import PhpLexer
# enable highlighting for PHP code not between ``<?php ... ?>`` by default
lexers['php'] = PhpLexer(startinline=True)
lexers['php-annotations'] = PhpLexer(startinline=True)
primary_domain = 'php'
# API URL
api_url = 'http://api.symfony.com/master/%s'
用法
php bin/collect.php build/documentation --library-dir=src/Acme/*/ --library-dir=vendor/acme/*/
第一个参数应该是 Sphinx 文档目录。然后您需要提供一个或多个 --library-dir
选项。这些将被用来扫描包含 index.rst
文件的 /meta/doc
目录。对于这些“文档根”,将在构建目录中创建一个符号链接。最后,会自动生成一个新的目录:它收集项目中的所有 index.rst
文件。