我刚刚在Windows 10操作系统上安装了Rubberduck VBE加载项v2.0.11.2453(MSIL).
当我在Excel中打开一个启用宏的Excel工作簿并启动VBA编辑器时,Rubberduck启动但Rubberduck菜单下的所有命令都被禁用.
我究竟做错了什么?
免责声明:我积极参与Rubberduck插件的开发.
你没做错了=)
在早期的alpha 2.x版本中,我们发现在启动时启动初始解析会导致问题(暴力崩溃),因为在VBE完成为项目设置对象模型之前,加载项基本上就已准备就绪在IDE中加载.基本上VBE在完全构建自身之前加载它的加载项,所以我们不能在启动时立即启动解析任务.
所以我们禁用了初始/自动解析,这就是为什么需要手动完成(现在).
Rubberduck命令栏(默认情况下停靠在IDE顶部,位于主命令栏下方)包含一个"刷新"按钮:
单击该按钮将解析器状态从"待定"/"En注意"更改为"就绪"/"Prêt"(经过多个状态后).
大多数Rubberduck命令将在状态为"Parsed"时启用(它不会持续很长时间 - 它会立即切换到"解析标识符"),并且重构在"Ready"状态下启用(甚至在检查之前)完成运行).
您还可以在Code Explorer,Test Explorer,Inspection Results和Todo Explorer工具窗口的工具条中找到"刷新"命令按钮.
您应该能够浏览/导航代码并在Rubberduck在后台工作时使用VBE,但请注意,在Rubberduck解析时修改代码可能会导致一些解析器错误状态; 我们假设IDE中的代码是可编译的=)
把这个按钮想象成"好吧,我已完成代码更改,现在与IDE同步":加载项需要知道每个令牌的确切编辑器内位置才能正常工作.在去同步解析器状态上重构或应用检查快速修复绝对是个坏主意!
也就是说,在启动时禁用所有菜单都是懒惰的(也是笨拙的:例如显示检查结果的热键和代码浏览器工具窗口即使菜单被禁用也会起作用) - 我们将在下一个版本中解决这个问题,并且初始解析也应该是自动的(我们将在延迟后启动它,让VBE有机会完成启动).