VBA:RubberDuck 插件:@VariableDescription 它如何工作?

VBA:RubberDuck 插件:@VariableDescription 它如何工作?

我用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 的命令栏中:

显示模块描述的命令栏

事实上它没有显示模块变量......

命令栏不显示变量描述

...告诉我这是一个疏忽,需要修复!

这应该是一个相对简单的修复,可以在下一个版本中发布:)

编辑:该错误正在修复此请求请求

相关内容