#visual-studio-code
Вопрос:
Мой рабочий процесс с VS-кодом заключается в том, чтобы всегда использовать папки проектов в проектах. Это отлично работает, но есть одна вещь, которая сейчас все портит;
При открытии только одного файла из другого проекта во время работы в другом проекте, скажем webpack.config.js, Я использую проводник Windows, щелкните правой кнопкой мыши, чтобы открыть этот файл в VS Code. Однако это всегда открывает файл в текущем открытом экземпляре VS Code.
Это добавляет файл из этой другой папки в память ранее открытых файлов в открытом проекте, хотя он не имеет никакого отношения к этому проекту.
При использовании быстрого открытия файла VS Code теперь часто случается, что VS Code открывает файл из этой другой папки только потому, что этот внешний файл был открыт один раз, когда я работал над этим проектом.
Это подвержено ошибкам, так как сейчас часто случается, особенно при быстрой работе, что неправильный, например, package.json или webpack.config.js файл открывается, потому что VS Code теперь также предлагает файлы, которые находятся за пределами этого проекта. Это довольно неприятно и приводит к тому, что изменения довольно быстро вносятся в неправильные файлы.
Я знаю, что мы можем очистить историю редактора, и теперь нам придется много этого делать. Но для меня все наоборот, это не решает реальной проблемы, и когда это не делается часто, проблема остается.
Поэтому я хочу избавиться от этой проблемы и у меня есть следующие вопросы:
1) Как мы можем изменить контекстное меню «Открыть с помощью кода» в проводнике, чтобы всегда открывать файлы в новом экземпляре VS-кода? 2) Есть ли параметры конфигурации, позволяющие отключить поведение, при котором VS-код запоминает файлы, находящиеся за пределами текущей рабочей папки?
Заранее спасибо, эта вещь беспокоит меня уже довольно давно!
Ответ №1:
Как мы можем изменить меню «Открыть с помощью кода», щелкнув правой кнопкой мыши в Проводнике, чтобы всегда открывать файлы в новом экземпляре VS Code?
Я предполагаю, что вы являетесь пользователем Windows. Вы можете изменить поведение контекстного меню с помощью Regedit.
Выполните следующие действия:
- Нажмите
Windows
R
- Введите
regedit
и нажмите кнопку ОК - Перейдите в
ComputerHKEY_CLASSES_ROOT*shellVSCodecommand
раздел в regedit - Добавьте
-n
параметр в команду, как показано ниже
Это поможет вам открывать каждый файл в новом окне при использовании Open with Code
.
Что касается вашего второго вопроса, есть ли параметры конфигурации, позволяющие отключить поведение, при котором VS Code запоминает файлы, находящиеся за пределами текущей рабочей папки?
- Откройте настройки кода VS
- Поиск
window.openFilesInNewWindow
- Сделайте это выключенным, как показано ниже
С помощью этой конфигурации вы не можете открывать новые файлы в текущей рабочей области, поэтому технически вы запрещаете VS Code запоминать внешние файлы. Не напрямую, но это помогает.
Комментарии:
1. Большое спасибо за быстрое и очень полезное элегантное решение этой проблемы! Просто изменил его в реестре, и он работает как шарм! Было бы особенно приятно, если бы кто-нибудь также знал ответ на другой вопрос, но это уже отличное решение для решения большей части проблемы!
2. @Friksel Я провел некоторое исследование и тоже ответил на второй вопрос!
3. Ух ты, отличная находка! Я просмотрел настройки, но не смог ни найти, ни связать это с решением проблемы. Увидев этот ответ, я испугался, что он откроет все файлы в новом окне, но это не так. VS Code, по-видимому, достаточно умен, чтобы открывать файлы только в новом окне, когда они находятся за пределами текущей папки проекта! Так что это именно то, что мне нужно! Еще раз спасибо, это действительно решает большую проблему!
4. Кстати, даже скрипт nodejs, который я запускаю для запуска VS-кода с файлами из разных папок, все еще работает; он открывает VS-код с пустой вкладкой, а затем открывает другое окно VS-кода со всеми файлами в нем! Именно то, что мне нужно! Так что это тоже работает и даже лучше, потому что этот сценарий больше не мешает открытой сессии! Круто! Спасибо за все усилия, это сделал мой день!
5. На всякий случай, если другие люди с той же проблемой найдут эту тему; при установке window.openFilesInNewWindow в положение «включено» изменение регулярного выражения больше даже не требуется!