Как экспортировать настройки VSCode?

226

Как можно экспортировать все параметры и плагины кода Visual Studio и импортировать их на другой компьютер?

kagarlickij
источник
2
Для справки, Code предлагает переносной режим, поэтому вы можете просто переместить папку установки.
Дорук Каринка

Ответы:

165

Существует расширение для кода Visual Studio, которое называется « Синхронизация настроек» https://marketplace.visualstudio.com/items?itemName=Shan.code-settings-sync.

Он синхронизирует ваши настройки по Gist (Gist от GitHub). Он работает так же, как расширение Atom.io, называемое settings-sync.

michalczukm
источник
7
Это действительно экспорт? Я бы экспортировал рабочий процесс экспорта, чтобы сгенерировать файл или набор файлов, содержащих настройки в некотором каталоге, а не полагаться на сторонние службы и базовые настройки.
Элиетт
1
Конечно, вы можете сделать это. Внешний пакет не нужен, но он поддерживает синхронизацию ваших пакетов между большим количеством экземпляров VSC (я имею в виду несколько установок)
michalczukm
3
Это расширение не работает для меня вообще. Просто выдает «Ошибка не найдена» при попытке импортировать настройки на другой компьютер, а я следовал инструкциям к письму. Будьте осторожны, если вы решите использовать это.
17
1
@dcp это связано с неверным идентификатором gist, вы можете открыть вопрос, чтобы сообщить об этом автору
Shan Khan
можно ли скопировать настройки без запуска старой версии, просто имея доступ к диску, на котором она была установлена?
Костанос
274

С текущей версией VSCode на момент написания (1.22.1) вы можете найти свои настройки в

  • ~/.config/Code/User в Linux (в моем случае, производная от Ubuntu)
  • C:\Users\username\AppData\Roaming\Code\User в Windows 10
  • ~/Library/Application Support/Code/User/в Mac OS X (спасибо, Кристоф Де Тройер )

Файлы есть settings.jsonи keybindings.json. Просто скопируйте их на целевой компьютер.

Ваши расширения находятся в

  • ~/.vscode/extensions в Linux и Mac OS X
  • C:\Users\username\.vscode\extensions в Windows 10 (например, по существу, в том же месте)

Кроме того, просто перейдите к Расширениям, покажите установленные расширения и установите их в вашей целевой установке. Для меня копирование расширений работало просто отлично, но это может зависеть от конкретного расширения, особенно при перемещении между платформами, в зависимости от того, что делает расширение.

TJ Crowder
источник
2
% APPDATA% \ Code,% USERPROFILE% \. Vscode \ extensions <- используйте их в Windows, чтобы вам не приходилось вводить имя пользователя в пути туда и обратно
Махн
@zerohedge Я ожидаю, что определенные параметры рабочего пространства находятся в .workspaceфайле или в.vscode/settings.json
Maarten Fabré
44

Для потомков этот пост упоминает,

в последнем выпуске VSCode (май 2016 г.) теперь можно перечислить установленное расширение в командной строке

code --list-extensions

На Mac извините что-то вроде:

"/Applications/Visual Studio Code.app//Contents/Resources/app/bin/code" --list-extensions  

Для установки используйте:

--install-extension <ext> //see 'code --help'
Большой Богатый
источник
36

Аналогично ответу Big Rich вы можете сделать следующее:

$ code --list-extensions | xargs -L 1 echo code --install-extension

Это перечислит ваши расширения с помощью команды для их установки, чтобы вы могли просто скопировать и вставить весь вывод на другой компьютер:

Пример:

code --install-extension EditorConfig.EditorConfig
code --install-extension aaron-bond.better-comments
code --install-extension christian-kohler.npm-intellisense
code --install-extension christian-kohler.path-intellisense
code --install-extension CoenraadS.bracket-pair-colorizer

Взято из ответа, приведенного здесь

Примечание: убедитесь, что вы добавили VS Code к своему пути заранее. На Mac вы можете сделать следующее:

  1. Запустите VS Code
  2. Откройте командную палитру (⇧⌘P) и введите «команду оболочки», чтобы найти команду оболочки: установите команду «code» в команде PATH.
Даниэль Дуглас
источник
4

Ваши настройки пользователя находятся в ~/Library/Application\ Support/Code/User .

Если вас не интересует синхронизация, и это одноразовая вещь, вы можете просто скопировать файлы keybindings.jsonиsettings.json в соответствующую папку на вашем новом компьютере.

Ваши расширения находятся в ~/.vscodeпапке. Большинство расширений не используют никаких собственных привязок, и они должны работать правильно при копировании. Вы можете вручную переустановить тех, кто этого не делает.

Kamagatos
источник
4

Я предпочел свой собственный способ синхронизации всех расширений VSCode между ноутбуками, используя .dotfilesнебольшой сценарий для автоматического обновления. Этот способ помогает мне каждый раз, когда я хочу установить все расширения, которые у меня есть, без единой активности мыши в VSCode после установки (через brew).

Поэтому я просто записываю каждое новое добавленное расширение в файл .txt, хранящийся в моей .dotfilesпапке. После этого тяну ветку master на другом ноутбуке, чтобы получить обновленный файл со всеми расширениями.

Используя скрипт, который Big Rich написал ранее с еще одним изменением, я могу полностью синхронизировать все расширения почти автоматически.

скрипт

cat dart-extensions.txt | xargs -L 1 code --install-extension

А также есть еще один способ автоматизировать этот процесс. Здесь вы можете добавить скрипт, который смотрит на расширение VSCode в режиме реального времени, и каждый раз, когда вы берете code --list-extensionsкоманду diff между вашим файлом .txt,.dotfiles вы можете легко обновлять ваш файл и отправлять его в удаленное хранилище.

Hamsternik
источник
1

Я сделал скрипт на python для экспорта настроек vsc в один zip-файл. https://gist.github.com/wonderbeyond/661c686b64cb0cabb77a43b49b16b26e

Вы можете загрузить ZIP-файл на внешнее хранилище.

$ vsc-settings.py export
Exporting vsc settings:
created a temporary dump dir /tmp/tmpf88wo142
generating extensions list
copying /home/wonder/.config/Code/User/settings.json
copying /home/wonder/.config/Code/User/keybindings.json
copying /home/wonder/.config/Code/User/projects.json
copying /home/wonder/.config/Code/User/snippets
  adding: snippets/ (stored 0%)
  adding: snippets/go.json (deflated 56%)
  adding: projects.json (deflated 67%)
  adding: extensions.txt (deflated 40%)
  adding: keybindings.json (deflated 81%)
  adding: settings.json (deflated 59%)
VSC settings exported into /home/wonder/vsc-settings-2019-02-25-171337.zip

$ unzip -l /home/wonder/vsc-settings-2019-02-25-171337.zip
Archive:  /home/wonder/vsc-settings-2019-02-25-171337.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  2019-02-25 17:13   snippets/
      942  2019-02-25 17:13   snippets/go.json
      519  2019-02-25 17:13   projects.json
      471  2019-02-25 17:13   extensions.txt
     2429  2019-02-25 17:13   keybindings.json
     2224  2019-02-25 17:13   settings.json
---------                     -------
     6585                     6 files

PS: Вы можете реализовать vsc-settings.py importподкоманду для меня.

задаваться вопросом
источник
1

Спасибо за @michalczukm ,

У меня есть настройка " Синхронизация настроек плагин » на VSCode для синхронизации некоторых настроек с Gist.

Если вы хотите использовать «Настройки синхронизации», вы можете увидеть этот хороший пост.

Резервное копирование и синхронизация настроек VSCode с GitHub Gist | Майк Ф Роббинс

Чу-Сян Лай
источник
0

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

https://github.com/microsoft/vscode/issues/2743#issuecomment-560116420

Король холли
источник
1
Встроенный на некоторое время в инсайдеров и стандартная сейчас. code.visualstudio.com/docs/editor/settings-sync
Марк
Это всего лишь копия «Синхронизации настроек», которая указывает людям сохранять свои настройки в Microsoft Azure, а не в Github. Было бы хорошо, если бы Microsoft просто сделала кнопку «экспортировать все настройки в один файл».
Роберт