К обсуждениям

VS Code запускает терминал, но shell integration остаётся none в Windows 10 1809

Редакция VOne Технологии

Как отделить работу псевдоконсоли, запуск PowerShell и инъекцию shell integration в VS Code на Windows 10 build 17763, не редактируя скомпилированные файлы приложения.

Зафиксируйте четыре слоя отдельно

Первый слой — точная сборка Windows, а не только название 1809. Второй — факт появления prompt в интегрированном терминале. Третий — имя и версия PowerShell или другой shell. Четвёртый — статус shell integration и наличие decorations возле команд. Рабочий prompt доказывает, что терминал и shell запустились, но не доказывает инъекцию integration script. Это главная граница диагностики.

Сверьте ожидание от ConPTY с документацией

Microsoft Learn указывает Windows 10 October 2018 Update, то есть версию 1809, как минимальный client для CreatePseudoConsole. Это подтверждает доступность API в этом классе ОС, но не обещает, что каждая версия VS Code будет включать все функции shell integration. В отчёте разделите два тезиса: псевдоконсоль доступна в ОС, а integration quality в конкретном прогоне равна none. Связь между ними предстоит подтвердить разработчикам.

Проверьте включение и поддерживаемую shell

Официальная справка VS Code описывает terminal.integrated.shellIntegration.enabled и перечисляет поддерживаемые shell. Сверьте эффективное значение setting и профиль терминала. Не меняйте оболочку и среду в одном прогоне. Если setting выключен, включение и новый терминал — отдельная штатная проверка. Если оно уже включено, не переключайте его циклом: это не даст новой границы.

Сравните automatic и manual installation

VS Code документирует automatic injection и отдельную manual installation для поддерживаемых shells. Сохраните первый прогон, затем выполните только штатную ручную схему и откройте новый терминал. Сверьте quality, decorations и command navigation. Если ручная схема работает, нарушена граница automatic injection в этой среде. Если не работает, нужно передать оба исхода, а не расширять опыт неофициальным патчем.

Не патчите compiled JavaScript и пороги сборок

Предложенная в публичной ветке правка скомпилированного JavaScript не является официальной инструкцией. Она меняет установленные файлы, скрывает исходное поведение и будет потеряна при обновлении. Не следует также подменять порог версии ОС или фальсифицировать build. Для безопасной работы достаточно официальной manual installation и точного отчёта о двух исходах.

Соберите пакет для upstream-проверки

Укажите точные версии VS Code, Windows и shell, сборку ОС, значение shellIntegration.enabled, исходный quality и результат manual installation. Приложите обрезанный скриншот status indicator и одной безопасной команды. Удалите из вывода имена, пути, историю, токены и переменные сеанса. Отчёт должен утверждать только факт: prompt работает, а integration quality и функции обнаружения команд повели себя так-то в каждом из двух режимов.

Материал подготовлен редакцией VOne с применением ИИ для матрицы слоёв; shell integration и минимальная версия CreatePseudoConsole проверены по официальным страницам VS Code и Microsoft, issue использован только как сигнал.

Источники и проверка

Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.

Ответы

0 опубликовано
Ответов пока нет. Вы можете начать обсуждение.

Ваш ответ

Добавьте свой опыт или уточнение по теме.

Вы публикуете как Аноним Аватар отличает разговоры, но не раскрывает личные данные.

Ответ появится сразу. Не публикуйте личные данные, ключи и приватные ссылки.