私はVHDLソースコードを文書化するためにSphinxを使用したいと考えています。理想的には私はこのようなVHDLの種類を取るできるようにしたいと思います:SphinxのモジュールをPython以外のドメインに拡張することは可能ですか?
type T_SDRAM_REQ is record
req : STD_LOGIC;
wr : STD_LOGIC;
address : STD_LOGIC_VECTOR;
wr_data : STD_LOGIC_VECTOR;
wr_ben : STD_LOGIC_VECTOR;
end record T_SDRAM_REQ;
そして、このようなRSTディレクティブなものを使用します。ソースコードからすべてのフィールドを抽出するには
.. vhdl:type:: sdram_pack.T_SDRAM_REQ is record
:members:
をし、 RST-私のためにそれらをify。
私はSphinxドメインを作成しましたが、これだけでは十分ではないということが私にもたらされました。これは本当にカスタムディレクティブの集まりです。私が実際に望むのは、パイロットのソースファイルをスキャンしてディレクティブを生成するautoclassやautomoduleに似たものです。
しかし、私がスフィンクスの自動モジュール機能に言えるのは、単にPython用です。 Sphinxを拡張して他の言語にも同様の機能を組み込むことは可能ですか? VHDLでは、おそらくautopackageまたはautoentityと呼ばれるだろうC++では、私はautonamespaceか別のオートクローズを推測するでしょうか?どうにか私のドメインにvhdl:autopackage::
ディレクティブを追加できますか?私がSphinxソースから知ることから、私はautomoduleディレクティブがPythonドメインの一部ではないと思います。
はい、組み込みautodoc拡張はPython用です。しかし、あなたが求めているのは可能なはずです。例として、Javaの場合、javasphinx(https://github.com/bronto/javasphinx)という拡張があります。私はVHDLのために何か類似のものを実装することができなかったのか分からない。 – mzjn
@mzjnそれを指摘してくれてありがとうが、Javaドメインとapidoc機能を追加している間は、autodocを追加していないと言える。私がそれをテストするためにJavaセットアップを持っていると正直に言うことはできません。 –
関連:http://stackoverflow.com/q/37420560/407651 – mzjn