2011-03-22 103 views
3

我正在使用一些遺留代碼,爲此我使用doxygen生成XML文檔。這種代碼有兩個問題。首先它包含無效的評論。例如:忽略一些註釋

///@struct E 
enum E 
{ 
E1, E2, E3; 
}; 

這導致的doxygen以產生用於輸出結構與名稱E,這是不在代碼中。我的第二個問題是HTML鏈接。例如,對於下面的輸入:

///@brief For info about this struct see: <a href="http://www.foo.com/bar&bar"\> 
struct S 
{ 
    int i; 
} 

doxygen的產生的輸出不是一個有效的XML,因爲在鏈接&不正確地轉義。

由於上述原因,我希望doxygen忽略一些評論。這可能嗎?

回答

5

我不認爲Doxygen有這個簡單的開關,但是,您可以在Doxygen運行之前編寫自己的INPUT_FILTER程序來清理文件(例如通過刪除註釋)。

1

我注意到並測試一個doxygen的註釋中的HTML註釋將被忽略:

///@brief some comment here <--! ignored here --> also continues over. 

至於&不被轉義,你注意到\ &會逃呢?也許這是該部分的解決方案。

+0

聽起來像一個有前途的想法,但不能在python中工作。 – Zane 2014-07-01 12:21:10

+0

如果將其更改爲:## @這裏有一些評論< - !在這裏忽略 - >也繼續。 – 2014-07-02 13:24:11