我用RubberDuck 插件(除其他外)使用注释我的 VBA 代码@Description
(用于 Subs、Function、Properties......)并想要使用@VariableDescription
变量。但与@Description
使用表单成员我在代码资源管理器中看不到这些变量描述。
我发现的唯一文档是:@VariableDescription
。我理解这@VariableDescritption
对于变量来说@Description
和其他成员一样 - 它必须在代码资源管理器也。
我遗漏了什么?它应该如何工作?
PS:我决定将其发布到 Super User 而不是 Stack Overflow,因为这是与工具相关的问题。如果您认为我的决定是错误的,请将其移至正确的部分并接受我的道歉。
答案1
总结:
变量描述适用于模块变量,但它们仅出现在对象浏览器- 使变量描述出现在两个 Rubberduck 中命令栏和代码资源管理器在将来的版本中必须实现 toolwindow。
在理想世界中,只会有一个@Description
注释,可用于所有可以接受描述的内容。然而,在许多极端情况下,正确地确定注释的范围并将其与注释的“目标”相关联被证明是一项挑战,尤其是在正确标记模块的第一个成员时:
Option Explicit
'@Description "does this belong to the module or the 1st member?
Public Sub DoSomething()
End Sub
为了消除歧义,描述模块本身的模块级注释变成了@ModuleDescription
,描述模块级变量的模块级注释变成了@VariableDescription
。
注释本身不会做任何事情,但是一旦 Rubberduck 解析了项目,它就能够将注释与模块的隐藏VB_Attribute
值进行比较,并且代码检查标记不同步的属性/注释鸭子工作机会类别。
一旦同步,描述字符串就会出现在 VBE 的对象浏览器(F2):
现在,Rubberduck 的代码资源管理器还显示以下描述:
...但看起来多变的描述不显示:
描述也应该出现在 Rubberduck 的命令栏中:
事实上它没有显示模块变量......
...告诉我这是一个疏忽,需要修复!
这应该是一个相对简单的修复,可以在下一个版本中发布:)
编辑:该错误正在修复此请求请求。