Откройте два экземпляра файла в одном сеансе Visual Studio

У меня есть файл, xyz.cpp. Я хочу открыть два экземпляра этого файла в Visual Studio (кстати, я использую Visual Studio 2005). Зачем мне это делать? Я хочу сравнить два раздела одного и того же файла рядом. Я знаю обходные пути, такие как:

  1. Сделайте копию файла. Но проблема в том, что это не элегантно, и я не хочу делать копии каждый раз, когда сталкиваюсь с этим.

  2. Я могу разбить окно на две части. Проблема с разделением, что я могу разделить только по горизонтали. Результатом горизонтального разделения является то, что правая половина моего экрана является пустым пространством.

Если бы мне удалось разделить его по вертикали или открыть два экземпляра одного и того же файла, это увеличило бы количество строк кода, которые я могу сравнить.

Ответ 1

Вот как это сделать...

  1. Выберите вкладку, которую вы хотите две копии
  2. Выберите меню Окно → Новое окно из меню.
  3. Щелкните правой кнопкой мыши новую вкладку и выберите New Vertical Tab Group

Если "Новое окно" не указано в меню "Окно", обратите внимание, что команда существует, даже в Visual Studio 2017. Добавьте ее в меню "Окно" с помощью меню "Инструменты" → "Настройка" → "Команды". В этот момент решите, куда поместить команду "Новое окно" и выберите "Добавить команду".

ОБНОВЛЕНО "30 июля 2018 года"

В Visual Studio Code версии 1.25.1 и новее

Способ 1

Вы можете просто щелкнуть левой кнопкой мыши по файлу на боковой панели (проводнике) и нажать Ctrl + Enter.

Способ 2

Просто щелкните правой кнопкой мыши свой файл на боковой панели кода Visual Studio (проводник) и выберите первый вариант, открытый сбоку.

Ответ 2

Для выражений Visual Basic, HTML, JScript и RDL опция Window > New Window упомянутая в ответе PaulB, отключена. Однако в реестре можно изменить параметр, чтобы включить пункт меню.

Все остальные языки не ограничиваются одним окном кода, поэтому вы можете использовать ответ PaulB без редактирования реестра.

Включение нового окна в реестре Windows. [ 1 ] [ 2 ]

  1. Перейти к следующему разделу реестра. Этот пример для 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
  2. Найдите значение Single Code Window Only и выполните одно из следующих действий:

    • Установите 0
    • Переименовать значение
    • Удалить значение (будьте осторожны !)

Это активирует пункт меню "Новое окно", но он все еще может не отображаться в меню.

Добавление пункта меню

Чтобы увидеть пункт меню "Новое окно", мне пришлось добавить его обратно в меню:

  • Инструменты> Настроить...> Команды> Добавить команду...
  • Выберите "Строка меню", выберите меню "Окно" в выпадающем меню
  • Добавить команду...> Окно> Новое окно> ОК

Восстановление значения реестра
Скопируйте и вставьте его в блокнот, сохраните как файл.reg и импортируйте файл в реестр, чтобы восстановить первоначальные настройки.

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\Languages\Language Services\Basic]
"Single Code Window Only"=dword:00000001

Ответ 3

Откройте файл (если вы используете несколько групп вкладок, убедитесь, что ваш файл выбран).

Окно меню → Разделить (поочередно, этот маленький кусочек чуть выше вертикальной полосы прокрутки редактора - возьмите его и перетащите вниз)

Это дает вам два (горизонтальных) просмотра одного и того же файла. Помните, что любые действия редактирования отразятся на обоих представлениях.

Как только вы закончите, возьмите разделитель и перетащите его полностью (или меню Окно → Удалить разделение).

Ответ 5

Ответ Люка не сработал для меня. Команда "Новое окно" уже была указана в настройке параметров, но не отображалась в контекстном меню вкладок.js, несмотря на удаление параметра реестра.

Поэтому я использовал:

инструменты

Настройка...

Клавиатура...

Прокрутите вниз, чтобы выбрать Window.NewWindow

И я нажал и назначил сочетания клавиш, Ctrl + Shift + W.

Это сработало для меня.

==== РЕДАКТИРОВАТЬ ====

Ну, "работал" был слишком сильным. Мои сочетания клавиш действительно открывают другую вкладку в том же файле JavaScript, но, скорее всего, бесполезно, они не отображают содержимое; это просто пустое белое окно! Возможно, вам повезет больше.

Ответ 6

Зайдите в меню → Windows → Новое окно:

Enter image description here

Ответ 7

Меню "Окно", "Новая горизонтальная/вертикальная вкладка", я думаю.

Ответ 8

При работе с Visual Studio 2013 и VB.NET я обнаружил, что вы можете довольно легко настроить меню и добавить команду "Новое окно" - нет необходимости возиться с реестром!

Только Бог знает, почему Microsoft решила не включать команду для некоторых языков...?

Ответ 9

Для более новых версий (таких как Visual Studio 2017)

  • Выберите окно, которое вы хотите дублировать.
  • Перейдите на вкладку окна и нажмите на разделить в верхней части списка.
  • Когда вы закончите, нажмите еще раз, чтобы выключить его.

Ответ 10

Для типов файлов, где один и тот же файл не может быть открыт в вертикальной группе вкладок (например, файлы .vb), вы можете

  • Откройте 2 разных экземпляра Visual Studio
  • Открыть один и тот же файл в каждом экземпляре
  • Измените размеры окон IDE и поместите их рядом друг с другом, чтобы достичь своего макета.

Если вы сохраняете на диск в одном экземпляре, вам придется перезагрузить файл при переключении на другой. Также, если вы вносите изменения в оба экземпляра, вам придется разрешить второе сохранение. Visual Studio предлагает вам в обоих случаях различные варианты. Вы немного упростите свою жизнь, если будете редактировать только один экземпляр.

Ответ 11

У меня нет копии Visual Studio 2005, но этот процесс работает в Visual Studio 2008:

  1. Откройте xyz.cpp вместе с другим файлом.
  2. Щелкните правой кнопкой мыши заголовок вкладки и выберите новую вертикальную группу вкладок.
  3. Щелкните левой кнопкой мыши по этому другому файлу в первой группе вкладок.
  4. Снова откройте xyz.cpp через обозреватель решений.

Теперь у вас должно быть два экземпляра файла в отдельных вертикальных группах вкладок.

Ответ 12

Открыв свой файл, перейдите в окно команд (меню "Вид" → "Другие окна" → "Окно команд" или просто Ctrl + Alt + A)

Тип:

Window.NewWindow

А потом

Window.NewVerticalTabGroup

работал для меня (Visual Studio 2017).

Или используя меню:

Окно меню → Новое окно

Окно меню → Новая вертикальная группа нажатий

Ответ 13

Я придумал хак, который может дать результат, намеченный в первоначальном ответе.

Если у вас есть файл, который вы хотите в двух окнах в элементе управления источником, вы можете щелкнуть правой кнопкой мыши на файле и выбрать сравнить, вы можете сравнить

Если вы сравните, у вас появится новое окно под названием diff, показывающее содержимое вашего файла.

Это, конечно, не идеально, так как в окне diff будут цвета diff, загрязняющие текст. Примечание: вы можете сравнить файл, который вы хотите открыть, и пустой файл, и тогда у вас будет окно на очень уродливом зеленом фоне.

Это не идеально, это взлом, но я обнаружил, что это единственный способ иметь один и тот же файл в двух окнах.