¿Cómo exportar la configuración de VSCode?

226

¿Cómo es posible exportar todas las configuraciones y complementos de Visual Studio Code e importarlos a otra máquina?

kagarlickij
fuente
2
Como referencia, Code ofrece un modo portátil para que pueda mover la carpeta de instalación.
Doruk Karınca

Respuestas:

165

Existe una extensión para Visual Studio Code, llamada Configuración de sincronización https://marketplace.visualstudio.com/items?itemName=Shan.code-settings-sync

Sincroniza tu configuración por gist (Gist by GitHub). Funciona igual que la extensión Atom.io llamada settings-sync.

michalczukm
fuente
77
¿Es esto realmente una exportación? Exportaría un flujo de trabajo de exportación para generar un archivo o conjunto de archivos que contengan configuraciones en algún directorio, sin depender de servicios de terceros y la configuración subyacente.
Éliette el
1
Claro que puedes hacerlo. El paquete externo no es necesario, pero mantiene su sincronización entre paquetes más instancias de VSC (por instancias me refiero a múltiples instalaciones)
michalczukm
3
Esa extensión no funcionó para mí en absoluto. Simplemente da "Error no encontrado" cuando intenta importar la configuración a otra computadora, y seguí las instrucciones al pie de la letra. Tenga cuidado si decide usar esto.
dcp
1
@dcp esto se debe a no válido Identificación del GIST, puede abrir cuestión de dejar que el autor know
Shan Khan
¿Puedo copiar la configuración sin ejecutar la versión anterior, solo teniendo acceso al disco donde se instaló?
Kostanos
274

Con la versión actual de VSCode a partir de este escrito (1.22.1), puede encontrar su configuración en

  • ~/.config/Code/User en Linux (en mi caso, un derivado de Ubuntu)
  • C:\Users\username\AppData\Roaming\Code\User en Windows 10
  • ~/Library/Application Support/Code/User/en Mac OS X (gracias, Christophe De Troyer )

Los archivos son settings.jsony keybindings.json. Simplemente cópielos en la máquina de destino.

Tus extensiones están en

  • ~/.vscode/extensions en Linux y Mac OS X
  • C:\Users\username\.vscode\extensions en Windows 10 (por ejemplo, esencialmente el mismo lugar)

Alternativamente, solo vaya a Extensiones, muestre las extensiones instaladas e instálelas en su instalación de destino. Para mí, copiar las extensiones funcionó bien, pero puede ser específico de una extensión, particularmente si se mueve entre plataformas, dependiendo de lo que haga la extensión.

TJ Crowder
fuente
2
% APPDATA% \ Código,% USERPROFILE% \ vscode \ extensiones <-. Utilizarlas en Windows por lo que no tiene que escribir el nombre de usuario en la parte de atrás adelante y hacia atrás ruta
Mahn
@zerohedge Espero que la configuración específica del espacio de trabajo esté en el .workspacearchivo, o en.vscode/settings.json
Maarten Fabré
44

Para la posteridad, esta publicación menciona:

en la última versión de VSCode (mayo de 2016) ahora es posible enumerar la extensión instalada en la línea de comando

code --list-extensions

En Mac, ejecute algo como:

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

Para instalar use:

--install-extension <ext> //see 'code --help'
Grande rico
fuente
36

Similar a la respuesta dada por Big Rich, puede hacer lo siguiente:

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

Esto enumerará sus extensiones con el comando para instalarlas para que pueda copiar y pegar todo el resultado en su otra máquina:

Ejemplo:

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

Tomado de la respuesta dada aquí

Nota: Asegúrese de haber agregado el Código VS a su ruta de antemano. En mac puedes hacer lo siguiente:

  1. Lanzar VS Code
  2. Abra la paleta de comandos (⇧⌘P) y escriba 'comando de shell' para encontrar el comando de shell: instalar el comando 'código' en el comando PATH.
Daniel Douglas
fuente
4

Su configuración de usuario está en ~/Library/Application\ Support/Code/User.

Si no le preocupa la sincronización y es algo único, puede copiar los archivos keybindings.jsony settings.jsonla carpeta correspondiente en su nueva máquina.

Sus extensiones están en la ~/.vscodecarpeta. La mayoría de las extensiones no utilizan enlaces nativos y deberían funcionar correctamente cuando se copian. Puede reinstalar manualmente aquellos que no lo hacen.

Kamagatos
fuente
4

Prefiero mi propia forma de sincronizar todas las extensiones VSCode entre computadoras portátiles, usando .dotfiles un script pequeño para realizar actualizaciones automáticamente. De esta manera, me ayuda cada vez que deseo instalar todas las extensiones que tengo sin ninguna actividad del mouse en VSCode después de la instalación (a través de brew).

Así que solo escribo cada nueva extensión agregada al archivo .txt almacenado en mi .dotfilescarpeta. Después de eso saco maestro rama en otra computadora portátil para obtener un archivo actualizado con todas las extensiones.

Utilizando un script, que Big Rich había escrito antes con uno más cambios, puedo sincronizar totalmente todas las extensiones casi automáticamente.

Guión

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

Y también hay una forma más de automatizar ese proceso. Aquí puede agregar un script que busca la extensión VSCode en tiempo real y cada vez que toma una diferencia entre el code --list-extensionscomando y su archivo .txt.dotfiles puede actualizar fácilmente su archivo y enviarlo a su repositorio remoto

Hamsternik
fuente
1

Hice un script de python para exportar la configuración de vsc en un solo archivo zip. https://gist.github.com/wonderbeyond/661c686b64cb0cabb77a43b49b16b26e

Puede cargar el archivo zip en un almacenamiento externo.

$ 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

PD: Puedes implementar un vsc-settings.py importsubcomando para mí.

preguntarse
fuente
0

Actualmente hay un problema de solicitud de función abierta que parece estar en la fase de propuesta de diseño. Voy a esperar este soporte oficial. Puede suscribirse al problema y recibir notificaciones sobre el progreso.

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

Rey acebo
fuente
1
Incorporado por un tiempo en Insiders y estándar ahora. code.visualstudio.com/docs/editor/settings-sync
Marque el
Esta es solo una copia de la "Sincronización de configuración" que señala a las personas para almacenar su configuración en Microsoft Azure en lugar de Github. Sería bueno si Microsoft simplemente hiciera un simple botón "exportar todas las configuraciones a un solo archivo".
Robert