Comment pouvez-vous exporter la liste d'extensions de code Visual Studio?

344

Je dois envoyer toutes mes extensions installées à mes collègues. Comment puis-je les exporter?

Le gestionnaire d'extensions semble ne rien faire ... Il n'installera aucune extension.

Andrew
la source

Réponses:

577

Automatique

Si vous attendez avec impatience un outil unique pour le faire à votre place, je vous suggère de vous pencher sur l' extension Settings Sync .

Cela permettra

  1. Exportation de votre configuration et extensions
  2. Partagez- le avec vos collègues et vos équipes. Vous pouvez mettre à jour la configuration. Leurs paramètres seront automatiquement mis à jour.

Manuel

  1. Assurez-vous que vous disposez de la version la plus récente de Visual Studio Code. Si vous installez via un portail d'entreprise, il se peut que vous n'ayez pas la version la plus récente.

  2. Sur la machine A

    Unix:

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

    Windows (PowerShell, par exemple en utilisant le terminal intégré de Visual Studio Code):

    code --list-extensions | % { "code --install-extension $_" }
    
  3. Copiez et collez la sortie d'écho sur la machine B

    Exemple de sortie

    code --install-extension Angular.ng-template
    code --install-extension DSKWRK.vscode-generate-getter-setter
    code --install-extension EditorConfig.EditorConfig
    code --install-extension HookyQR.beautify
    

Veuillez vous assurer que la codeligne de commande est installée. Pour plus d'informations, veuillez visiter Interface de ligne de commande (CLI) .

Benny
la source
9
Quelqu'un peut-il fournir une version conviviale de Windows de cette commande? xargs semble être unique sous UNIX.
damanptyltd
12
@damanptyltd Si vous utilisez GitHub, vous avez probablement Git Bash installé sur votre ordinateur portable / PC Windows. Vous pouvez utiliser les commandes Unix / Mac dans ce - que la façon dont je l' ai eu de travail
Drenai
8
pour quiconque pense avoir besoin d'une version Windows, veuillez noter que vous êtes censé l'exécuter à partir de la ligne de commande vscode, vous pouvez l'obtenir en appuyant sur Ctrl + `, puis collez-le simplement!
Jared
1
J'ai utilisé la commande Ctrl + `avec --list-extensions ci-dessus pour extraire mes paramètres de mon Windows vscode, puis j'ai utilisé Ctrl +` pour coller le code - installer les résultats dans mon instance vscode sous Linux (via RDP). Ça a juste fonctionné. Tous téléchargés et installés. Génial
Dean
5
Cela devrait fonctionner sous Windows PowerShell: code --list-extensions | % { "code --install-extension $_" }(j'ai également modifié cela dans la réponse)
powerzone3000
196

J'ai dû le faire moi-même plusieurs fois - en particulier lors de l'installation sur une autre machine.

Les questions courantes vous donneront l'emplacement de votre dossier

Visual Studio Code recherche des extensions dans votre dossier d'extensions .vscode / extensions. Selon votre plateforme, il se situe:

Windows %USERPROFILE%\.vscode\extensions
Mac ~/.vscode/extensions
Linux ~/.vscode/extensions

Cela devrait vous montrer une liste des extensions.

J'ai également réussi à utiliser l' extension de synchronisation des paramètres de code de Visual Studio pour synchroniser les paramètres avec GitHub gist.

Dans la dernière version de Visual Studio Code (mai 2016), il est désormais possible de répertorier les extensions installées sur la ligne de commande:

code --list-extensions
MarkP
la source
6
Pour moi (linux, code version 1.7.1) ça ne marche pas ... ça démarre juste VS Code.
vanthome
@vanthome Je n'ai jamais essayé sur Linux mais je pense que c'est la même chose: j'ai d'abord eu le même problème que vous, jusqu'à ce que je réalise que l'utilitaire de ligne de commande se trouve en fait dans le bindossier d'installation de l'application. Si vous regardez son contenu, vous verrez qu'il appelle l'exécutable principal mais lui dit d'exécuter la CLI à la place.
Yannick Meine,
1
Pour votre information, vous devrez exécuter la commande Shell: installer la commande 'code' dans PATH 'à partir de la palette de commandes (cmd / ctrl-shift-p) dans VS Code, puis exécuter le code ci-dessus dans votre terminal pour permettre à cela de fonctionner.
Carlin
51

J'ai développé une extension qui synchronisera tous vos paramètres de code Visual Studio sur plusieurs instances.

Principales caractéristiques

  1. Utilisez votre jeton de compte github.
  2. Facile à télécharger et à télécharger en un seul clic.
  3. Enregistre tous les fichiers de paramètres et d'extraits.
  4. Clé de téléchargement: Maj + Alt + u
  5. Clé de téléchargement: Maj + Alt + d
  6. Tapez Sync pour afficher toutes les options de synchronisation

It Sync

  1. Fichier de paramètres
  2. Fichier de liaison
  3. Lancer le fichier
  4. Dossier d'extraits
  5. Extensions VSCode

Source de documentation détaillée

Fichier Lisezmoi de synchronisation VSCode

Téléchargez ici: VS Code Settings Sync

Shan Khan
la source
cela installe-t-il automatiquement les extensions synchronisées?
Raghavendra
Oui! Essayez cela et faites le moi savoir
Shan Khan
quelle exception vous obtenez dans la console développeur? ouvrir un problème de github dans le repo et nous verrons
Shan Khan
Hé, j'ai utilisé votre extension, c'est génial, mais je ne sais pas comment partager ma liste d'extensions avec mon ami.
vanduc1102
@ vanduc1102 - Vérifiez ce lien: shanalikhan.github.io/2016/09/02/…
Shan Khan
29

Version Windows (PowerShell) de la réponse de @ Benny

Machine A:

Dans le terminal Visual Studio Code PowerShell:

code --list-extensions > extensions.list

Machine B:

  1. Copiez extension.list sur la machine B

  2. Dans le terminal Visual Studio Code PowerShell:

    cat extensions.list |% { code --install-extension $_}
    
milanio
la source
1
Cela lance juste une nouvelle fenêtre de code avec l'onglet Bienvenue pour moi.
Gandalf Saxe
1
Cette réponse fonctionne parfaitement pour moi - je n'ai eu aucun problème à tout installer.
SE Strikes Again Malheureusement
C'est ma réponse préférée, car elle ne repose pas sur des xargs (par rapport à la réponse la mieux notée). Maintenant, si seul le "code" était reconnu comme une commande ... soupir (c'est toujours quelque chose)
GG2
Cela a parfaitement fonctionné pour créer mon fichier .list et me montrer les extensions que j'ai actuellement. J'avais juste besoin de la liste comme référence. N'a pas eu besoin de faire le processus de copie. Merci beaucoup.
klewis
Simple, faible effort et efficace. Cela devrait être la réponse.
Princess Innah
21

J'ai utilisé la commande suivante pour copier mes extensions de vscode vers des initiés vscode:

code --list-extensions | xargs -L 1 code-insiders --install-extension

L'argument -L 1nous permet d'exécuter la commande code-insiders --install-extensionune fois pour chaque ligne d'entrée générée parcode --list-extensions

MUG4N
la source
C'est très utile pour le init.shrepo dans mes dotfiles. J'installe d'abord les extensions à partir d'un fichier, puis j'écris toutes les extensions actuellement installées dans le fichier. Le seul inconvénient est que je devrais supprimer le fichier si je veux supprimer une extension, mais cela devrait fonctionner si j'en ajoute une.
ThaJay
11

Générer la commande Windows pour installer les extensions.

for /F "tokens=*" %i in ('code --list-extensions')
   do @echo call code --install-extension %i >> install.cmd
sadisaks
la source
9

Pour Linux

Dans OLD_MACHINE

code --list-extensions > vscode-extensions.list

DANS NEW_MACHINE

cat vscode-extensions.list | xargs -L 1 code --install-extension
Falieson
la source
cat: vscode-extensions.list: No such file or directory
vsync
Il semble que vous puissiez améliorer votre réponse en spécifiant que le vscode-extensions.listfichier doit être copié de l'ancienne machine vers la nouvelle machine.
Jørn Jensen
7

Ouvrez la console VScode et écrivez:

code --list-extensions (ou code-insiders --list-extensions si vscode insider est installé)

Partagez ensuite avec vos collègues la ligne de commande:

code --install-extension {ext1} --install-extension {ext2} --install-extension {extN}le remplacement {ext1}, {ext2}...,{extN} avec l'extention TOU liste

Pour vscode insider: code-insiders --install-extension {ext1} ...

S'ils le copient / collent dans le terminal de ligne de commande vscode, ils installeront les extensions partagées

Plus d'informations sur la gestion des extensions de ligne de commande

Damien Leroux
la source
3

Il existe une extension Extension Manager , qui peut vous aider. Il semble permettre d'installer un ensemble d'extensions spécifié dans le settings.json.

Michael_Scharf
la source
Je l'ai essayé mais ce plugin n'installera pas jshint que j'ai essayé d'ajouter à mon fichier de paramètres ...
Andrew
3

Réponse de Benny sur Windows avec le sous-système Linux:

C:\> code --list-extensions | wsl xargs -L 1 echo code --install-extension
Álvaro González
la source
3

Extensions de vidage:

code --list-extensions > extensions.txt

Installer des extensions avec bash (Linux, OSX et WSL):

cat extensions.txt | xargs code --list-extensions {}

Installer des extensions sur Windows avec PowerShell:

cat extensions.txt |% { code --install-extension $_}
Morten
la source
1
Malheureusement, cela ne fonctionne pas. Il utilise --list-extensions, qui ne s'installe pas, donc cela devrait être quelque chose de ligne, --install-extensionmais lorsqu'il est modifié, cela ne fonctionne toujours pas
atwright147
3

https://code.visualstudio.com/docs/editor/extension-gallery#_workspace-recommended-extensions

Une meilleure façon de partager la liste des extensions consiste à créer un ensemble d'extensions basé sur l'espace de travail pour vos collègues.

Après avoir généré une liste d'extensions via code --list-extensions | xargs -L 1 echo code --install-extension(vérifiez que votre $PATHcontient l'entrée de code Visual StudioC:\Program Files\Microsoft VS Code\bin\ avant d'exécuter les commandes de code),

exécutez la Extensions: Configure Recommended Extensions (Workspace Folder)commande Visual Studio Code ( Ctrl+ Shift+ P) et placez les extensions dans le code généré .vscode/extensions.json:

{
    "recommendations": [
        "eg2.tslint",
        "dbaeumer.vscode-eslint",
        "msjsdiag.debugger-for-chrome"
    ]
}
déesse fraise
la source
2

J'ai ouvert le dossier d'extensions de code Visual Studio et exécuté:

find * -maxdepth 2 -name "package.json" | xargs grep "name"

Cela vous donne une liste à partir de laquelle vous pouvez extraire les noms des extensions.

Juri
la source
1

Si vous avez l'intention de partager la configuration d'extensions d'espace de travail au sein d'une équipe, vous devez examiner la fonctionnalité Extensions recommandées de VSCode.

Pour générer ce fichier, ouvrez la palette de commandes> Configure Recommended Extensions (Workspace Folder). À partir de là, si vous souhaitez obtenir toutes vos extensions actuelles et les mettre ici, vous pouvez utiliser les --list-extensionséléments mentionnés dans d'autres réponses, mais ajoutez un awk pour le coller dans un tableau json (vous pouvez devenir plus ou moins avancé avec comme vous le souhaitez, ce n'est qu'un exemple rapide):

code --list-extensions | awk '{ print "\""$0"\"\,"}'

L'avantage de cette méthode est que votre configuration d'espace de travail à l'échelle de l'équipe peut être archivée dans le contrôle de code source. Avec ce fichier présent dans un projet, lorsque le projet est ouvert, VSCode informera l'utilisateur qu'il existe des extensions recommandées à installer (s'il ne les a pas déjà) et peut les installer toutes en appuyant sur un seul bouton.

eziegl
la source
1
  1. code --list-extensions > list

  2. sed -i 's/.*/\"&\",/' list

  3. copier le contenu du fichier listet l'ajouter .vscode/extensions.json dans la "recommendations" section.

  4. Si extensions.jsonn'existe pas alors créez un fichier avec le contenu suivant

{
    "recommendations": [
        //add content of file list here
    ]
}
  1. partager le extensions.jsonfichier et demander à un autre utilisateur d'ajouter au .vscodedossier. vscode demandera l'installation des extensions.
codescope
la source
1

Comment exporter vos extensions VS Code depuis le terminal ici est git car cela peut être cette aide pour quelqu'un.

Comment exporter vos extensions VS Code depuis un terminal

Remarque: systèmes de type Unix uniquement.

1) Exportez vos extensions dans un fichier shell:

code --list-extensions | sed -e 's/^/code --install-extension /' > my_vscode_extensions.sh

2) Vérifiez votre fichier d'installation d'extensions:

less my_vscode_extesions.sh

Installez vos extensions (facultatif)

Exécutez votre commande à l' my_vscode_extensions.shaide de Bash :

bash my_vscode_extensions.sh
rohityadav
la source
0

Pour ceux qui se demandent comment copier vos extensions de Visual Studio Code vers des initiés de Visual Studio Code, utilisez cette modification de la réponse de Benny:

code --list-extensions | xargs -L 1 echo code-insiders --install-extension
Erik
la source