在vs2008中,我如何(可能使用宏)分配快捷键以折叠到定义但保留扩展区域(如果折叠则必须展开)?
编辑:我讨厌地区,但我的同事却没有(:所以我希望这样可以避开他们使用的地区。
我读了杰夫的帖子。如果没有区域,Ctrl M + O就是我真正想要做的。
答案 0 :(得分:6)
我相信我终于得到了我一直在寻找的答案,我认为它也可以帮到你,@ Serhat。你说:
我读了杰夫的帖子。如果没有区域,Ctrl M + O就是我真正想要做的。
那是完全我在想什么。我继续这一思路,并努力(暂时)摆脱#regions。
这不是一个完整的解决方案,但我很高兴有某些东西,我正处于上下跳跃的边缘。我会尝试尽可能简单地使这些指示,虽然我敢说它可能只是更容易发布我创建的宏的实际内容。 (见底部链接)
我创建了两个宏:
创建第一个宏:
Ctrl+Shift+R
录制宏,然后按照以下步骤操作:Ctrl+H
,查找内容:#region
,替换为://#region
Alt+A
替换全部Ctrl+H
,查找内容:#endregion
,替换为://#endregion
Alt+A
替换全部Ctrl+Shift+R
Alt+F8
或工具|打开宏资源管理器宏>宏资源管理器然后,创建第二个宏:
Ctrl+Shift+R
录制宏,然后按照以下步骤操作:Ctrl+H
,查找内容://#region
,替换为:#region
Alt+A
替换全部Ctrl+H
,查找内容://#endregion
,替换为:#endregion
Alt+A
替换全部Ctrl+Shift+R
Alt+F8
或工具|打开宏资源管理器宏>宏资源管理器现在,使用Ctrl + S将宏保存在宏浏览器中。
最后,为这两个宏指定快捷键:
Directives
。这应该会显示你的两个宏,名为“Macros.MyMacros.RecordingModule.CommentRegionDirectives”和“...... UncommentRegionDirectives”Alt+/
,然后点击Assign
按钮Alt+Shift+/
,然后单击Assign
按钮(默认情况下,这两个快捷键组合未分配给任何内容)现在,当您遇到自动折叠的#regions时,点击Alt+/
注释#region指令,然后点击标准Ctrl+M+O
进行折叠定义(如果您愿意)。然后,在将该单元与已注释掉的#regions一起提交之前,只需点击Alt+Shift+/
取消注释#regions即可重新激活它们。
最后,@ Serhat,再次感谢您的原始评论,这些评论首先让我踏上了这条赛道。
在实践中,我非常愿意接受一个小小的打嗝。 //#region
后跟#//endregion
计为连续注释,注释仍然已折叠,但至少没有隐藏代码。
以下是我从Macro Explorer中提取的承诺宏文本:http://pastebin.ca/1688618,但如果您手动按照上面列出的步骤操作,则不需要它。
答案 1 :(得分:3)
我发现 Ctrl + M , Ctrl + O 对于折叠一切非常有用。
您是否阅读过Jeff's blog post about regions?他列出了一些更有用的快捷方式。
为什么你要保持这些扩展,如果你不想让它崩溃,你真的需要这个区域吗?