береженого кольт бережет
береженого кольт бережет

Настройка ZSH в MacOS

С началом использования MacOS, почти сразу понимаешь, что стандартный терминал не очень-то и удобен.

В качестве оболочки будем использовать ZSH, о нём, думаю, не слышал только любитель красивых UI, а вместо стандартного терминала я используем iTerm2.

В MacOS ZSH предустановлен, поэтому сразу устанавливаем его в качестве оболочки по умолчанию с помощью команды:

chsh -s /bin/zsh

После перезапуска терминала оболочкой должен быть уже ZSH.

Если попросит начать настройку, то прервём сей процесс, нажав q.

Ручками не нужно переписывать конфиги, пусть это сделает Oh My Szh. Это набор плагинов и настроек, которые решают самые популярные задачи и делают ваш шелл просто супер удобным. Установим его, следуя инструкциям с официального сайта.

Переходим в домашний каталог и выполняем:

curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh

Установка прошла, но ничего не поменялось? Надо закрыть терминал и снова открыть его, чтобы настройки, которые приехали к нам из oh-my-zsh, прочитались и применились. Закрыли-открыли, теперь видим новое приветствие:

Приветствие шелла после установки Oh My ZSH

Это стандартная тема oh-my-zsh под названием robbyrussell (по имени автора). Мы можем поставить любую из тем, которые поставляются с oh-my-zsh. Я, использую Bureau.

Чтобы поменять тему, напишите её название (маленькими буквами, как на странице со списком тем) в файле .zshrc. Он лежит в вашей домашней папке (/Users/Ваш_логин или /home/ваш_логин). Поскольку он начинается с точки, он скрыт. Включите отображение скрытых файлов. Тему нужно прописать в переменную ZSH_THEME, это в районе восьмой строки, вот так:

Меняем тему в конфиге с помощью переменной ZSH_THEME

Сохраните файл и снова перезапустите терминал (или откройте в нём новую вкладку). Теперь шелл выглядит по-новому:

Тема Bureau в шелле

Это тема Bureau. В верхней строчке сначала имя пользователя, потом имя машины, потом путь к папке, где пользователь сейчас находится. Справа текущее время. В следующей строке просто символы, которые обозначают, что ввод здесь, а справа после шестиугольника текущая версия Node.js, ветка Git (если пользователь сейчас в Git-репозитории), и кружочки, которые обозначают, что есть несохранённые изменения. В этой теме версия Node.js показывается только если вы используете Node Version Manager.

Тема Agnoster в шелле

Если, увидите кривые символы, то не пугайтесь, всё это происходит из-за некоторых отсутствующих шрифтов в системе.

Исправим это:

  1. Скачаем архив — вот здесь.
  2. Перейдём в “fonts-master/UbuntuMono/” и установим все шрифты в этой директории.
  3. В настройках терминала выставляем шрифт “Ubuntu Mono derivative Powerline”.

После перезапуска терминала вы, наконец, сможете узреть нормально работающий терминал.

Для правильной работы темы во встроенном терминале VScode в конфиг нужно добавить:

“terminal.integrated.shell.osx”: “/bin/zsh”,
“terminal.integrated.fontFamily”: “Ubuntu Mono derivative Powerline”

Можно использовать и другие шрифты

Я буду использовать Инконсолата . Получите предпочитаемый шрифт из этих шрифтов Powerline . Затем скачайте и установите его.

Или скачать весь шрифт.

git clone https://github.com/powerline/fonts.git

cd fonts

./install.sh

Чтобы изменить шрифт, перейдите к iTerm2 > Preferences > Profiles > Text > Change Font.

Теперь вы можете увидеть Inconsolata в списке как один из шрифтов. Выберите предпочитаемый шрифт. Для шрифтов, которые поддерживают лигатуры, такие как FiraCode , установите флажок «Использовать лигатуры», чтобы ваши стрелки и другие операторы отображались стильно, например (  ).

Установите цветовую схему

Давайте изменим цветовую схему, чтобы подчеркнуть красоту нашего терминала. Перейдите к iTerm2-Color-Schemes и загрузите папку ZIP. Затем извлеките загруженную папку, потому что то, что нам нужно, находится в папке схем.

Перейдите кiTerm2 > Preferences > Profile > Colors > Color Presets > Import

  • Перейдите в папку схем и выберите предпочитаемые цветовые схемы для их импорта.
  • Нажмите на определенную цветовую схему, чтобы активировать ее. В этом сценарии я активировал Galaxy, который является моей предпочтительной цветовой схемой.

становите плагины

Oh My ZSH поставляется с предустановленным плагином git. Чтобы добавить больше, например, докер, автоматические предложения, подсветку синтаксиса и многое другое.

Клонируем репозиторий Git

git clone https://github.com/zsh-users/zsh-docker.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-docker

Перейдите в .oh-my-zsh > custom > plugins каталог, чтобы просмотреть клонированный каталог. 

Добавьте плагин в раздел плагинов конфигурационного файла, ~/.zshrc показанного ниже.

Обновите свои изменения, выполнив команду

source ~/.zshrc