ZSH и VSCode — оболочки по умолчанию

#ubuntu #visual-studio-code #zsh #windows-subsystem-for-linux

#ubuntu #visual-studio-code #zsh #windows-subsystem-for-linux

Вопрос:

Я начал настраивать ZSH для VSCode. Какое-то время это работало, но затем оно изменилось на Git Bash (моя предыдущая оболочка по умолчанию). Я попытался изменить оболочку обратно на ZSH, но она не отображалась в списке мнений. Тем не менее, он отображает WSL, который отображает совершенно другую тему

Моя тема (в терминале Windows, unbuntu и т. Д.):
Моя тема
Тема, которая находится в VSCode:
Тема WSL по умолчанию

Я попытался добавить это в свой settings.json :

 "terminal.integrated.shell.windows": "/bin/zsh",
  

Но в нем говорится: «Не удалось запустить процесс терминала: путь к исполняемому файлу оболочки » bin zsh» не существует».

Как я могу это исправить (изменить оболочку по умолчанию обратно на ZSH)?

Комментарии:

1. Вы пробовали что-то вроде "terminal.integrated.shell.windows": "wsl.exe -d Ubuntu-20.04 -e /bin/zsh" .

Ответ №1:

Попробуйте which zsh подтвердить путь к вашему исполняемому файлу zsh. Возможно, у вас ошибка пути.

какой zsh

Или попробуйте использовать графический интерфейс.

  1. Открыть палитру команд

Windows — Ctrl Shift P

Mac — Shift P

  1. Найдите Terminal: Select Default Shell и выберите его.

Палитра команд

  1. Просмотрите список доступных оболочек и выберите одну. Если вы не видите здесь zsh, то у вас могут возникнуть некоторые проблемы с конфигурацией zsh.

Доступные оболочки

Также вероятно, что ошибка установки / настройки zsh привела к тому, что ваша запись в settings.json файле была недействительной. После выбора оболочки нажмите ctrl ~ или J , чтобы открыть окно терминала и посмотреть результаты. Если вы уже открыли терминал, вам придется удалить его или открыть другой.

Вы также можете открыть свой settings.json и просмотреть или добавить следующую запись напрямую.

 // Edit July 2021 - New Updated Snippet
"terminal.integrated.defaultProfile.osx": "zsh"

// Now deprecated
"terminal.integrated.shell.osx": "/bin/zsh"
  

Комментарии:

1. terminal.integrated.shell.osx устарело для terminal.integrated.defaultProfile.osx ( shell to defaultProfile ), но вместо этого в новом правиле по умолчанию используется значение bash (на момент написания этого сообщения)

2. Это сработало! Спасибо. В моем VS-коде на Ubuntu команда такова: Терминал: выберите профиль по умолчанию

3. редактирование settings.json и затем перезапуск кода сработали для меня. Спасибо.

Ответ №2:

Похоже, на компьютерах Mac это немного изменилось.

Mac — Shift P

Введите «Терминал: выберите профиль по умолчанию» и выберите его.

введите описание изображения здесь

Тогда вы увидите это:

введите описание изображения здесь

Выберите bash или что-то еще, а затем вы должны закрыть и перезапустить VS Code.

Комментарии:

1. Не на Mac, но для всех. У терминалов теперь есть профили и настройки, зависящие от ОС.

Ответ №3:

Вот решение:

terminal.integrated.shell.osx устарело для terminal.integrated.defaultProfile.osx ( shell to defaultProfile ), но вместо этого в новом правиле по умолчанию используется значение bash (на момент написания этого сообщения)

На самом деле происходит следующее: (получил это, используя вместо этого графический интерфейс) — это путь. terminal.integrated.defaultProfile.osx на самом деле работает, но значение должно быть изменено с /bin/zsh на zsh .

Таким образом, параметр должен быть "terminal.integrated.defaultProfile.osx": "zsh" вместо "terminal.integrated.defaultProfile.osx": "/bin/zsh" .

Также обратите внимание, что язык изменен с Default shell на defaultProfile .

Комментарии:

1. Это уже работает? Поскольку появляется профиль zsh, но если я не использую устаревшую команду, он продолжает открывать bash в качестве первого варианта.

2. Он работает. Не уверен, в чем именно заключается ваша задача, но я заметил, что мне пришлось закрыть и снова открыть все экземпляры терминалов в моих сохраненных рабочих пространствах — поскольку все они по умолчанию выполняли bash после изменения — но после этого все работает нормально.

3. defaultProfile спас меня 🙂

Ответ №4:

откройте «~/.config/Code/User/settings.json»

добавьте свою оболочку по умолчанию в зависимости от вашей ОС:

 "terminal.integrated.defaultProfile.linux": "zsh"
"terminal.integrated.defaultProfile.osx": "zsh"
"terminal.integrated.defaultProfile.windows": "zsh"