Acabei de iniciar um curso em Angular e, enquanto trabalhava nisso, pensei em instalar extensões básicas que facilitam o trabalho com esse espaço de trabalho de desenvolvimento da Web.
Desde que eu uso o Settings Sync , essas extensões foram carregadas imediatamente para minha essência de configurações. O problema, entretanto, é que não quero essas configurações/extensões de desenvolvimento da Web em todos os meus outros espaços de trabalho.
Desativar as extensões adicionadas dentro de todos os outros espaços de trabalho consome muito tempo, então gostaria de saber se é possível instalar extensões específicas apenas dentro de um espaço de trabalho?
Dentro do local settings-sync existe a opção de ignorar as extensões, mas isso só faz sentido após a instalação porque ao instalar Extension-Packs, que vêm com várias extensões, não fica muito claro desde o início quais são os nomes das extensões. Pode até ser tedioso fazer isso, porque algumas extensões também alteram o settings.json, que é carregado mesmo que essas configurações não devam estar dentro dos espaços de trabalho sem essas extensões.
Em outras palavras, ele escala absurdamente e a instalação apenas para este espaço de trabalho faria sentido na minha opinião.
A questão é sobre uma maneira simples de instalar extensões apenas para este espaço de trabalho, pois elas são necessárias apenas lá.
A partir de junho de 2020, parece que você pode desativar globalmente uma extensão e habilitá-la explicitamente para um espaço de trabalho. Comecei a fazer isso nos espaços de trabalho JS/TS, Rails, Java e Scala e parece funcionar bem.
Para fazer isso:
Instalações de extensão podem ser separadas usando um diretório diferente para armazenar extensões. Como o VSCode é construído com a estrutura Electron (mecanismo NodeJS + Chromium V8), as opções de linha de comando são as mesmas em todos os aplicativos baseados em Electron e também no Chromium. Aqui usamos essas duas opções de linha de comando. De acordo com os documentos do VSCode :
Usando essas duas opções de linha de comando, podemos separar os dados do usuário (configurações, preferências, arquivos abertos etc.) e a pasta de instalação das extensões. Se as pastas não estiverem presentes, elas serão criadas automaticamente após a execução dos seguintes comandos. Os caminhos de pasta aqui são para exemplos. Altere esses caminhos como quiser.
Para Windows:
code.exe --extensions-dir "D:\CodeProfile\Normal\exts" --user-data-dir "D:\CodeProfile\Normal\data"
code.exe --extensions-dir "D:\CodeProfile\Angular\exts" --user-data-dir "D:\CodeProfile\Angular\data"
Para sistemas operacionais semelhantes ao UNIX:
code --extensions-dir "~/CodeProfile/Normal/exts" --user-data-dir "~/CodeProfile/Normal/data"
code --extensions-dir "~/CodeProfile/Angular/exts" --user-data-dir "~/CodeProfile/Angular/data"
Opcionalmente, crie atalhos na área de trabalho com essas opções de linha de comando para pular usando terminais ou consoles. Além disso, você pode ter que configurar as extensões de sincronização de configurações para usar esses caminhos de acordo.
Leituras Adicionais
Estou procurando uma maneira de fazer isso há muito tempo e finalmente encontrei uma extensão que torna isso possível! A extensão que encontrei permite criar e gerenciar perfis para o VsCode, em cada perfil você pode fazer uma configuração completamente ISOLADA, configurar fonte, tamanho, espaçamento, EXTENSÕES e etc. Por exemplo, tenho alguns perfis configurados, ao abrir um Web Projeto Php posso mudar para o perfil "Web Php", ao fazer atividades da faculdade em C, mudo para o perfil "C".
https://github.com/aaronpowell/vscode-profile-switcher#extensions