6

doxygen によって無視されるコンテンツを dox​​ygen コメント ブロック内に含めることは可能ですか? つまり、doxygen コメント ブロック内にコメントを入れることはできますか?

バックグラウンド:

Fortran プロジェクトのコード内コメントを dox​​ygen で解析可能な形式に変換していますが、このプロジェクトでは、コード内コメント内のコンテンツを水平線で区切る必要があります。例えば:

!> @brief Lorem ipsum dolor sit amet
!! ---------------------------------------------------------------------
!!
!! @param[in] p1  Description of p1
!! @param[in] p2  Description of p2
!! ---------------------------------------------------------------------
!!
!! More content here ....
!! ---------------------------------------------------------------------
!!
!! More content for another section
!! ---------------------------------------------------------------------
subroutine do_something(p1, p2)
  ! .... the code ...
end subroutine do_something

doxygen がそれらを無視するように、これらの行にプレフィックスを付けることができるコマンド/構文はありますか? うまくいけば、目立たず、コメントの読みやすさに影響を与えないものです。

前処理スクリプトで連鎖するために使用できる設定は認識していINPUT_FILTERますが、理想的な解決策は、追加のスクリプト/ツールに依存しないものです。

PS私は、多くの人がそれらの水平線が不必要である、および/または気が散ると考えるであろうことをよく知っています. ただし、これはペイマスターによって定められた要件であり、私が自由に変更できるものではありません。

4

4 に答える 4

5

Doxygen は、HTML コメントを含むいくつかのHTML コマンドをサポートしています。このソリューションには、Doxyfile を変更する必要がなく、@I{ ---- }.

!> @brief Lorem ipsum dolor sit amet
!! <!----------------------------------------------------------------->
!!
!! @param[in] p1  Description of p1
!! @param[in] p2  Description of p2
!! <!----------------------------------------------------------------->
!!
!! More content here ....
!! <!----------------------------------------------------------------->
!!
!! More content for another section
!! <!----------------------------------------------------------------->
subroutine do_something(p1, p2)
  ! .... the code ...
end subroutine do_something

記録のために、これは私が最終的に解決した解決策です。ただし、「doxygen ブロック内でコメントを有効にする」ためのより一般的なソリューションを提供するため、DRH の回答を受け入れました。

于 2012-09-10T13:43:38.223 に答える
4

水平線に使用する文字に柔軟性がある場合は、引き続きコメント文字を繰り返すことができ、doxygen はそれを無視します。何かのようなもの:

!> @brief Lorem ipsum dolor sit amet
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!
!! @param[in] p1  Description of p1
!! @param[in] p2  Description of p2
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!
!! More content here ....
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!
!! More content for another section
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
subroutine do_something(p1, p2)
  ! .... the code ...
end subroutine do_something
于 2012-09-08T05:11:50.887 に答える
3

Doxygen のエイリアス構文を利用して行を無視することもできますが、その行には追加の文字を接頭辞と接尾辞として付ける必要があります。たとえば、次のようなエイリアスを定義したとします。

ALIASES                = I{1}=""

コメントでエイリアスを使用して、doxygen から水平ブレークを非表示にすることができます。

!> @brief Lorem ipsum dolor sit amet
!! @I{-----------------------------------------------------------------}
!!
!! @param[in] p1  Description of p1
!! @param[in] p2  Description of p2
!! @I{-----------------------------------------------------------------}
!!
!! More content here ....
!! @I{-----------------------------------------------------------------}
!!
!! More content for another section
!! @I{-----------------------------------------------------------------}
subroutine do_something(p1, p2)
  ! .... the code ...
end subroutine do_something
于 2012-09-08T05:29:23.027 に答える