我有一个文件,xyz.cpp.我想在Visual Studio中打开这个文件的两个实例(BTW,我正在使用Visual Studio 2005).我为什么要这样做?我想并排比较同一文件的两个部分.我知道的解决方法如下:
制作文件的副本.但问题是它不优雅,每次我面对这个时我都不想制作副本.
我可以将窗口分成两部分.拆分它的问题我只能水平拆分它.水平分割的结果是屏幕的右半部分是空白区域.
如果我能够垂直拆分它或打开同一个文件的两个实例,它会增加我可以比较的代码行数.
这是怎么做的......
选择您想要两份副本的选项卡
从菜单中选择菜单窗口 → 新窗口.
右键单击新选项卡,然后选择" 新建垂直选项卡组"
如果*窗口菜单中未列出新窗口,请注意该命令确实存在,即使在Visual Studio 2017中也是如此.使用菜单工具 → 自定义 → 命令将其添加到窗口菜单.此时决定放置New Window命令的位置并选择Add Command.
更新于"2018年7月30日"
在Visual Studio代码版本1.25.1和更高版本中
方式1
您可以在侧面板(资源管理器)中左键单击文件,然后按Ctrl+ Enter.
方式2
只需在Visual Studio代码侧面板(资源管理器)中右键单击您的文件,然后选择打开侧面的第一个选项.
对于Visual Basic,HTML和JScript以及RDL表达式,PaulB的答案中Window > New Window
提到的选项被禁用.但是,可以在注册表中更改选项以启用菜单项.
所有其他语言都不限于单个代码窗口,因此您可以在不编辑注册表的情况下使用PaulB的答案.
在Windows注册表中启用新窗口.[ 1 ] [ 2 ]
转到以下注册表项.此示例适用于Basic(Visual Basic),但关键也适用于HTML,JScript和RDL Expression.
64位操作系统: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\Languages\Language Services\Basic
32位操作系统: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\Languages\Language Services\Basic
找到该值Single Code Window Only
并执行以下操作之一:
将其设置为0
重命名该值
删除值(小心!)
这将启用"新窗口"菜单项,但它仍可能在菜单中不可见.
添加菜单项
要实际看到New Window菜单项,我必须将其添加回菜单:
工具>自定义...>命令>添加命令...
选择"菜单栏",在下拉列表中选择"窗口"菜单
添加命令...>窗口>新窗口>确定
恢复注册表值
将此文件复制粘贴到记事本,另存为.reg文件并将文件导入注册表以恢复初始设置.
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\Languages\Language Services\Basic] "Single Code Window Only"=dword:00000001
打开文件(如果您使用多个选项卡组,请确保选中您的文件).
菜单窗口 → 分割 (交替地,在编辑器的垂直滚动条上方有一个小小的小块 - 抓住它并向下拖动)
这为您提供了同一文件的两个(水平)视图.请注意,任何编辑操作都会反映在两个视图上.
完成后,抓住拆分器并将其完全拖动(或菜单窗口 → 删除拆分).
您可以使用Windows → 新窗口选项复制当前窗口.查看更多:为什么我喜欢Visual Studio 2010?取消Windows
转到菜单 → Windows → 新窗口:
卢克的回答对我不起作用.尽管删除了注册表设置,但"新窗口"命令已在自定义设置中列出,但未显示在.js选项卡上下文菜单中.
所以我用过:
工具
定制...
键盘...
向下滚动以选择Window.NewWindow
然后我按下并指定了快捷键Ctrl+ Shift+ W.
这对我有用.
====编辑====
嗯,'工作'太强了.我的键盘快捷方式确实在同一个JavaScript文件上打开了另一个选项卡,但是无助于它不会呈现内容; 它只是一个空白的窗户!你可能会有更好的运气.