Итак, у меня есть эта пользовательская команда в doxygen:
ALIASES = " \
codeexamples{3}= \
@htmlonly[block] \
<div class=\"snippettab\"> \
<button class=\"snippettablinks\" onclick=\"openExTab(event,'langcs_\1_code_snippet')\">C#</button> \
<button class=\"snippettablinks\" onclick=\"openExTab(event,'langvb_\1_code_snippet')\">VB</button> \
</div> \
@endhtmlonly \
<div id=\"langcs_\1_code_snippet\" class=\"snippetcontent\"> \snippet \2 \1_code_snippet^^ </div> \
<div id=\"langvb_\1_code_snippet\" class=\"snippetcontent\"> \snippet \3 \1_code_snippet^^ </div> \
"
И вот пример того, как я ее использую:
/*!@brief brief description.
*
* Detailed description
*
*@note A note
*
* \codeexamples{Initialize,Test.cs,Test.vb}
*
*@sa OnInitialized\n Reset()\n TStorage
*/
Команда codeexamples{}
работает нормально, носледующая команда @sa
не анализируется, а печатается так же, как и с классом: class='fragment'
, тот же класс, что и в примере кода.
<code><div id="langvb_Initialize_code_snippet" class="snippetcontent" style="display: block;">
<div class="fragment">...</div>
<!-- fragment -->
</div>
<pre class="fragment"> @sa OnInitialized\n Reset()\n TStorage
Как вы можете видеть @sa
не анализируетсяКак будто он никогда не видел @endhtmlonly
, но doxygen ни на что не жалуется и не предупреждает, и в веб-браузере нет ошибок при его отображении.
Я пробовал другие команды, кроме @sa
, но неважноКоманда, которую я поставил там, она не анализируется doxygen и отображается в виде текста.
Это ошибка в doxygen или я что-то упустил?
EDIT
ItПохоже, это ошибка.doxygen ставит <pre class="fragment">
после вставленного кода:
Документация Doxygen после элементов - сбой вызывает форматирование как фрагмент кода?
Решение завершить блок и запуститьновый решает это:
/*!@brief brief description.
*
* Detailed description
*
*@note A note
*
* \codeexamples{Initialize,Test.cs,Test.vb}
*/
//!@sa OnInitialized\n Reset()\n TStorage