WindowsでSphinxを使用しています。
私のドキュメントのほとんどは通常のユーザー向けですが、管理者専用のコンテンツを含むサブページもあります。そのため、ドキュメントの2つのバージョンを作成したいと思います。完全なバージョンと「管理」ページを除外した2番目のバージョンです。
exclude_patterns
そのためにビルド構成でを使用しました。
これまでのところ、それは動作します。名前に「admin」が含まれているすべてのサブフォルダー内のすべてのファイルは、これをconf.py
ファイルに入れると無視されます。
exclude_patterns = ['**/*admin*']
問題は、両方のバージョンを取得するためにビルドを1回実行したいということです。
私が今やろうとしているのは、make.bat
2回実行し、実行ごとに異なるパラメーターを指定することです。ドキュメント
に
よると、と変数を設定することでこれを実現できます。BUILDDIR
SPHINXOPTS
だから今私はbuild.bat
このように見えるものを持っています:
path=%path%;c:\python27\scripts
rem BUILD ADMIN DOCS
set SPHINXOPTS=
set BUILDDIR=c:\build\admin
call make clean
call make html
rem BUILD USER DOCS
set SPHINXOPTS=-D exclude_patterns=['**/*admin*']
set BUILDDIR=c:\build\user
call make clean
call make html
pause
set BUILDDIR=build
sphinxで生成されたファイルから行を削除すると、2つの異なるディレクトリでのビルドが機能しmake.bat
ます。
ただし、除外パターンは機能しません。
上記のバッチファイルは、2番目のビルド(除外パターンを持つビルド)に対してこれを出力します。
Making output directory...
Running Sphinx v1.1.3
loading translations [de]... done
loading pickled environment... not yet created
Exception occurred:
File "C:\Python27\lib\site-packages\sphinx-1.1.3-py2.7.egg\sphinx\environment.
py", line 495, in find_files
['**/' + d for d in config.exclude_dirnames] +
TypeError: coercing to Unicode: need string or buffer, list found
The full traceback has been saved in c:\users\myusername\appdata\local\temp\sphinx-err-kmihxk.log, if you want to report the issue to the developers.
Please also report this if it was a user error, so that a better error message can be provided next time.
Either send bugs to the mailing list at <http://groups.google.com/group/sphinx-dev/>,
or report them in the tracker at <http://bitbucket.org/birkenfeld/sphinx/issues/>.
私は何が間違っているのですか?コマンドラインのの構文はファイルの構文と異なります
か?
または、1つのステップで2つの異なるバージョンを構築するためのより良い方法はありますか?exclude_patterns
sphinx-build
conf.py