Jak wyeksportować ustawienia VSCode?

226

Jak można wyeksportować wszystkie ustawienia i wtyczki Visual Studio Code i zaimportować je na inną maszynę?

kagarlickij
źródło
1
W celach informacyjnych Code oferuje tryb przenośny, więc możesz po prostu przenieść folder instalacyjny.
Doruk Karınca

Odpowiedzi:

165

Istnieje rozszerzenie programu Visual Studio Code o nazwie Settings Sync https://marketplace.visualstudio.com/items?itemName=Shan.code-settings-sync

Synchronizuje twoje ustawienia przez gist (Gist przez GitHub). Działa tak samo jak rozszerzenie Atom.io o nazwie settings-sync.

michalczukm
źródło
7
Czy to naprawdę eksport? Wyeksportowałbym przepływ pracy eksportu, aby wygenerować plik lub zestaw plików zawierających ustawienia w pewnym katalogu - nie polegać na usługach stron trzecich i podstawowej konfiguracji.
Éliette
1
Oczywiście, że możesz to zrobić. Pakiet zewnętrzny nie jest konieczny, ale utrzymuje synchronizację twoich pakietów między większą liczbą instancji VSC (przez instancje mam na myśli wiele instalacji)
michalczukm
3
To rozszerzenie w ogóle mi nie działało. Daje tylko komunikat „Nie znaleziono błędu” podczas próby zaimportowania ustawień na inny komputer, a ja postępowałem zgodnie z instrukcjami na piśmie. Bądź ostrożny, jeśli zdecydujesz się na to.
dcp,
1
@dcp jest to spowodowane nieprawidłowym identyfikatorem gist, możesz otworzyć problem, aby powiadomić autora
Shan Khan
czy mogę skopiować ustawienia bez uruchamiania starej wersji, mając jedynie dostęp do dysku, na którym został zainstalowany?
Kostanos
274

W obecnej wersji VSCode od tego momentu (1.22.1) możesz znaleźć swoje ustawienia w

  • ~/.config/Code/User w systemie Linux (w moim przypadku pochodna Ubuntu)
  • C:\Users\username\AppData\Roaming\Code\User w systemie Windows 10
  • ~/Library/Application Support/Code/User/w systemie Mac OS X (dziękuję, Christophe De Troyer )

Pliki to settings.jsonikeybindings.json . Po prostu skopiuj je na maszynę docelową.

Twoje rozszerzenia są w

  • ~/.vscode/extensions w systemie Linux i Mac OS X
  • C:\Users\username\.vscode\extensions w systemie Windows 10 (np. zasadniczo to samo miejsce)

Alternatywnie, po prostu przejdź do rozszerzeń, pokaż zainstalowane rozszerzenia i zainstaluj je w instalacji docelowej. Dla mnie kopiowanie rozszerzeń działało dobrze, ale może być specyficzne dla rozszerzenia, szczególnie w przypadku przemieszczania się między platformami, w zależności od tego, co robi rozszerzenie.

TJ Crowder
źródło
2
% APPDATA% \ Code,% USERPROFILE% \. Vscode \ extensions <- używaj ich w systemie Windows, abyś nie musiał wpisywać nazwy użytkownika w ścieżce tam iz powrotem
Mahn
@zerohedge Oczekuję, że ustawienia specyficzne dla obszaru roboczego znajdują się w .workspacepliku lub w.vscode/settings.json
Maarten Fabré
44

Dla potomności ten post wspomina:

w najnowszej wersji VSCode (maj 2016 r.) można teraz wyświetlić listę zainstalowanych rozszerzeń w wierszu polecenia

code --list-extensions

Na komputerze Mac wytnij coś takiego:

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

Aby zainstalować użyj:

--install-extension <ext> //see 'code --help'
Big Rich
źródło
36

Podobnie do odpowiedzi udzielonej przez Big Richa możesz wykonać następujące czynności:

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

Spowoduje to wyświetlenie twoich rozszerzeń z poleceniem ich zainstalowania, dzięki czemu możesz po prostu skopiować i wkleić całe dane wyjściowe na innym komputerze:

Przykład:

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

Zaczerpnięte z udzielonej tutaj odpowiedzi

Uwaga: upewnij się, że wcześniej dodałeś kod VS do swojej ścieżki. Na komputerze Mac możesz wykonać następujące czynności:

  1. Uruchom kod VS
  2. Otwórz paletę poleceń (⇧⌘P) i wpisz „shell command”, aby znaleźć polecenie Shell: Zainstaluj polecenie „code” w poleceniu PATH.
Daniel Douglas
źródło
4

Twoje ustawienia użytkownika są włączone ~/Library/Application\ Support/Code/User .

Jeśli nie martwisz się synchronizacją i jest to jednorazowa sprawa, możesz po prostu skopiować pliki keybindings.jsonisettings.json do odpowiedniego folderu na nowej maszynie.

Twoje rozszerzenia znajdują się w ~/.vscodefolderze. Większość rozszerzeń nie korzysta z żadnych powiązań natywnych i powinna działać poprawnie po skopiowaniu. Możesz ręcznie ponownie zainstalować tych, którzy tego nie robią.

Kamagatos
źródło
4

Wolę własny sposób synchronizacji wszystkich rozszerzeń VSCode między laptopami, przy użyciu .dotfilesi małego skryptu do automatycznego wykonywania aktualizacji. W ten sposób pomaga mi za każdym razem, gdy chcę zainstalować wszystkie rozszerzenia, które mam, bez żadnej aktywności myszy w VSCode po instalacji (przez brew).

Więc po prostu piszę każde nowe dodane rozszerzenie do pliku .txt przechowywanego w moim .dotfilesfolderze. Potem ciągnę za mistrza gałąź na innym laptopie, aby uzyskać aktualny plik ze wszystkimi rozszerzeniami.

Używając skryptu, który wcześniej napisał Big Rich z jedną dodatkową zmianą, mogę całkowicie zsynchronizować wszystkie rozszerzenia prawie automatycznie.

Scenariusz

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

Jest też jeszcze jeden sposób na zautomatyzowanie tego procesu. Tutaj możesz dodać skrypt, który wyszukuje rozszerzenie VSCode w czasie rzeczywistym i za każdym razem, gdy bierzesz różnicę między code --list-extensionspoleceniem a plikiem .txt.dotfiles , możesz łatwo zaktualizować plik i przekazać go do zdalnego repozytorium

Chomik
źródło
1

Stworzyłem skrypt Pythona do eksportowania ustawień vsc do jednego pliku zip. https://gist.github.com/wonderbeyond/661c686b64cb0cabb77a43b49b16b26e

Możesz przesłać plik zip do pamięci zewnętrznej.

$ 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: Możesz wdrożyć vsc-settings.py importdla mnie podkomendę.

cud
źródło
0

Obecnie występuje problem z otwartym żądaniem funkcji, który wydaje się znajdować na etapie propozycji projektu. Będę czekać na to oficjalne wsparcie. Możesz zasubskrybować problem i otrzymywać powiadomienia o postępach.

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

King Holly
źródło
1
Wbudowany na chwilę w Insiderach i teraz standardowy. code.visualstudio.com/docs/editor/settings-sync
Mark
To tylko kopia „Synchronizacji ustawień”, która wskazuje, że ludzie powinni przechowywać swoje ustawienia na Microsoft Azure zamiast na Github. Byłoby miło, gdyby Microsoft wykonał prosty przycisk „eksportuj wszystkie ustawienia do jednego pliku”.
Robert