【问题标题】:Extending class documentation and live templates扩展类文档和实时模板
【发布时间】:2011-09-25 19:06:32
【问题描述】:

我正在使用代码文档和实时模板,但我完全不明白。

我已阅读 Dr.Bob's article 关于生成有关实时模板的文档和 wiki 文章,但我对类描述有一个问题。

通过类描述,当我将鼠标光标指向类声明时,我了解 IDE 的行为。

例如,我有这样的类,它的描述:

type
  {$REGION 'TMyClass'}
    /// <summary>
    /// Summary works
    /// </summary>
    /// <remarks>
    /// Remarks works
    /// </remarks>
    /// <exception cref="www.some.link">This works</exception>
    /// <list type="bullet">
    /// <item>
    /// <description>description does not work</description>
    /// </item>
    /// <item>
    /// <description>description does not work</description>
    /// </item>
    /// </list>
    /// <permission cref="www.some.link">This works</permission>
    /// <example>
    /// <code>
    /// Code example does not work
    /// </code>
    /// </example>
  {$ENDREGION}
  TMyClass = class
  private
    a, b, c: Integer;
  public
  end;

后来在代码中我有这样的声明:

var
  MyObject: TMyClass;

当我将鼠标光标放在类类型上时,我有这样的描述:

正如您所见,并非每个 html 标记都由 IDE 引擎呈现。我真的很想知道如何呈现其他标签,尤其是带有代码示例的标签。有可能吗?

我正在使用 Delphi 2009 Proffesional。

【问题讨论】:

    标签: delphi delphi-2009 code-documentation live-templates


    【解决方案1】:

    仅支持有限的一组标签。我所知道的关于这些东西的最佳文档是 DevJET Software 的 Delphi Documentation Guidelines(在“目录”的末尾有指向 PDF 的链接)。

    【讨论】:

    • 我根本找不到最好的文档! 这是 DevJet 的 commercial 3rd 方工具支持的标签的文档.它不是 IDE 支持的文档。 IDE 实际上在在线帮助(和 docwiki)中记录了 IDE 支持的标签。
    • 也许自从我上次研究该主题以来官方文档已经得到改进......在我研究它的时候,我提供的链接是最好的(并且仅限 IIRC)文档。跨度>
    • 是的,Devjet 的文档列出的标签比 IDE 支持的要多,但文档本身比您发布的官方文档要好得多 - 它有标签的示例和描述,而 docwiki 基本上只有标签列表...
    • 谢谢。我接受这个答案,因为您提供的文档链接比 wiki 上的链接更有帮助。 Wiki 没有说明如何使用 标签 - 我不知道它们必须包含在其他标签中才能正常工作。
    【解决方案2】:

    Help Insight 支持的标签在联机帮助和Delphi docwiki 中有描述。它们是 C# 的帮助标签支持的标签的子集。除了 Embarcadero 网站上列出的标签之外,似乎不支持其他标签(我已经尝试过)。其他唯一有效(并且是必需的)是“<”、“>”和“”。

    更新

    似乎有些产品允许您使用完整的语法,例如在@ain 链接的 Delphi 文档指南中描述。 但这需要您购买商业产品,例如 DevJet 的 Documentation Insight,不应将其与自 Delphi 2006 以来 IDE 支持的 Help Insight 混淆.

    正如您所发现的,我也发现了,只有在 Delphi docwiki 中描述的子集由裸 IDE 支持,没有商业产品。建模接口也支持文档,但又有所不同。在普通的IDE中,只能使用你我已经找到的标签。

    【讨论】:

    • 嗨,Rudy,实际上,XMLDoc 标签只是标签,dcc 只是将这些标签提取到外部 xml 文件中,并不关心这些标签是什么。 (只处理cref属性,规范化代码引用)。
    • P.S. Documentation Insight 只会让阅读和编写文档变得更加容易。尽管保持 xmldoc cmets 格式正确确实是一项挑战,但您仍然可以遵循上述指导方针并手动编写 xmldoc 标记。 :)
    • @Paul:无论有什么可能性,开箱即用,Help Insight 只识别帮助中描述的标签。因此,您可以在源代码中添加所有其他标签,但其他人使用标准安装将无法使用它们。可以通过下载来增强这些标签在这里无关紧要,但感谢您的提示。
    • @RudyVelthuis 是的,就是这样。我们的使命是传播增强的 Help Insight 模板以造福社区。 : ) 我们将提供一个免费的文档包,其中包括可定制的 Help Insight 模板和未来的指南。
    • @Paul:事实上,如果我在这些单元中为我的单元编写文档,我不能假设某人拥有增强模板,所以我仅限于Help Insight 提供开箱即用的功能。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-24
    • 2020-08-08
    • 1970-01-01
    • 2017-04-24
    • 2012-01-10
    • 1970-01-01
    相关资源
    最近更新 更多