【问题标题】:Using Regionerate on VS2012, or alternative addin在 VS2012 上使用 Regionerate,或替代插件
【发布时间】:2012-08-12 10:56:04
【问题描述】:

我倾向于广泛使用 Regionerate 来重组我的代码文件。我唯一的问题是我无法使用 VS2012 注册它。我已经完全放弃了 VS2010,转而使用 VS2012,而且为了运行一个宏来重新组织代码文件,我不得不回过头来。我以前从未尝试过编写 VS 插件,所以我完全不熟悉对象模型或如何注册 - 似乎旧插件的安装比 VS2010 扩展更复杂!我还查看了 WIX 设置 XML 并尝试复制注册表项无济于事。

有谁知道如何向 VS2012 注册 Regionerate,或者是否有提供相同功能的替代(免费且已维护!)扩展?

【问题讨论】:

    标签: visual-studio-2010 add-in visual-studio-2012 region


    【解决方案1】:

    注册需要两件事:

    • 看起来 VS2012 在运行时不会从 HKLM...\11.0\AutomationOptions 键读取,仅在第一次运行时。 HKCU...\11.0_Config\AutomationOptions 的对应键也需要设置。
    • 需要使用 11.0 版本创建新的 .AddIn 文件

    如果您这样做,Regionerate 将出现,但在您尝试使用 Studio 时会挂起。 Regionerate 代码有一个错误的版本检查(“不等于”而不是“小于”),这将卡在不适用于 VS2010/2012 的代码中。在 Regionerate 设置中取消选中“自动折叠区域”可能足以避免出现错误代码。

    我制作了一个新版本,修复了版本检查并为 VS2012 提供了正确的安装部分。您可以在此处下载安装程序和更改的源文件:

    https://skydrive.live.com/redir?resid=2FEB8D1988F04D77!565

    【讨论】:

    • Frank - 非常感谢,它现在已加载到 VS2012 中。需要注意的是,我使用的自定义区域文件现在只能部分工作,这很奇怪,因为它似乎永远在 VS2010 中运行良好。感谢您更新的设置!难怪我不知道 _Config 后缀 sigh 就无法让它工作。再次感谢!理查德·莫斯
    • 我从最新的 Regionerate SVN 中提取了代码,它比 VS2010 版本更新,并引入了一个涉及静态成员的错误。在skydrive.live.com/redir?resid=2FEB8D1988F04D77!566 试用 8.0.0.1
    • 有趣的是,在您的新版本出现问题后,我自己发现并修复了同样的问题 - 并且还摆脱了每次启动 VS 并更新扩展时弹出的烦人消息框等等。遗憾的是 SVN repro 被锁定,否则我会为它提交补丁。
    • @FrankRacis:您的 VS 2012 版本运行良好。为此非常感谢。你能帮我让它与 VS 2013 一起工作吗?
    • @FrankRacis 你能帮我让它与 VS 2015 一起工作吗?
    【解决方案2】:

    这是您需要执行的操作,以使 Frank Racis 的 VS2012 兼容 Regionerate (0.8.0.1) 与 Visual Studio 2013 一起使用。

    1. 修改此文件:C:\Program Files (x86)\Regionerate\Regionerate.VS2012.AddIn 将版本从 11 更改为 12:<Version>12.0</Version>

    2. 在您的注册表中添加以下字符串值:

      位置:HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\12.0_Config\AutomationOptions\LookInFolders

      姓名:C:\Program Files (x86)\Regionerate\

    【讨论】:

    • 你从哪里得到 regionerate 8? regionerate 网站最多只能找到 7 个,谷歌搜索“regionerate 8 frank racis”只会提出这个问题和关于足球运动员的一些问题
    • @Pete:这是 Frank 到 Regionate 8 的链接:skydrive.live.com/redir?resid=2FEB8D1988F04D77!565
    【解决方案3】:

    CodeMaid 是一个免费且积极开发的替代方案。它几乎具有 Regionerate 的所有功能,以及一些新的东西。我真正喜欢的一件事是将其设置为在每次构建时组织和清理未保存的文件。

    【讨论】:

    • 其实我也用过CodeMaid,我觉得它的代码清理功能很不错。但它的组织功能对我的需求不够复杂——我需要按类型、可见性和字母顺序对所有内容进行排序。 Regionarate 使用我多年来修改的自定义布局来做到这一点,但 CodeMaid 还不能做到这一点。另外,在尝试摆脱区域之后,我决定我更喜欢将它们放在适当的位置。所以我使用了 Regionerate 和 CodeMaid 的组合。扩展摇滚!
    • CodeMaid 为重组添加了更多自定义选项(例如:指定您自己的首选类型顺序与 StyleCop 标准),因此它现在可以为您解决问题。如果您仍然在寻找 Trello 板并提出请求! trello.com/board/future/4f6e6dcc255ed1e9085b8665
    • 目前我使用 Resharper,因为它允许我以与 Regionerate 类似的方式创建自己的布局 - 更不用说它比 Regionerate 快了几十亿倍,并且清理了我的代码以启动。有什么不喜欢的:)
    猜你喜欢
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多