Я могу установить расширение Prettier с помощью команды npm:
npm i --save-dev --save-exact prettier
Это же расширение можно установить из диспетчера расширений VS-Code.
У меня вопрос: почему некоторые расширения нельзя установить с помощью команды NPM?
Например: dsznajder.es7-react-js-snippets
Здесь вы путаете два понятия. Один из них — это так называемый пакет узла или модуль узла (они имеют немного другое значение), который можно установить из NPM независимо от вашей IDE (будь то VS Code или что-то еще).
И у вас есть расширения для VS Code, которые устанавливаются из VS Code Marketplace (как уже упоминалось в комментариях). Это не то же самое, что модуль/пакет узла, но они могут (или не могут) использовать пакеты NPM.
Итак, когда вы устанавливаете более красивый модуль узла, вы устанавливаете только более красивый код (то же самое и с другими вещами, такими как eslint). Более красивое расширение использует этот модуль узла для выполнения своей работы. Однако расширение обычно поставляется со всеми необходимыми модулями узлов, поэтому нет необходимости устанавливать их вручную.