Mar*_*ark 5 java javadoc custom-tag taglet
我编写了一个自定义 Javadoc taglet,它添加了一个新note标签:
...
public boolean isInlineTag() { return false; }
public String toString(Tag tag) {
return "<pre class='note'>" + tag.text() + "</pre>";
}
Run Code Online (Sandbox Code Playgroud)
到目前为止它可以工作,但是内联标签没有扩展。这是一个评论示例:
/**
* @note Test note with {@link Someclass} // @link tag is NOT expanded
* @param name - here the {@link Someclass} works // works for standard 'param' tag
*/
Run Code Online (Sandbox Code Playgroud)
内联标签{@link}未展开。但是,它对于内置paramjavadoc 标记来说效果很好。
有没有办法在自定义 Javadoc taglet 中扩展嵌套内联标签?
谢谢!
Taglet概述说:
Taglet 可以写为块标签(例如@todo)或内联标签(例如{@underline})。块 taglet 目前不支持其文本中的内联标记。
事实上,taglet API 有点太小了,因为它只支持方法toString()。
您可以在此方法中检索参数的子标签tag (使用.inlineTags()),但是您必须自己格式化它们,因为您无法从 taglet 访问标准 doclet 的正常机制。
因此,如果您不想在自己的 taglet 中重新实现(或复制)标准 doclet 的部分内容,那么看起来您运气不好。(但是,您同样可以直接扩展标准 doclet,而不是用 taglet 修补它。)