2012-07-11 112 views
7

我公司爲工程計劃開發API。它是用C++開發,但是我們創建包裝給它的下列語言:Doxygen爲多語言API

  • 專用語言類似於VB
  • MATLAB
  • 和Python。

當前文檔是由一堆腳本生成的,它開始花費時間來保持它100%。我想知道是否有辦法讓doxygen/sphinx或其他程序一次性生成C/C++,VB和MATLAB的文檔。 Python部分由SWIG完成。目前輸出是一樣的東西:

  • NameOfFunction
  • VB:
  • 功能NameOfFunction(BYVAL一長,爲ByRef B()長,BYVAL c以龍)只要
  • MATLAB:
  • 值= NameOfFunction(A,b(),c)中
  • C/C++:
  • 值* NameOfFunction(objtype1 *一個,objecttype2 * b [],INT C)
  • +說明
  • +例子
+0

是不是有一個配置腳本,你可以編輯doxygen的? – pyCthon 2012-07-12 05:35:09

+0

是的,但我怎麼才能做到我想要的。我看了一下,但找不到像我想要的東西。 – Mac 2012-07-12 11:02:38

回答

3

doxygen的支持多國語言,

使用這種在多個項目或文件夾和語言你只要點doxygen的每一個你想在配置檢查的文件夾。

我最喜歡的編程語言是X.我仍然可以使用doxygen嗎?

不,不是這樣; doxygen需要了解它讀取的結構。如果您不介意花費一些時間,有幾種選擇:

是否支持語言X?

如果X的語法接近C或C++,那麼它可能是不是太硬 所以語言支持來調整的src/scanner.l一點。這個 是爲doxygen直接支持的所有其他語言完成的。 Java,IDL,C#,PHP)。如果X的語法與 稍有不同,那麼您可以編寫一個輸入過濾器,將X轉換爲類似於Oxygen的類似的文件,以供Doxygen理解(此方法爲 VB,Object Pascal和Javascript,請參閱 http://www.stack.nl/~dimitri/doxygen/download.html#helpers )。如果 語法是完全不同的一個可以寫一個解析器X和 寫產生如由 的src/scanner.l完成(也由src/tagreader.cpp在閱讀的標記文件)類似的語法樹在後臺運行。

但是因爲你使用像專有VB的,它可能會選擇這種語言,如果你只是簡單地更改文件擴展到的的.vb

繼承人如何與matlab

蟒蛇用它和++已經被支持

c具有導一看殲AQ頁面

2

我想知道是否有辦法讓doxygen/sphinx或其他程序一次性爲c/C++,VB和matlab生成文檔。

宙斯編輯器有doxygen feature,讓您在工作區中宙斯的所有項目創建Doxygen文檔。

+0

謝謝,但我發現很難讓所有開發人員開始使用其他IDE。 – Mac 2012-07-12 11:03:29

+0

我覺得很難相信,僅僅使用一個特定的編輯器會奇蹟般地使doxygen的支持任意文件。 – 2012-07-12 13:25:41

+0

迴應Ben Voigt:沒有魔法。我描述的功能只不過是添加到Zeus工作區的任何文件將被髮送到doxygen進行處理。 doxygen如何處理該文件取決於doxygen,但Zeus會確保它被處理。就是這樣,沒有什麼比這更少的了。 – jussij 2013-03-08 08:19:47